then only clean up required to to free cl. delete all the
code at err_ret that was probably used in the past, and move
the free + return upon failure earlier.
get it defined. Rather than deal with potential namespace issues
with that, just clear the entire struct, rather than attempting to
stop after the potential padding field. If the compiler is good enough
it should make no difference (there are just 3 fields, 2 named ones
are assigned to, immediately after the memset() - the compiler can
detect that, and not bother assigning (via memset()) to the unmamed
3rd padding field). If the compiler is not smart enough to deal
with this, then I doubt writing 8 more zero bytes will make enough
difference to matter.
This use-before-initialization problem resulted in non-zero queues never
being initialized with their virtqueue pointer, and queue zero's pointer
to be clobbered with the virtqueue pointer for the higest-indexed ring.
that are not very useful (and trully if any they belong to a separate section
instead of being interspersed in the document), and organizes and formats
the information better.
FPU state of the lwp right away during context switches. This guarantees
that when the CPU executes in userland, the FPU doesn't contain secrets.
Maybe we also need to clear the FPU in setregs(), not sure about this one.
Can be enabled/disabled via:
machdep.fpu_eager = {0/1}
Not yet turned on automatically on affected CPUs (Intel Family 6).
More generally it would be good to turn it on automatically when XSAVEOPT
is supported, because in this case there is probably a non-negligible
performance gain; but we need to fix PR/52966.
On 64-bit machines struct timespec50 has padding between 32-bit tv_sec
and long tv_nsec that is not affected by normal assignment. Scrub it.
The result is most likely about to be passed to the user space by the
caller, so do it here to take care of them all.
The list named ifv_mc_listhead saves multicast addresses that
are added through SIOCADDMULTI. Each nodes added to the list
are used for deleting the related address from a parent I/F
when remove the configuration of parent I/F.
In carp(4) and OpenBSD's vlan(4), the lists is used to check
a parameter of SIOCDELMULTI in addition to the use.
Based on them, the check is added to vlan(4)
ok ozaki-r@