hrs [Thu, 24 Feb 2005 19:43:39 +0000 (19:43 +0000)]
New release notes:
options SYSCTL_DEBUG,
loader menu option to set hint.atkbd.0.flags=1,
device snd_audiocs for CS4231 audio controller,
bge(4) altq(4) support,
hptmv(4) added,
rm(1) -I option,
interface name change in rc.conf, and
rc.d/moused multiple device support.
hrs [Thu, 24 Feb 2005 18:52:21 +0000 (18:52 +0000)]
New release notes:
device driver cleanup to use the generic tty(4) interface,
ipdivert kernel loadable module,
rune(3) multibyte/wide chatacter support removed,
xargs -I option POSIX conformance,
GNU readline 4.3->5.0, and
pkg_version(1) -q option.
jhb [Thu, 24 Feb 2005 18:24:16 +0000 (18:24 +0000)]
Use msync() to implement msync() for freebsd32 emulation. This isn't quite
right for certain MAP_FIXED mappings on ia64 but it will work fine for all
other mappings and works fine on amd64.
Requested by: ps, Christian Zander
MFC after: 1 week
wpaul [Thu, 24 Feb 2005 17:58:27 +0000 (17:58 +0000)]
Couple of lessons learned during USB driver testing:
- In kern_ndis.c:ndis_unload_driver(), test that ndis_block->nmb_rlist
is not NULL before trying to free() it.
- In subr_pe.c:pe_get_import_descriptor(), do a case-insensitive
match on the import module name. Most drivers I have encountered
link against "ntoskrnl.exe" but the ASIX USB ethernet driver I'm
testing with wants "NTOSKRNL.EXE."
- In subr_ntoskrnl.c:IoAllocateIrp(), return a pointer to the IRP
instead of NULL. (Stub code leftover.)
- Also in subr_ntoskrnl.c, add ExAllocatePoolWithTag() and ExFreePool()
to the function table list so they'll get exported to drivers properly.
harti [Thu, 24 Feb 2005 16:56:36 +0000 (16:56 +0000)]
Split the chip-specific code from the generic Utopia code. This simplifies
adding of new physical chips. Now one just needs to add a .h and a .c
file for the new chip and add one line to utopia.c for that chip.
harti [Thu, 24 Feb 2005 16:05:45 +0000 (16:05 +0000)]
Var_Parse: Separate different error states by introducing an else block
after a return. Move assignments to {freePtr, dynamic, start} closer to the
return statements to clarify which variables are actually used for
communication between the losely coupled blocks of the code. Clear up
an if-expression to make common structures of the conditions clearer.
Use strchr instead of switch statements to check for a character beeing
a member of a set.
harti [Thu, 24 Feb 2005 10:23:31 +0000 (10:23 +0000)]
Replace the calls to Lst_ForEach with the new LST_FOREACH macro and
fix the prototype for Compat_RunCommand to take the actual argument
types instead of void *.
glebius [Thu, 24 Feb 2005 09:05:28 +0000 (09:05 +0000)]
Fix problem when master comes up with one interface down, and preempts
mastering on all other interfaces:
- call carp_carpdev_state() on initialize instead of just setting to INIT
- in carp_carpdev_state() check that interface is UP, instead of checking
that it is not DOWN, because a rebooted machine may have interface in
UNKNOWN state.
das [Thu, 24 Feb 2005 06:32:13 +0000 (06:32 +0000)]
Revert rev 1.8, which causes small (e.g. 2 ulp) errors for some
inputs. The trouble with replacing two floats with a double is that
the latter has 6 extra bits of precision, which actually hurts
accuracy in many cases. All of the constants are optimal when float
arithmetic is used, and would need to be recomputed to do this right.
alc [Thu, 24 Feb 2005 06:13:01 +0000 (06:13 +0000)]
Revert the first part of revision 1.114 and modify the second part. On
architectures implementing uma_small_alloc() pages do not necessarily
belong to the kmem object.
sam [Thu, 24 Feb 2005 00:40:33 +0000 (00:40 +0000)]
change m_adj to reclaim unused mbufs instead of zero'ing m_len
when trim'ing space off the back of a chain; this is indirect
solution to a potential null ptr deref
csjp [Thu, 24 Feb 2005 00:13:16 +0000 (00:13 +0000)]
Add locking assertions into vn_extattr_set, vn_extattr_get and
vn_extattr_rm. This is meant to catch conditions where IO_NODELOCKED
has been specified without the vnode being locked.
csjp [Thu, 24 Feb 2005 00:05:50 +0000 (00:05 +0000)]
Drop bzero and shove the responsibility of zeroing the kse upcall
object on to the zone allocator. It should be noted that uma_zalloc(9)
uses bzero to zero out the object so there probably wont be any
real performance benefit. If UMA grows the ability to supply
zeroed zones more efficiently in the future, we will not have to
modify all the existing consumers.
des [Wed, 23 Feb 2005 21:26:55 +0000 (21:26 +0000)]
If what we have is a struct sockaddr_storage * and what we want is a
struct sockaddr_storage *, there's no point in casting it prematurely
to a struct sockaddr *. This unbreaks WARNS=6 on sparc64.
glebius [Wed, 23 Feb 2005 17:37:39 +0000 (17:37 +0000)]
- remove OpenBSDisms, add FreeBSDisms
- comment out feature, we do not have yet: tcpdumping on pfsync,
add a BUGS section
- reference carp.4
- dereference bpf(4), tcpdump(7), hostname.if(5)
- sort references
- tell when pfsync appeared in FreeBSD
wpaul [Wed, 23 Feb 2005 16:44:33 +0000 (16:44 +0000)]
Implement IoCancelIrp(), IoAcquireCancelSpinLock(), IoReleaseCancelSpinLock()
and a machine-independent though inefficient InterlockedExchange().
In Windows, InterlockedExchange() appears to be implemented in header
files via inline assembly. I would prefer using an atomic.h macro for
this, but there doesn't seem to be one that just does a plain old
atomic exchange (as opposed to compare and exchange). Also implement
IoSetCancelRoutine(), which is just a macro that uses InterlockedExchange().
Fill in IoBuildSynchronousFsdRequest(), IoBuildAsynchronousFsdRequest()
and IoBuildDeviceIoControlRequest() so that they do something useful,
and add a bunch of #defines to ntoskrnl_var.h to help make these work.
These may require some tweaks later.
njl [Wed, 23 Feb 2005 16:42:56 +0000 (16:42 +0000)]
Import a rewrite of p4tcc for the cpufreq(4) framework. This includes
a bugfix of clearing the On-Demand flag when going back to 100%. It
has been tested and works on an IBM R32. Note original work done by
Ted Unangst and sobomax@.
jeff [Wed, 23 Feb 2005 10:05:43 +0000 (10:05 +0000)]
- Enable SMP VFS by default on current. More users are needed to turn up
any remaining bugs. Anyone inconvenienced by this can still disable it
in the loader.
kientzle [Wed, 23 Feb 2005 06:57:04 +0000 (06:57 +0000)]
Don't return NULL if there's no error message;
return a generic text message instead.
(Someday, I'll track down all the places that
are generating errors but not recording messages. ;-/
njl [Wed, 23 Feb 2005 03:20:00 +0000 (03:20 +0000)]
If a register width is less than 8, assume the BIOS author thought it was
in units of bytes and adjust accordingly. This is found at least on the
Sony PCG-505BX.
jeff [Wed, 23 Feb 2005 00:11:14 +0000 (00:11 +0000)]
- Only the xlock holder should be calling VOP_LOCK on a vp once VI_XLOCK
has been set. Assert that this is the case so that we catch filesystems
who are using naked VOP_LOCKs in illegal cases.