jhb [Tue, 8 Nov 2005 15:35:27 +0000 (15:35 +0000)]
MFC: Fix support for multiple rocketport cards in the same machine. This
is an instant MFC as it was actually tested on 5.x and 6.x. Note that like
the change to HEAD, this renames the devices, and there is no easy way on
6.x to create compatibility names in the kernel.
Reviewed by: phk
Tested by: Jim Pazarena paz at qcislands dot net
rwatson [Mon, 7 Nov 2005 18:57:59 +0000 (18:57 +0000)]
Merge kern_malloc.c:1.147 from HEAD to RELENG_6:
Add a "show malloc" command to DDB, which prints out the current stats for
available kernel malloc types. Quite useful for post-mortem debugging of
memory leaks without a dump device configured on a panicked box.
rwatson [Mon, 7 Nov 2005 18:57:08 +0000 (18:57 +0000)]
Merge uma_core.c:1.132 from HEAD to RELENG_6:
Add a "show uma" command to DDB, which prints out the current stats for
available UMA zones. Quite useful for post-mortem debugging of memory
leaks without a dump device configured on a panicked box.
stefanf [Sun, 6 Nov 2005 20:39:48 +0000 (20:39 +0000)]
Sync with HEAD's code:
- Support for command -v and -V.
- Fixes for the errexit option.
- A fix for a crash caused by SIGINT.
- POSIX compliant set +o ouput.
- A fix for unalias' exit code.
- Man page updates.
- Code cleanups, WARNS 3.
jhb [Sun, 6 Nov 2005 16:17:18 +0000 (16:17 +0000)]
MFC:
- Enforce an implicit lock order that Giant cannot be locked while holding
any other non-sleepable lock. In plain English: Giant comes before all
other mutexes.
- Add some extra description to the lock order reversal printf's to indicate
when a reversal is triggered by a hard-coded implicit rule.
jhb [Sun, 6 Nov 2005 16:09:32 +0000 (16:09 +0000)]
MFC: Revert most of revision 1.235 and fix the problem a different way as
we can't acquire an sx lock in ttyinfo() as it is almost always called
from an interrupt handler.
suz [Sat, 5 Nov 2005 10:54:21 +0000 (10:54 +0000)]
MFC: sync with KAME regarding the following clarification in RFC3542
- disable IPv6 operation if DAD fails for some EUI-64 link-local addresses.
- export get_hw_ifid() (and rename it) as a subroutine for this process.
suz [Sat, 5 Nov 2005 10:50:09 +0000 (10:50 +0000)]
MFC: added an ioctl option in kernel so that ndp/rtadvd can change some NDP-related kernel variables based on their configurations (RFC2461 p.43 6.2.1 mandates this for IPv6 routers)
hrs [Sat, 5 Nov 2005 06:00:37 +0000 (06:00 +0000)]
Add the following errata items:
- pmcstat(8) 32-bit executables handling problem on FreeBSD/amd64[1],
- boot-time panic on some PowerMac G4 systems[2], and
- incompatible change of LC_* in 6.0-RELEASE and misc/compat5x.
jhb [Sat, 5 Nov 2005 00:53:41 +0000 (00:53 +0000)]
MFC: Use device_printf() and if_printf(), use callout_*(), add M_ZERO to
initialize nge_ldata, add locking to ifmedia callouts, cleanup attach
error handling, and fixup locking in ioctl().
peter [Sat, 5 Nov 2005 00:41:12 +0000 (00:41 +0000)]
MFC: allow FreeBSD/amd64 to boot on certain Dell machines that have more
than 8 entries in the 0xe821 map. This includes things like ACPI
exclusion zones, memory segments and recoverable memory segments after
the kernel has booted.
ume [Fri, 4 Nov 2005 20:35:14 +0000 (20:35 +0000)]
MFC 1.96: simplied the fix to FreeBSD-SA-04:06.ipv6. The previous
one worried too much even though we actually validate the parameters.
This code also is more compatible with other *BSDs, which do copyin
within setsockopt().
ume [Fri, 4 Nov 2005 20:26:16 +0000 (20:26 +0000)]
MFC: scope cleanup. with this change
- most of the kernel code will not care about the actual encoding of
scope zone IDs and won't touch "s6_addr16[1]" directly.
- similarly, most of the kernel code will not care about link-local
scoped addresses as a special case.
- scope boundary check will be stricter. For example, the current
*BSD code allows a packet with src=::1 and dst=(some global IPv6
address) to be sent outside of the node, if the application do:
s = socket(AF_INET6);
bind(s, "::1");
sendto(s, some_global_IPv6_addr);
This is clearly wrong, since ::1 is only meaningful within a single
node, but the current implementation of the *BSD kernel cannot
reject this attempt.
ume [Fri, 4 Nov 2005 19:57:31 +0000 (19:57 +0000)]
MFC: simplified udp6_output() and rip6_output(): do not override
in6p_outputopts at the entrance of the functions. this trick was
necessary when we passed an in6 pcb to in6_embedscope(), within which
the in6p_outputopts member was used, but we do not use this kind of
interface any more.
rse [Fri, 4 Nov 2005 19:37:14 +0000 (19:37 +0000)]
MFC:
| Fix parsing of mdmfs(8) option "-w <user>:<group>" in case <user> or
| <group> is a numeric user/group ID instead of a user/group name (as
| explicitly intended to be allowed by both the manual page and the
| implementation).
|
| Before this fix, mdmfs(8) aborted:
|
| | # mdmfs -s 32m -w 0:0 md /var/tmp/foo
| | Assertion failed: (mip->mi_have_uid), function extract_ugid, file /usr/src/sbin/mdmfs/mdmfs.c, line 555.
| | Abort trap (core dumped)
|
| The "mi_have_[ug]id" fields were only set in case a name lookup was
| successful. Instead they also have to be set in case the string to
| integer conversion was successful.
|
| Additionally, as a result of this fix, two assertions at the end of
| the function are now always true and hence can be just be removed. It
| is guarrantied that both the UID and the GID are set when the function
| returns regularily, else it would have been already bailed out with
| usage()/exit(3) or errx(3) before.
|
| Spotted by: Christoph Schug <chris@schug.net>
glebius [Fri, 4 Nov 2005 18:25:55 +0000 (18:25 +0000)]
MFC 1.91, 1.92:
- First fill in structure with valid values, and only then attach it
to the global list.
- In in_addprefix() compare not only route addresses, but their masks,
too. This fixes problem when connected prefixes overlap.
glebius [Fri, 4 Nov 2005 18:20:32 +0000 (18:20 +0000)]
MFC 1.115:
- When flushing node input queue, check whether item has a callback. If
it does, then call it suppling ENOENT as error value.
- Add assert, that helped to catch the above error.
marcel [Fri, 4 Nov 2005 03:31:23 +0000 (03:31 +0000)]
MFC rev. 1.246:
Fix an unaligned I/O memory access in the event that a SCB times out.
The FXP_SCR_FLOWCONTROL registers is at offset 0x19, but 2 bytes wide.
It cannot be read as a word without causing a panic on architectures
that enforce strict alignment.
kensmith [Thu, 3 Nov 2005 00:34:05 +0000 (00:34 +0000)]
MFC v1.7:
> date: 2005/11/03 00:23:13; author: kensmith; state: Exp; lines: +1 -6
> It had been noticed disc2 was overflowing earlier but committing the
> fix slipped through a crack. Remove the apache and php packages under
> the assumption someone installing a Web server has network access and
> doesn't *need* the packages on disc2.