Age | Commit message (Collapse) | Author |
|
|
|
when i first wrote if_idxmap i didn't realise (and no one thought
to tell me) that index 0 was special and means "no interface", so
while here use the 0th slot in the interface map to store the length
of the map instead of prepending the map with a length field.
if_get() now special cases index 0 and returns NULL directly. this
also means the size of the map is now always a power of 2, which
is a nicer fit with what the kernel malloc aprovides.
the problem with r1.673 that hrvoje popovski found was that attaching
a lot of interfaces during autoconf would lock up when growing the
map called smr_barrier. the fix in this diff is to (ab)use the
usedidx bitmap to store an smr_entry and defer the freeing of the
interface pointer map with it.
tested by hrvoje popovski
tweaks and ok visa@
|
|
pfctl does not build
OK dlg@
|
|
isn't quite helpful when it's used to come back from suspend and then the
second interrupt initiates powerdown. Ignore press, but handle release.
ok kettenis@
|
|
into FS_* values. Similar to what gpt_get_fstype() does. Code is
clearer and better positioned for planned enhancements to
spoofing.
No intentional functional change.
|
|
OK claudio
|
|
of structure members without using a global state lock.
The first member which uses protection by mutex is key[] array.
more will follow.
OK dlg@
|
|
ok patrick@
|
|
|
|
us to properly establish interrupts.
The fixed IPL_BIO should probably be replaced by the highest IPL requested
by our children.
ok kettenis@
|
|
possible to ifconfig down the interface suspend/resume and ifconfig up the
interface again afterwards in most cases. Suspend/resume with the interface
up is still busted.
ok patrick@, stsp@
|
|
ok kettenis@
|
|
Qualcomm SoCs. This is mostly a shim torwards agintc(4).
ok kettenis@
|
|
inteldrm(4) it requires a process context. ok kettenis@
|
|
The initial mmio support for vmd adds support for only specific MOV
and MOVZX instructions. Plan is to begin iterating in-tree on other
missing pieces. All functionality is gated behind an #if for now.
Only change to vmm(4) is reordering register #define's in vmmvar.h.
ok mlarkin@
|
|
ok phessler@, patrick@, tobhe@
|
|
use by a device. So maintainer a counter and only disable the power
domain if it drops to zero.
ok deraadt@, tobhe@
|
|
ok deraadt@, phessler@
|
|
firmware probably does this for us on ACPI systems with proper S3 support,
but this doesn't happen on systems where we park CPUs in a low-power idle
state ourselves.
ok deraadt@
|
|
ok kettenis@ jca@ cheloha@
|
|
evcount_inc() rather than atomic operations.
ok kettenis@ jca@ cheloha@
|
|
counters where the event being counted occurs across all CPUs in the
system. Counter instances can be made per-cpu by calling evcount_percpu()
after the counter is attached, and this can occur before or after all system
CPUs are attached. Per-cpu counter instances should be incremented using
evcount_inc().
ok kettenis@ jca@ cheloha@
|
|
ok mpi@
|
|
|
|
let packet to mark 'once' rule as expired. The rule
will be removed by pfctl(8) when rules are updated.
OK kn@
|
|
control. This enables automatic screen blanking with X and wscons(4) once
wsfb(4) is fixed.
"this is fine for now" kettenis@
|
|
OK mpi@
|
|
Also allow IPPROTO_TCP:TCP_NODELAY
It is very small kernel code, and will allow some software to drop "inet"
requested by djm
|
|
if the map has to be reallocated during boot, there's an smr_barrier
waiting for the old map to become unused. that barrier ends up
waiting for cpus that aren't running yet because we haven't finished
booting yet, so boot gets stuck.
found by hrvoje popovski
|
|
|
|
ok kettenis@ mlarkin@
|
|
on the Lenovo x13s to control the display backlight brightness.
ok kettenis@ mlarkin@
|
|
|
|
aplintc(4); other arm64 interrupt controllers will follow.
ok patrick@
|
|
ok dlg@, patrick@
|
|
The code only needs to know if the vnode is exclusive locked and this
can be done on entry of the function.
OK mpi@
|
|
Since vmm doesn't support hot-plug vcpus we can reduce complexity
by treating the vcpu list per vm as immutable after creation.
As a consequence, we can use the vm reference count to protect the
lifetime of the vcpus, removing the need for reference counting
individual vcpu objects. With an immutable list, we no longer need
a rwlock protecting it either.
Original diff from dlg@ that I reworked and tested.
ok dlg@, mlarkin@
|
|
I never should have added the TIMEOUT_KCLOCK flag. It is redundant
and only serves to complicate the timeout(9) logic. In every place
where we check for the flag we can just use timeout.to_kclock.
So, remove the flag from <sys/timeout.h> and rewrite all affected
logic to use the value of timeout.to_kclock instead.
ok kn@
|
|
ok patrick@
|
|
OK dlg@
|
|
|
|
OK mvs
|
|
Recommit these two together:
- r1.667 "Push kernel lock into ifioctl_get()"
locked before the switch() without unlocking in its cases
- r1.668 "Push kernel lock inside ifioctl_get()"
locked cases individually, as intended
I messed up splitting commits, but of course, Hrvoje managed to test a
CVS checkout right inbetween those two.
OK mpi mvs
|
|
when i first wrote if_idxmap i didn't realise (and no one thought
to tell me) that index 0 was special and means "no interface", so
while here use the 0th slot in the interface map to store the length
of the map instead of prepending the map with a length field.
if_get() now special cases index 0 and returns NULL directly. this
also means the size of the map is now always a power of 2, which
is a nicer fit with what the kernel malloc aprovides.
tweaks and ok visa@
|
|
|
|
parameter const.
|
|
All the fields accessed in this syscall are protected by the SCHED_LOCK()
so it isn't necessary to wait for another CPU to release the KERNEL_LOCK()
before that.
ok claudio@
|
|
the #ifdef MULTIPROCESSOR was a little broad.
still grateful to anton and stsp for unbreaking the tree though.
|
|
ok kettenis@, miod@
|
|
|