Kelly Yancey [Mon, 15 May 2006 19:42:10 +0000 (19:42 +0000)]
Restore the ability to mount procfs and fdescfs filesystems via the
mount(2) system call:
* Add cmount hook to fdescfs and pseudofs (and, by extension, procfs and
linprocfs). This (mostly) restores the ability to mount these
filesystems using the old mount(2) system call (see below for the
rest of the fix).
* Remove not-NULL check for the data argument from the mount(2) entry
point. Per the mount(2) man page, it is up to the individual
filesystem being mounted to verify data. Or, in the case of procfs,
etc. the filesystem is free to ignore the data parameter if it does
not use it. Enforcing data to be not-NULL in the mount(2) system call
entry point prevented passing NULL to filesystems which ignored the
data pointer value. Apparently, passing NULL was common practice
in such cases, as even our own mount_std(8) used to do it in the
pre-nmount(2) world.
All userland programs in the tree were converted to nmount(2) long ago,
but I've found at least one external program which broke due to this
(presumably unintentional) mount(2) API change. One could argue that
external programs should also be converted to nmount(2), but then there
isn't much point in keeping the mount(2) interface for backward
compatibility if it isn't backward compatible.
Note that an old adjkerntz is not really usable after the recent
sysctlbyname() changes, so the new adjkerntz binary should be
used while in single-user mode.
Max Laier [Sun, 14 May 2006 23:42:24 +0000 (23:42 +0000)]
Use only lower 64bit of src/dest (and src/dest port) for hashing of IPv6
connections and get rid of the flow_id as it is not guaranteed to be stable
some (most?) current implementations seem to just zero it out.
Marius Strobl [Sun, 14 May 2006 19:04:12 +0000 (19:04 +0000)]
- Replace the entry for the no longer existing lnc(4) module with an
entry for the replacement le(4) module.
- Add an entry for the gem(4) module.
- Remove gratuitous whitespace in the description of the hme(4) entry.
Bruce M Simpson [Sun, 14 May 2006 14:22:49 +0000 (14:22 +0000)]
Fix a long-standing limitation in IPv4 multicast group membership.
By making the imo_membership array a dynamically allocated vector,
this minimizes disruption to existing IPv4 multicast code. This
change breaks the ABI for the kernel module ip_mroute.ko, and may
cause a small amount of churn for folks working on the IGMPv3 merge.
Previously, sockets were subject to a compile-time limitation on
the number of IPv4 group memberships, which was hard-coded to 20.
The imo_membership relationship, however, is 1:1 with regards to
a tuple of multicast group address and interface address. Users who
ran routing protocols such as OSPF ran into this limitation on machines
with a large system interface tree.
Craig Rodrigues [Sun, 14 May 2006 01:51:38 +0000 (01:51 +0000)]
For nmount(), if "rw" is specified as a mount option,
add "noro" to the list of mount options. This allows
a read-only mount to be converted to read-write via:
mount -u -o rw
Olivier Houchard [Sat, 13 May 2006 23:41:16 +0000 (23:41 +0000)]
Resurrect Skyeye support :
Add a new option, SKYEYE_WORKAROUNDS, which as the name suggests adds
workarounds for things skyeye doesn't simulate. Specifically :
- Use USART0 instead of DBGU as the console, make it not use DMA, and manually provoke an interrupt when we're done in the transmit function.
- Skyeye maintains an internal counter for clock, but apparently there's
no way to access it, so hack the timecounter code to return a value which
is increased at every clock interrupts. This is gross, but I didn't find a
better way to implement timecounters without hacking Skyeye to get the
counter value.
- Force the write-back of PTEs once we're done writing them, even if they
are supposed to be write-through. I don't know why I have to do that.
Alan Cox [Sat, 13 May 2006 20:05:44 +0000 (20:05 +0000)]
Simplify the implementation of vm_fault_additional_pages() based upon the
object's memq being ordered. Specifically, replace repeated calls to
vm_page_lookup() by two simple constant-time operations.
PR: bin/71663
Submitted by: Dan Lukes
Reviewed by: hm@
fix compile warnings in isdnd and isdntest. some more
compile time warnings also mentioned in this PR were
already fixed in an earlier commit today.
Introduce a namespace munging hack inspired by NetBSD to avoid polluting
the namespace of applications which inadvertantly link in libssh (usually
through pam_ssh)
Chuck Lever [Sat, 13 May 2006 00:16:35 +0000 (00:16 +0000)]
Add better sanity checking to the logic that handles ioctl processing
for nfsclient and nfs4client in order to prevent local root users
from panicing the system.
PR: kern/77463
Submitted by: Wojciech A. Koszek
Reviewed by: cel, rees
MFC after: 2 weeks
Security: Local root users can panic the system at will
Marcel Moolenaar [Fri, 12 May 2006 23:24:45 +0000 (23:24 +0000)]
o A divisor of 0 is perfectly valid. Reserve -1 for an invalid
divisor. This allows us to set the line speed to the maximum
of 1/4 of the device clock.
o Disable the baudrate generator before programming the line
settings, including baudrate, and enable it afterwards.
Check the return code of sc_clean_up() in the only place where it
was not checked at all. There is only one case when sc_clean_up()
can fail, because of wait_scrn_saver_stop(), but it doesn't hurt
to check anyway.
Bruce A. Mah [Fri, 12 May 2006 19:31:29 +0000 (19:31 +0000)]
Fix typo in last commit: traceroute(8) -e, not traceroute(8) -c.
Submitted by: Rong-En Fan grafan at gmail dot com
Pointy hat to: Thunderbird, for a too-small default font size
Not ready for reading glasses yet: bmah
Max Laier [Fri, 12 May 2006 19:17:34 +0000 (19:17 +0000)]
Move etc/rc.firewall6 to ipfw2+v6, update related rc.d and periodic scripts.
Since ipfw2 now does dual-stack, statistics for IPv6 come from the ipfw
scripts as well.
apropos(1) does not expand *roff macros that should appear in .Nd
text and, as a result, 'FreeBSD' is not visible in apropos output
when security(7) is displayed. Fix this buglet by using a
literal 'FreeBSD' string in .Nd
Max Laier [Fri, 12 May 2006 16:15:34 +0000 (16:15 +0000)]
Put debugging messages related to inconsistent ticket numbers under misc and
wrap it __FreeBSD__ specific as I couldn't figure out which version of
OpenBSD I got it from.
After a mini-discussion with Sam Leffler, remove the hardcoded
list of Atheros-based cards from ath(4). The online list is
always more up to date, anyway.
This invalidates:
PR: docs/95360
Submitted by: Erik Nordstr:om Andersen <erik@erik-n-andersen.dk>
Colin Percival [Fri, 12 May 2006 10:42:40 +0000 (10:42 +0000)]
Use 'rm -rf foo/bar' to remove a port instead of 'rm -rf foo/bar/'.
When /usr/ports/foo/bar is a symlink pointing outside the tree, this
deletes the symlink instead of the directory it points to.
Max Laier [Fri, 12 May 2006 04:41:27 +0000 (04:41 +0000)]
Reintroduce net.inet6.ip6.fw.enable sysctl to dis/enable the ipv6 processing
seperately. Also use pfil hook/unhook instead of keeping the check
functions in pfil just to return there based on the sysctl. While here fix
some whitespace on a nearby SYSCTL_ macro.
Benno Rice [Fri, 12 May 2006 02:01:38 +0000 (02:01 +0000)]
Add a new kernel config option, VERBOSE_SYSINIT.
When porting FreeBSD to a new platform, one of the more useful things to do is
get mi_startup() to let you know which SYSINIT it's up to. Most people tend to
whack a printf in the SYSINIT loop to print the address of the function it's
about to call. Going one better, jhb made a version that uses DDB to look up
the name of the function and print that instead. This version is essentially
his with the addition of some ifdeffery to make it optional and to allow it to
work (although using only the function address, not the symbol) if you forgot
to enable DDB.
All the cool bits by: jhb
Approved by: scottl, rink, cognet, imp
Bruce A. Mah [Thu, 11 May 2006 19:17:17 +0000 (19:17 +0000)]
For some reason, it looks like SA-06:{10,11,12,13} were not mentioned
in HEAD's release notes, even though the issues involved were applied
(and fixed). Copy their descriptions from one of the RELENG_*
branches (RELENG_5 in this case).
SA-06:08 and SA-06:09 were not applicable to code on HEAD and thus not
mentioned.
Nate Lawson [Thu, 11 May 2006 17:35:44 +0000 (17:35 +0000)]
Add support for the VIA C7-M processor family.
Remove an unnecessary check of the table's bus clock. CPUs that
support this feature export only the high/low settings via the MSR,
packed into 32 bits.