[owc] Weekly src changes ending 2007-07-22
OWC
auto at squish.net
Mon Jul 23 07:00:01 BST 2007
OpenBSD src changes summary for 2007-07-15 to 2007-07-22 inclusive
==================================================================
bin/cat distrib/notes
distrib/sets gnu/egcs
lib/libc lib/libpthread
sbin/dhclient sbin/fsck_ffs
sbin/growfs sbin/route
sbin/swapctl sbin/sysctl
share/man sys/arch/hppa/conf
sys/arch/hppa/dev sys/arch/hppa/gsc
sys/arch/hppa/hppa sys/arch/hppa/include
sys/arch/i386/conf sys/arch/i386/i386
sys/arch/mips64/include sys/arch/mips64/mips64
sys/arch/sgi/conf sys/arch/sgi/sgi
sys/arch/sparc64/include sys/arch/sparc64/sparc64
sys/conf sys/crypto
sys/dev sys/dev/ic
sys/dev/pci sys/dev/usb
sys/kern sys/net
sys/net80211 sys/netbt
sys/netinet sys/sys
sys/uvm usr.bin/cdio
usr.bin/cvs usr.bin/lastcomm
usr.bin/make usr.bin/netstat
usr.bin/rcs usr.bin/top
usr.sbin/afs usr.sbin/apmd
usr.sbin/hoststated usr.sbin/pkg_add
usr.sbin/tcpdump
== bin =============================================================== 01/09 ==
http://www.openbsd.org/cgi-bin/cvsweb/src/bin
cat
~ cat.c
> sync usage(); from Tobias Stoeckmann (jmc@)
== distrib =========================================================== 02/09 ==
http://www.openbsd.org/cgi-bin/cvsweb/src/distrib
notes
~ hppa/hardware
> Mention SysKonnect/Marvell gigabit ethernet adapters. (kettenis@)
~ hppa/hardware
> Mention bge(4) as well. (kettenis@)
~ hppa/hardware
> Enable rl(4) on hppa, tested by me, ok kettenis@ (jsg@)
sets
~ lists/man/mi
> sync (pvalchev@)
== gnu =============================================================== 03/09 ==
http://www.openbsd.org/cgi-bin/cvsweb/src/gnu
egcs
~ gcc/cse.c
> Backport a gcc3 fix:
> * cse.c (cse_end_of_basic_block): Don't return the end of a basi
> block reached by a branch if we're not going to actually process
> this block (miod@)
== lib =============================================================== 04/09 ==
http://www.openbsd.org/cgi-bin/cvsweb/src/lib
libc
~ gen/sysctl.3
> fix typo: s/sensorsdev/sensordev/ (cnst@)
~ gen/sysctl.3
> under HW_SENSORS, mention <sys/sensors.h>, similarly to KERN_SYSVIPC.*; ok
> jmc (cnst@)
~ gen/sysctl.3
> HW_SENSORS was never really a 'struct', and nowadays it is definitely a
> 'node' (cnst@)
~ sys/ktrace.2
> document "pid"; based on a diff from Kristaps Dzonsons
> ok otto (jmc@)
~ gen/sysctl.3
> kern.timecounter.timestepwarnings may be altered; from Kristaps Dzonsons
> (jmc@)
~ sys/getpgrp.2
> - this page describes getpgid.2 too
> - describe when "pid" is zero; from Kristaps Dzonsons
> ok millert (jmc@)
libpthread
~ uthread/pthread_private.h ~ uthread/uthread_init.c
~ uthread/uthread_spec.c
> Initialize the locks in key_table. On hppa _SPINLOCK_LOCKED is 0, so an
> uninitialized lock ends up in a locked state. This lead to a deadlock if
> we
> called pthread_key_create().
> ok marc@, kurt@ (kettenis@)
== sbin ============================================================== 05/09 ==
http://www.openbsd.org/cgi-bin/cvsweb/src/sbin
dhclient
~ dhclient.c
> eliminate duplicate code to open lease file and just open at
> startup; ok krw@ henning@ (stevesk@)
fsck_ffs
~ pass5.c
> rmoev the macppc workaround, now that isset() and friends use expressions
> that gcc likes better (otto@)
growfs
~ Makefile
> remove m68k gcc workaround now that the gcc fix is in; ok miod@ (millert@)
route
~ show.c
> Check the rtm_version before trying to print an entry. If the rtmsg has a
> different version skip it and don't try to print it. Solves a SIGSEGV I
> have
> triggered with one of my scarier diffs. OK henning@ (claudio@)
swapctl
~ swaplist.c
> No need to include <sys/param.h> or <errno.h>. Also reorder includes
> while here. Adapted from a diff by Igor Zinovik. (millert@)
~ swapctl.c ~ swapctl.h
~ swaplist.c
> Remove dead code and fix incorrect comment. From Igor Zinovik. (millert@)
~ swapctl.8
> do not try to list which options go with -p: the list is currently out of
> date, and even if i update it, it will obsolete itself if we add or remove
> options. it works when it makes sense, like it should.
> after a request from Igor Zinovik (jmc@)
~ swapctl.c
> sync swapon usage(); from Igor Zinovik (jmc@)
sysctl
~ sysctl.8
> hw.sensors is a tree, so describe/expand it as such; 'put it in' jmc@
> (cnst@)
~ sysctl.8
> kern.timecounter.timestepwarnings may be altered; from Kristaps Dzonsons
> (jmc@)
== share ============================================================= 06/09 ==
http://www.openbsd.org/cgi-bin/cvsweb/src/share
man
~ man4/man4.hppa/ssio.4
> Delete BUGS section; support for serial and parallel ports is there now.
> (kettenis@)
~ man4/man4.hppa/Makefile + man4/man4.hppa/lcd.4
> lcd(4) (kettenis@)
~ man9/sensor_attach.9
> fix sensor_task_unregister description to reflect reality; ok dlg (cnst@)
~ man5/pf.conf.5
> typo; from Stephan A. Rickauer (jmc@)
~ man4/man4.hppa/lcd.4
> Mention that the LCD can be made to "blink" by setting machdep.led_blink.
> (kettenis@)
~ man4/ral.4
> fix the entry for Eminent EM3035.
> ok jmc@ (sobrado@)
~ man4/options.4
> make one of the lists -compact, to avoid some yucky vertical blankspace;
> (jmc@)
== sys =============================================================== 07/09 ==
http://www.openbsd.org/cgi-bin/cvsweb/src/sys
arch/hppa/conf
~ files.hppa
> Delay switching to the real serial console until we attach the serial
> device.
> The variety of different serial devices is just too big to make a decision
> up
> front. This should make the second serial port on four-digit B/C/J-class
> workstation work as a serial console too.
> ok miod@ (kettenis@)
~ files.hppa
> lcd(4); a driver for the front panel LCD display found on the four-digit
> B/C/J-class workstations, and many server systems.
> This is still work in progress; for now it only displays that the machine
> is running OpenBSD. Not enabled yet. (kettenis@)
~ GENERIC
> Enable lcd(4). (kettenis@)
~ GENERIC ~ RAMDISK
> Add sk(4). Tested by Maurice Janssen. (kettenis@)
~ GENERIC
> Enable rl(4) on hppa, tested by me, ok kettenis@ (jsg@)
arch/hppa/dev
~ com_dino.c ~ pdc.c
> Delay switching to the real serial console until we attach the serial
> device.
> The variety of different serial devices is just too big to make a decision
> up
> front. This should make the second serial port on four-digit B/C/J-class
> workstation work as a serial console too.
> ok miod@ (kettenis@)
+ lcd.c
> lcd(4); a driver for the front panel LCD display found on the four-digit
> B/C/J-class workstations, and many server systems.
> This is still work in progress; for now it only displays that the machine
> is running OpenBSD. Not enabled yet. (kettenis@)
~ lcd.c
> Make lcd(4) "blink" when machdep.led_blink is set. (kettenis@)
~ clock.c
> Move hppa to __HAVE_TIMECOUNTERS. (kettenis@)
arch/hppa/gsc
~ com_gsc.c
> Delay switching to the real serial console until we attach the serial
> device.
> The variety of different serial devices is just too big to make a decision
> up
> front. This should make the second serial port on four-digit B/C/J-class
> workstation work as a serial console too.
> ok miod@ (kettenis@)
arch/hppa/hppa
~ conf.c ~ machdep.c
> Delay switching to the real serial console until we attach the serial
> device.
> The variety of different serial devices is just too big to make a decision
> up
> front. This should make the second serial port on four-digit B/C/J-class
> workstation work as a serial console too.
> ok miod@ (kettenis@)
~ mainbus.c
> lcd(4); a driver for the front panel LCD display found on the four-digit
> B/C/J-class workstations, and many server systems.
> This is still work in progress; for now it only displays that the machine
> is running OpenBSD. Not enabled yet. (kettenis@)
~ process_machdep.c
> Use HPPA_PC_PRIV_USER instead of hardcoded 3.
> requested by miod@ (kettenis@)
~ locore.S
> PDC I/O space lives at 0xf0f0000000, not 0xf000000000, at least on astr(4)
> based systems. (kettenis@)
~ machdep.c
> Give hppa the blink_led API from sparc64, and the associated
> machdep.led_blink
> sysctl. (kettenis@)
~ machdep.c
> Move hppa to __HAVE_TIMECOUNTERS. (kettenis@)
arch/hppa/include
~ param.h
> Delay switching to the real serial console until we attach the serial
> device.
> The variety of different serial devices is just too big to make a decision
> up
> front. This should make the second serial port on four-digit B/C/J-class
> workstation work as a serial console too.
> ok miod@ (kettenis@)
~ pdc.h
> Add PDC_CHASSIS_INFO and associated structures. (kettenis@)
~ float.h
> sizeof long double == sizeof double, deal with it; ok kettenis (jason@)
~ cpu.h
> Give hppa the blink_led API from sparc64, and the associated
> machdep.led_blink
> sysctl. (kettenis@)
~ _types.h
> Move hppa to __HAVE_TIMECOUNTERS. (kettenis@)
arch/i386/conf
~ RAMDISKC
> another rare device temporarily gets the axe (until some other shrinkage
> happens) (deraadt@)
arch/i386/i386
~ machdep.c
> Oh, look, code that begins like this:
> if (cpu_class != CPUCLASS_386) {
> Since we don't support 386 now, unconditionally execute the block.
> ok tom toby (mk@)
~ pmapae.c
> More code that tests for CPUCLASS_386 that can go away. Pointed out by
> Charles Longeau, thanks.
> Fix an indentation nit while there.
> ok toby (mk@)
arch/mips64/include
~ cpu.h
> bus_dmamem_map() maps with a single segment in directly-translated XKPHYS
> space, either cache coherent for regular mappings and uncached for
> BUS_DMA_COHERENT mappings, as done on all other platforms with direct
> mappings. (miod@)
arch/mips64/mips64
~ cp0access.S ~ interrupt.c
~ vm_machdep.c
> Change idle_mask to be made of the cop0 SR bits unshifted and the cop0 IC
> bits
> shifted, instead of the other way around; this shaves a few instructions.
> (miod@)
~ trap.c
> Do not reenabled interrupts when processing a ddb trap, for bad things may
> happen; from NetBSD (miod@)
~ context.S
> On exit from switch_exit(), do not bother saving context and immediately
> jump into the scheduler loop. (miod@)
~ cp0access.S ~ lcore_float.S
> Replace bunches of nops with the ITLBNOPFIX macro, which generates fewer
> nops unless we compile for early RM7000 flavours, which we usually don't
> do. (miod@)
~ pmap.c
> Prefer ``hit'' cache operations when flushing kernel memory. (miod@)
arch/sgi/conf
~ GENERIC
> emu(4) works on sgi.
> requested by jsg@
> the digital out port is obscured by the small PCI card access slot
> on the moosehead case, but we don't support the digital ports anyway
> (jakemsr@)
arch/sgi/sgi
~ machdep.c
> Change idle_mask to be made of the cop0 SR bits unshifted and the cop0 IC
> bits
> shifted, instead of the other way around; this shaves a few instructions.
> (miod@)
~ bus_dma.c
> bus_dmamem_map() maps with a single segment in directly-translated XKPHYS
> space, either cache coherent for regular mappings and uncached for
> BUS_DMA_COHERENT mappings, as done on all other platforms with direct
> mappings. (miod@)
~ machdep.c
> Do not bother trying to make the tlb handler fit - they are too large
> and the r5000 errata workaround made them non-relocatable, so always copy
> trampolines. This will be revisited when the tlb refill code will be
> selected
> at runtime (soon). (miod@)
arch/sparc64/include
~ param.h
> Get rid of the fixe VA range for device mappings; use uvm_km_valloc()
> instead.
> This allows mappings of more than 256MB, needed by some frame buffers.
> "looks good", miod@ (kettenis@)
arch/sparc64/sparc64
~ machdep.c
> Get rid of the fixe VA range for device mappings; use uvm_km_valloc()
> instead.
> This allows mappings of more than 256MB, needed by some frame buffers.
> "looks good", miod@ (kettenis@)
conf
~ files
> net80211 requires AES too. (damien@)
crypto
~ sha1.c
> unbreak landisk kernel sha1 by working around a compiler bug;
> also brings kernel sha1 more in line with userland;
> discussed with miod@ and millert@; (otto@)
dev
~ auconv.c ~ mulaw.c
> when looping through an array and advancing your pointer to the array
> 2x on each loop, only loop .5x times
> fixes hard hangs on i386 and "hiccups" on sgi when these functions are
> used through e.g. dd if=/dev/audio of=foo, since mulaw is the default
> encoding.
> the commit history wrt this code is interesting. I am responsible for
> introducing this braindamage to OpenBSD ... and note that
> linear16_to_linear8_[lb]e had it right ... (jakemsr@)
~ audio.c
> - the data in the read buffer, that was put there by the hardware,
> may not be the same sample size as what userland is to receive.
> account for the discrepency between the sample sizes when comparing
> how much to copy out with what userland expects.
> - only copy out the part of the buffer that is in the format userland
> expects.
> emu(4) can now record with all encodings it claims to be able to.
> that is, dd if=/dev/audio of=foo does as audio(4) says (monaural
> mu-law) and does it correctly.
> AFAIKS, the only other driver that sets a read factor is uaudio(4),
> and that depends on what the hardware supports.
> tested on i386, amd64 and sgi with 3 different emu(4) cards (jakemsr@)
~ audio.c
> more places where the difference between the hardware sample size
> and the userland sample size matters.
> there may be different sample size factors for play and record,
> so use the appropriate factor when userland sets the blocksize.
> the reported blocksize, hiwat and lowat are only for the play buffer.
> IMO, it would be good to report the record blocksize, hiwat and lowat
> as well, but that is another issue.
> tested with emu(4) and an auvia(4) modified to only do stereo in
> hardware. (jakemsr@)
~ audio.c
> move the processing of the pause attribute to the end of audiosetinfo(),
> to allow buffer sizes and pointer to the buffer to be set to reasonable
> values for the sample size of the data to be read/written.
> fixes kernel corruption seen with azalia and probably other drivers
> that are using something other than 8kHz monaural mulaw as the default
> encoding when doing 'dd if=/dev/audio of=foo' as the first audio
> operation after boot.
> problem reported by deanna@ (jakemsr@)
~ audio.c
> - when traversing mixer fields in the attach routine and connecting
> the mixer layer to the audio layer, differentiate between the
> 'monitor' class and the 'outputs' class instead of lumping them
> together. not all mixers have a monitor class entry which was
> causing the outputs class to be ignored.
> - look for monitor port in the monitor class, but if the monitor
> port is not found in the monitor class look in the outputs class
> as well. the code was effectively looking in both the monitor and
> outputs classes before, so this is no real change.
> sets up audio_info.play.[gain|balance] correctly on at least emu(4),
> auich(4), auvia(4) and snapper(4) ... probably most other AC'97 devices
> as well. as a result, audioctl(1) works much better and the overall
> volume can be set with /dev/audio instead of needing to go through
> /dev/mixer.
> from deanna@
> thanks again to those who tested this change (jakemsr@)
dev/ic
~ com.c
> Delay switching to the real serial console until we attach the serial
> device.
> The variety of different serial devices is just too big to make a decision
> up
> front. This should make the second serial port on four-digit B/C/J-class
> workstation work as a serial console too.
> ok miod@ (kettenis@)
~ re.c ~ rtl81x9reg.h
> The logic determining the value of rl_eewidth for the 9346 and 9356
> eeproms was backwards. This resulted in a bogus MAC address being
> read from the eeprom on certain cards. From FreeBSD. OK pvalchev@
> (millert@)
~ acx.c ~ acx100.c
~ acxvar.h ~ ath.c
~ malo.c ~ pgt.c
> replace the ieee80211_wepkey structure with a more generic ieee80211_key
> one that can be used with other ciphers than WEP. (damien@)
~ atw.c
> convert code under #if 0 to the new ieee80211_key structure. (damien@)
~ acx100.c
> unbreak build.
> pointed out by mglocker@ (damien@)
dev/pci
~ if_ste.c
> ident/ansify/de-register (jasper@)
~ if_ste.c
> Add missing '};' to end struct declaration. Compiles again. (krw@)
~ if_ipw.c ~ if_iwi.c
> replace the ieee80211_wepkey structure with a more generic ieee80211_key
> one that can be used with other ciphers than WEP. (damien@)
~ if_tht.c
> the softc variable is sc, not sp. (dlg@)
~ if_tht.c
> clear the IFF_ALLMULTI flag when the interface goes down. (dlg@)
dev/usb
~ if_atu.c ~ if_ral.c
~ if_uath.c
> replace the ieee80211_wepkey structure with a more generic ieee80211_key
> one that can be used with other ciphers than WEP. (damien@)
~ uhci.c
> Don't show debug output when an interrupt is not for us.
> From Marc Winiger <mw at msys.ch>
> ok dlg, claudio. (mbalmer@)
~ usb_subr.c
> no need to say in two ways "a set of usb devices went away"; ok by a few
> (deraadt@)
kern
~ uipc_mbuf.c
> Remove the MFREE() macro and replace it with a call to m_free().
> Also remove the _MEXTREMOVE macro which was only used by MFREE.
> This time with the uipc_mbuf.c change that I missed last time. (claudio@)
net
~ pf.c
> Don't drop outgoing packets in case of a congested input queue.
> OK markus@, mcbride@, "sounds reasonable" henning@ (mpf@)
~ ethertypes.h
> add ETHERTYPE_PAE (802.1X Port Access Entity).
> replace a dead link while i'm here.
> ok canacar@ reyk@ (damien@)
net80211
~ ieee80211_var.h ~ ieee80211_ioctl.c
~ ieee80211_crypto.h ~ ieee80211_crypto.c
> replace the ieee80211_wepkey structure with a more generic ieee80211_key
> one that can be used with other ciphers than WEP. (damien@)
~ ieee80211_crypto.c
> add AES Key Wrap algorithm (see RFC 3394).
> this will be used to encrypt/decrypt EAPOL-Key frames payload. (damien@)
~ ieee80211_crypto.c
> modify ieee80211_aes_key_wrap() to support in-place encryption.
> explicitly use ovbcopy() even if our kernel memcpy() supports
> overlapping buffers. (damien@)
netbt
~ hci_link.c ~ l2cap_signal.c
~ hci.h
> spacing, chop some of the more obscenely long lines. (gwk@)
netinet
~ igmp.c ~ in.c
~ in_var.h ~ ip_output.c
> Remove inm_ifp from struct in_multi -- caching struct ifnet is dangerous
> because interfaces may disappear without notice causing use after free
> bugs.
> Instead use the inm_ia->ia_ifp as a hint, struct in_ifaddr correctly tracks
> removals of interfaces and invalidates ia_ifp in such cases.
> looks good henning@ markus@ (claudio@)
sys
~ param.h
> rewrite isset() and friends to use shifts and masks instead of divide
> and modulo. generates smaller code and circumvents bugs seen on macppc
> and mac68k. ok deraadt@ art@ miod@ (otto@)
~ mbuf.h
> Remove the MFREE() macro and replace it with a call to m_free().
> Also remove the _MEXTREMOVE macro which was only used by MFREE.
> This time with the uipc_mbuf.c change that I missed last time. (claudio@)
uvm
~ uvm_map.c
> Indentation nit. (art@)
== usr.bin =========================================================== 08/09 ==
http://www.openbsd.org/cgi-bin/cvsweb/src/usr.bin
cdio
~ cdio.1
> - document the "play" default a little more clearly
> - document the difference between "play" and "cdplay" more clearly
> ok mjc (jmc@)
~ cdio.1
> lexicographically sorts the list of commands
> ok jmc@ (sobrado@)
cvs
~ getlog.c
> Do not display the `Working file:' line if the issued command is `rlog'.
> Matches GNU's behaviour. OK joris at . (xsa@)
~ client.c
> Do not send the Directory request when using the rlog command.
> OK joris at . (xsa@)
~ getlog.c
> Simplify the way we check wether the issued command is `log' or `rlog'.
> Input and OK ray at . (xsa@)
~ getlog.c
> Correct function name in error string. (xsa@)
~ client.c
> Forgot this part about rlog not needing the Directory request to be sent.
> (xsa@)
~ checkout.c
> Support -r for the export command. (xsa@)
~ util.c
> xcalloc is unneeded here since i is always 0 and we always use the
> memory after initializing it.
> Initial diff from Igor Zinovik.
> OK niallo and xsa. (ray@)
lastcomm
~ lastcomm.c
> sync usage(); from Tobias Stoeckmann (jmc@)
~ lastcomm.c
> oops, missed a bit from tobias' diff - add "usage: " to usage();
> from Tobias Stoeckmann (jmc@)
make
~ cond.c
> comment snicky usage of strchr (espie@)
~ var.c
> reorder stuff in var.c so that the next patch is more readable. (espie@)
~ for.c ~ parse.c
~ var.c ~ var.h
~ varmodifiers.c ~ varmodifiers.h
> big clean-up patch:
> - rename a few functions in var.c to names that make more sense.
> - introduce Var_Deletei because it makes more sense.
> - rewrite .for loops to use a local LoopVar construct to avoid looking up
> more
> stuff.
> - reformat var.c to near K&R
> - rewrite most comments in var.c
> shown to a few people. millert@ gave me his okay since it passes through
> ports correctly. (espie@)
~ Makefile
> zap unneeded stuff (espie@)
~ main.c
> even though gcc doesn't reuse the utsname space, it could. Ensure MACHINE
> stays defined. (espie@)
~ var.c
> make sure loop variables use their own buffers.
> (causes .for loops to give weird results very infrequently, memory handling
> was slightly wrong, but not enough to break things thoroughly).
> noticed by naddy@ (espie@)
netstat
~ show.c
> Similar to sbin/route/show.c:
> Check the rtm_version before trying to print an entry. If the rtmsg has a
> different version skip it and don't try to print it. Solves a SIGSEGV I
> have
> triggered with one of my scarier diffs. OK henning@ (claudio@)
rcs
~ rcsutil.c
> Sync with cvs:
> > xcalloc is unneeded here since i is always 0 and we always use the
> > memory after initializing it.
> >
> > Initial diff from Igor Zinovik.
> >
> > OK niallo and xsa. (ray@)
top
~ utils.c
> fix percentage computation of wrapping numbers; from Willem Dijkstra
> via henning@ with a twist by me (otto@)
== usr.sbin ========================================================== 09/09 ==
http://www.openbsd.org/cgi-bin/cvsweb/src/usr.sbin
afs
~ src/lwp/lwp_asm.c ~ src/lwp/process.mips.S
> 64 bit mips support for the arla lwp code, requested by todd@ long ago...
> (miod@)
apmd
~ apmd.c
> Fix uninitialised variable 'sum' in single-processor idle calculation.
> ok ckuethe, sturm (mcbride@)
hoststated
~ check_icmp.c
> use fatal and not err, the message would get lost.
> found by Kevin Steves <stevesk (at) pobox dot com> (pyr@)
~ check_icmp.c
> typo
> also found by Kevin Steves (pyr@)
pkg_add
~ pkg_create.1
> - document the fact that mkfontscale is now run as well as mkfontdir and
> fc-cache for @fontdir
> ok kili@ espie@ (ajacoutot@)
tcpdump
~ ethertype.h
> s/ETHERTYPE_EAPOL/ETHERTYPE_PAE/ to be in line with
> src/sys/net/ethertypes.h
> also, ETHERTYPE_PAE is the name used in the 802.1X standard.
> pointed out by jsg@ (damien@)
===============================================================================
More information about the owc
mailing list