- Add fd_set_exclose() to encapsulate uses of FIO{,N}CLEX, O_CLOEXEC, F{G,S}ETFD
- Add a pipe1() function to allow passing flags to the fd's that pipe(2)
opens to ease implementation of linux pipe2(2)
- Factor out fp handling code from open(2) and fhopen(2)
Problem was reported by isaki@.
On X680x0 (and most other machines other than ISA FDC),
the ready line from FDD is connected to FDC and fdc driver can
be notified of the ready state after fd_set_motor() by interrupts.
In this case no need to use callout(9) to wait the FDD motor stabilized,
and the callout(9) method used in ISA fdc(4) driver rather caused
infinite unhandled interrupts since callout(9) was no longer invoked
during interrupt storm after vmlocking2 merge, I guess.
Should be pulled up to netbsd-5.
mlelstv pointed out that we sometimes may use checksums on loopback
interfaces. Make the test consistent with the code path selecting
the checksum operation before invoking fragmentation.
Add definitions for registers related to video modes, and to DDC. Rename
other registers to be more descriptive.
Add i2c bus routines to read the EDID data via DDC.
Add routines to calculate, and to set, the video mode.
Note, that interlaced and stereo video modes are not supported.
Thanks to Michael Lorenz and Jared McNeill for advice and encouragement,
and to Martin Husemann for testing.
order of preference.
The preferred mode is placed first. If there is no preferred mode, then
the first mode with highest resolution is placed first. Other modes are
then sorted on difference from the first mode by refresh rate, aspect
ratio, then size.
When parsing the established and the detailed timings, check to see if this
mode already exists in our mode list. If the mode exists when parsing
established timings, then do nothing (we already have this exact mode). If
the mode exists when parsing detailed timings, then replace our timings with
the timings from the monitor.
In ptcwakeup() do not bother to wake up a client side if it has not been
opened yet.
The old code would spuriously wakeup the client minor(0) [i.e. ttyp0
typically] or crash the kernel if that wasn't open, see PR kern/40688.
(Old names used to match the PR and test case, adjust names for
/dev/ptm[x] resp. /dev/pts/* accordingly)
bge_init() and so does not get called when a vlan child is added. Calling
bge_setvlan() from bge_ifflags_cb() doesn't work either as it appears that
the callback is called before ec_capenable is updated by if_vlan.c.
from early machdep.c:mach_init() to autoconf.c:cpu_configure().
evcnt_init() isn't called yet when mach_init() is invoked from locore.S
and interrupts won't be enabled before cpu_configure(9).
Problem reported by Erik Bertelsen on port-pmax:
http://mail-index.NetBSD.org/port-pmax/2011/04/06/msg000093.html