hrs [Fri, 8 Dec 2006 15:52:25 +0000 (15:52 +0000)]
MFC: Disable IPv6 configuration for interfaces in pccard_ether_start().
After a change of devd.conf, devd(8) handles NIC attach/detach event
by using /etc/pccard_ether with the interface name as the argument.
This model does not work properly with IPv6 configuration because the
implementation of IPv6 stateless auto-configuration in the FreeBSD
rc.d scripts depends on whether there are any explicit configurations
for interfaces or not. It works this way: if no manual configuration,
it will perform auto-configuration, but otherwise no
auto-configuration will be performed. So, this behavior can only be
determined by all of the interfaces on a system, not a single one.
For this reason, the network6_interface_setup() function called from
the pccard_ether_start() does not work with a single interface name.
And what is worse, this combination of devd.conf and
pccard_ether_start() caused a bad side-effect that when
ipv6_enable=YES, all of interfaces marked as DOWN would be UP
unconditionally (and router solicitation was sent) just after devd(8)
was invoked. This should be fixed in a more sophisticated way.
hrs [Fri, 8 Dec 2006 06:40:34 +0000 (06:40 +0000)]
MFC:
Add a link-local address to the lo0 even when ipv6_enable="NO".
A kernel with INET6 always has ::1 on lo0, so in the case of
ipv6_enable="NO" the lo0 can have ::1 with no link-local address.
This is a violation of the IPv6 specification. As a workaround
for this situation, fe80::1 is added in rc.d/auto_linklocal when
lo0 has no link-local address.
sobomax [Wed, 6 Dec 2006 20:12:13 +0000 (20:12 +0000)]
MFC all relevant changes since beginning of 2006:
- Correct spelling of 3DNow!;
- Add two new CPUID bits for AMD CPUs, i. e., SVM and extended APIC register;
- Add another Intel CPU feature flag, xTPR (Send Task Priority Messages);
- Remove bogus white-space diff to current.
mohans [Tue, 5 Dec 2006 18:41:35 +0000 (18:41 +0000)]
MFC :
Fix to readdir+ reply handling. When inserting an entry into the namecache,
initialize the nfsnode's ctime. Otherwise a subsequent lookup purges the
just entered namecache entry.
Approved by: re
- We know it is called rpclose() so call it directly.
- Fix -Wundef from compiling the amd64 LINT.
- Make rp(4) 64-bit- and endian-clean as well as work on strict alignment
archs.
- Instead of bus_space_{read,write}*(rman_get_bustag(), rman_get_bushandle())
use bus_{read,write}*(). Unlike in 7.0-CURRENT, this has no other benefit
than diff reduction with HEAD.
mlaier [Sun, 3 Dec 2006 18:32:51 +0000 (18:32 +0000)]
MFC: rev. 1.8 from OpenBSD, rev. 1.91:
fix servicecurve check; no point in checking the same sc three times, it
was obviously intended to check all three. has been wrong since the
beginning, 4 years... noticed by Earl Lapus <earl.lapus@gmail.com>, Vasil
Dimov <vd@FreeBSD.org> mailed me then, ok mcbride
emax [Fri, 1 Dec 2006 23:33:22 +0000 (23:33 +0000)]
MFC:
Do not mark Bluetooth HID device as "potential keyboard" if its descriptor
has items with CONSUMER page. For now only check for items with KEYBOARD page.
This should prevent bthidd(8) from allocating vkbd(4) keyboard for Microsoft
Bluetooth Explorer mouse.
MFC: Revert signedness type changes to "struct vmtotal" to keep
overflows easier to detect. As a bonus, fix printing of other
"struct vmtotal" members, t_rq, t_dw, t_pw, and t_sw.
brueffer [Thu, 30 Nov 2006 05:49:54 +0000 (05:49 +0000)]
MFC: rev. 1.25
Overhaul this manpage somewhat:
- Move mentionings of required drivers to the SYNOPSIS where they belong
- Remove cruft (XiG, sheesh) from the EXAMPLES section and re-arrange things to make
somewhat more sense
- Fix an Xref to manpage from ports to mention the corresponsing port
- Remove commented out HISTORY section header
sobomax [Wed, 29 Nov 2006 01:19:23 +0000 (01:19 +0000)]
Another attempt to MFC changes that prevent any accounting for the disabled
HTT cores. This time make code conditional on !defined(SCHED_ULE), since
SCHED_ULE is generally b0rken due to the fact that it doesn't honour
hlt_cpus_mask when scheduling processes like all other schedulers in the
system do.
I am not sure if such SCHED_ULE behaviour should be considered as a
security flaw, basically it means that anybody running SCHED_ULE kernel
on HTT system still affected by FreeBSD-SA-05:09.htt.
rwatson [Tue, 28 Nov 2006 21:41:12 +0000 (21:41 +0000)]
Reformulate ip_ctloutput() and tcp_ctloutput() to work around the fact
that so_pcb can be invalidated at any time due to an untimely reset.
Move the body of ip_ctloutput() to ip_ctloutput_pcbinfo(), which
accepts a pcbinfo argument, and wrap it with ip_ctloutput(), which
passes a NULL. Modify tcp_ctloutput() to directly invoke
ip_ctloutput_pcbinfo() and pass tcbinfo. Hold the pcbinfo lock when
dereferencing so_pcb and acquiring the inpcb lock in order to prevent
the inpcb from being freed; the pcbinfo lock is then immediately
dropped. This is required as TCP may free the inppcb and invalidate
so_pcb due to a reset at any time in the RELENG_6 network stack, which
otherwise leads to a panic.
This panic might be frequently seen on highly loaded IRC and Samba
servers, which have long-lasting TCP connections, query socket options
frequently, and see a significant number of reset connections.
This change has been merged directly to RELENG_6 as the problem does
not exist in HEAD, where the invariants for so_pcb are much stronger;
the architectural changes in HEAD avoid the need to acquire a global
lock in the socket option path. This change will be merged to
RELENG_6_2.
PR: 102412, 104765
Reviewed by: Diane Bruce <db at db.net>
Tested by: Daniel Austin <daniel at kewlio dot net>,
Kai Gallasch <gallasch at free dot de>
kensmith [Tue, 28 Nov 2006 17:08:43 +0000 (17:08 +0000)]
MFC v1.240:
revision 1.240
date: 2006/11/23 00:57:10; author: kensmith; state: Exp; lines: +1 -1
Oops - what people refer to as linux_base-fc4 calls itself linux_base-fc
and that's what pkg_add needs.
scottl [Tue, 28 Nov 2006 17:05:36 +0000 (17:05 +0000)]
Merge rev 1.10 of if_bcereg.h and 1.20-1.21 of if_bce.c These fix VLAN tag
handling and close a race in the TX path that would lead to lost packets under
heavy load.
cperciva [Mon, 27 Nov 2006 21:26:20 +0000 (21:26 +0000)]
Partial MFC of revision 1.4:
Fix a bug which caused a spurious "Fetching 2 metadata files... failed."
error message the first time FreeBSD Update is run on a release which
doesn't need any updates.
n_hibma [Mon, 27 Nov 2006 12:17:32 +0000 (12:17 +0000)]
MFC 1.22 and 1.23:
Shorten the kernel config file on the make command line to make things
like
NANO_KERNEL=/path/to/kernel.config
work, so multiple images can share the same kernel config file.
ru [Thu, 23 Nov 2006 11:57:12 +0000 (11:57 +0000)]
MFC: Make members of "struct vmmeter" unsigned; fix overflow bugs when
printing them in kilobytes in sysctl(8), systat(1), and vmstat(8).
Fix sysctl(8) reporting of the virtual memory's total; it's accounted
in pages too.
mohans [Wed, 22 Nov 2006 22:21:57 +0000 (22:21 +0000)]
Fix a race in soclose() where connections could be queued to the
listening socket after the pass that cleans those queues. This
results in these connections being orphaned (and leaked). The fix
is to clean up the so queues after detaching the socket from the
protocol. Thanks to ups and jhb for discussions and a thorough code
review.
Approved by: re
marck [Wed, 22 Nov 2006 17:18:05 +0000 (17:18 +0000)]
MFC:
revision 1.4
date: 2006/01/14 20:45:02; author: ru; state: Exp; lines: +2 -0
Ignore spurious '\0' first character read on a serial console.
This allows me to "boot -a" over a serial console. Tested on
several machines.
kensmith [Wed, 22 Nov 2006 13:44:27 +0000 (13:44 +0000)]
MFC v1.108:
> revision 1.108
> date: 2006/11/19 08:12:54; author: kensmith; state: Exp; lines: +15 -19
> Move the check for which disc volume we have/want to after we install
> the package dependencies. Installation of the dependencies may leave
> us on the wrong disc volume.
kensmith [Tue, 21 Nov 2006 17:46:17 +0000 (17:46 +0000)]
MFC v1.918:
> revision 1.918
> date: 2006/11/16 23:09:35; author: kensmith; state: Exp; lines: +13 -2
> Move the documentation to its own separate disc to make room for more
> packages on disc2. This will also let users decide if they want to
> have a CD of the docs at all - unless they're disconnected from the
> net they will probably find the Web site more useful.
>
> Reviewed by: ru
jhb [Mon, 20 Nov 2006 22:48:19 +0000 (22:48 +0000)]
MFC: Fix various issues such as wrong decoding for half of the 0x0f
prefixed instructions, 64-bit immediates in mov, %rip relative addressing,
and 32-bit addresses.
maxim [Mon, 20 Nov 2006 15:13:09 +0000 (15:13 +0000)]
MFC revs. 1.149 - 1.151: extend ipfw(4) message 'drop session, too many
entries' by src:port and dst:port pairs. Use IS_IP6_FLOW_ID() instead
of args->f_id.addr_type == 6.
ru [Sun, 19 Nov 2006 12:30:31 +0000 (12:30 +0000)]
MFC:
Remove the -C option as it does more harm than good. To be fully
compatible, it would have to (at least):
- support the "compat-compat" -T option,
- *not* support the -l, -O, and -v options,
- default to soft updates being disabled.
Worse, the compatibility mode made it impossible to mount_mfs(8)
a file system from fstab(5) with soft updates disabled (-S). [1]
Now, the only difference when called as "mount_mfs" or "mfs" (as
opposed to "mdmfs") is that the file mode of the mount point is
set by default to 01777. All options available to mdmfs(8) are
also available to mount_mfs(8); the -C option is still recognized
but ignored for backward compatibility.
bz [Sun, 19 Nov 2006 10:07:08 +0000 (10:07 +0000)]
Fix PMTU discovery in IPsec case by using an MTU hint in ICMP unreachable
fragmentation needed other then 0 when we cannot get a security policy.
This changes the code path to match what we have had in HEAD since
rev. 1.312.
PR: kern/91412
Submitted by: Tom Judge <tom tomjudge.com>