Andrew Morton [Thu, 20 Mar 2003 13:47:19 +0000 (05:47 -0800)]
[PATCH] sys_nanosleep() fix
The current nanosleep implementation has a signedness problem which can cause
it to sleep for 0x7ffffffe jiffies if a clock interrupt happens at the wrong
time.
The patch fixes that up, and also fixes an wrapping-unsafe 64-bit time
comparison. Also uninline tstojiffie(), which has three call sites.
Linus Torvalds [Thu, 20 Mar 2003 13:43:59 +0000 (05:43 -0800)]
Fix a rather theoretical race if an NMI happens when a debug fault
happens exactly on the sysenter entry path before the kernel stacks
have been switched to the proper ones.
Jeb J. Cramer [Thu, 20 Mar 2003 18:46:10 +0000 (13:46 -0500)]
[E1000] NAPI re-insertion w/ changes
* Previous patch wiped NAPI support, adding it back here. But,
with a twist: this one doesn't disable/enable interrupts each
time we enter/leave polling. (It's EXPERIMENTAL).
Osamu Tomita [Thu, 20 Mar 2003 18:08:10 +0000 (13:08 -0500)]
[PATCH] Support PC-9800 subarchitecture (9/14) NIC
This is the patch to support NEC PC-9800 subarchitecture
against 2.5.65-ac1. (9/14)
C-bus(PC98's legacy bus like ISA) network cards support.
Change IO port and IRQ assign.
Add NE2000 compatible driver for PC-9800.
PCI netwwork card works fine without patch.
Scott Feldman [Thu, 20 Mar 2003 17:09:13 +0000 (12:09 -0500)]
[E100] interrupt handler free fix
On Thu, 20 Mar 2003, Scott Feldman wrote:
* Bug fix on e100_close when repeating hot remove/hot add
from team. Basically need to disable interurpts and
unregister handler before shutting h/w down.
* Need to mask only the relevant bits in the interrupt
status register
Scott Feldman [Thu, 20 Mar 2003 17:07:58 +0000 (12:07 -0500)]
[E100] Banish strong branding marketing strings
On Thu, 20 Mar 2003, Scott Feldman wrote:
* Get rid of all of the strong marketing brand strings
and replace with simple pci_device_id table. pci.ids
should be the master list for device ID/strings.
Alexey Kuznetsov [Wed, 19 Mar 2003 11:54:09 +0000 (03:54 -0800)]
[IPSEC]: fragmentation & tcp mss calculation.
1. Add local_df field to struct sk_buff to mark packets which
are to be fragmented locally despite of their IPv6ness of IP DF flag
2. Add ext2_header_len to tcp_opt to keep memory of part of header length
depending on route
3. Add trailer_len to struct dst_entry and xfrm_state to know how
much of space should be reserved at tail of frame for subsequent
transformations.
4. [BUG] icv_trun_len must be used while mss claculation, not
icv_full_length.
Alexey Kuznetsov [Wed, 19 Mar 2003 11:43:44 +0000 (03:43 -0800)]
[NET]: miscellaneous fixes.
1. Fix illegal dereference of potentially freed memory in xfrm_policy.c
2. Complete wildcard flow addresses to real ones in xfrm_lookup().
3. Respect optional flag when chacking for input policy.
4. Delete orphaned comments in ip.h.
5. Fix mistakedly freed route in tcp connect.
Alexey Kuznetsov [Wed, 19 Mar 2003 11:34:55 +0000 (03:34 -0800)]
[NET]: hard_header reservation.
1. Fix bad reservation in xfrm_state_check_space()
2. Macroize formula for reservation, use the macro over all the places
in IP.
Andrew Morton [Tue, 18 Mar 2003 05:20:29 +0000 (21:20 -0800)]
[PATCH] Fix nfsd_symlink() failure path
Patch from Andreas Gruenbacher <agruen@suse.de>
In both 2.5 and 2.4, the fs/nfsd/vfs.c:nfsd_symlink() function calls down to
notify_change(). If notify_change fails for some reason, the error code is
not converted to an nfs no-the-wire error code as is should. The attached
patches fix that (one for 2.4, the other for 2.5).
Andrew Morton [Tue, 18 Mar 2003 05:20:20 +0000 (21:20 -0800)]
[PATCH] Tighten CONFIG_NUMA preconditions
Patch from Martin J. Bligh and Dave Hansen
People with ordinary PCs are accidentally turning on NUMA support, and people
with NUMA machines are finding the NUMA option mysteriously disappearing.
This patch sets the defaults to sane things for everyone, and only allows you
to turn on NUMA with both SMP and 64Gb support on (it's useful for the
distros on non-Summit boxes, but not on their UP kernels ;-)).
I've also moved it below the highmem options, as it logically depends on
them, so this makes more sense. For those searching for NUMA support on
*real* NUMA machine, Dave has provided some guiding comments to show them
what they messed up (it's totally non-obvious). Hopefully this will stop
people's recent unfortunate foot-wounds (I think UP machines were defaulting
to NUMA on ... oops).
Andrew Morton [Tue, 18 Mar 2003 05:19:40 +0000 (21:19 -0800)]
[PATCH] io-apic.c: DO_ACTION cleanup
Patch from "Martin J. Bligh" <mbligh@aracnet.com>
This removes the DO_ACTION stuff. The downside is that we add some boring
and repetive code. The upside is that it's simple, and mere mortals can read
it without screwing their brains into a small piece of silly putty and
bouncing it off the wall. I think that's more important than pure source
code size.
Andrew Morton [Tue, 18 Mar 2003 05:15:03 +0000 (21:15 -0800)]
[PATCH] file_list_lock contention fixes
Patch from Manfred Spraul <manfred@colorfullife.com>
Fixes the lock contention over file_list_lock by simply removing the unneeded
anon_list. So filp allocation does not need to take a global lock any more.
The use of a spinlock to protect files_stat.nr_files is a bit awkward, but
the alternative is a custom sysctl handler, and isn't much more efficient
anyway.
Andrew Morton [Tue, 18 Mar 2003 05:13:53 +0000 (21:13 -0800)]
[PATCH] timer re-addition lockup fix
This is a forward-port of Andrea's fix in 2.4.
If a timer handler re-adds a timer to go off right now, __run_timers() will
never terminate. (I wrote a test. It happens.)
Fix that up by teaching internal_add_timer() to detect when it is being
called from within the context of __run_timers() and to park newly-added
timers onto a temp list instead. These timers are then added for real by
__run_timers(), after it has finished processing all pending timers.
Andrew Morton [Tue, 18 Mar 2003 05:13:21 +0000 (21:13 -0800)]
[PATCH] Pass the load address into ELF_PLAT_INIT()
Patch from Anton Blanchard <anton@samba.org>
With ppc64 64bit dynamic executables we have to relocate the contents of the
function descriptor. Passing in the load address to ELF_PLAT_INIT allows us
to do this.
The patch allows ppc64 to run 64-bit executables and is a no-op for other
architectures.
Andrew Morton [Tue, 18 Mar 2003 05:13:12 +0000 (21:13 -0800)]
[PATCH] Fix noirqbalance
Patch from Zwane Mwaikambo <zwane@linuxpower.ca>
This patch fixes what seems to have been a longstanding bug. Ever since we
moved cpu bringup later into the boot process, we end up programming the
ioapics before we have any of our possible cpus in the cpu_online_map.
Therefore leading to the following current situation;
For walmart-smp, bigsmp and summit we set the logical destination for cpu
to TARGET_CPUS which can depend on the cpu_online_map, so what you would
normally see with noirqbalance would be all interrupts handled on cpu0
since at that stage no other cpu apart from the BSP is online.
You can check for this by looking at the ioredtbls at boottime for a two
way system;
This patch will simply reprogram all the ioredtbls to handle the other
online cpus.
Patch tested on my 2way P2-400 and a 16way NUMAQ both with noirqbalance.
It will not affect the irqbalance case because we are simply setting
TARGET_CPUS which is done anyway.
Matthew Wilcox [Tue, 18 Mar 2003 04:49:12 +0000 (20:49 -0800)]
[PATCH] PARISC update
PA-RISC patches for 2.5.65:
- Only remove palo.conf on a `make mrproper'
- Add a \ continuation to kernel/Makefile
- Reindent cache.c
- Always call schedule_tail
- Fix some typos in the hardware database
- Signal handling changes
- RAID, Device Mapper & BLKSZGET ioctl32 translations
- Clean up pci host bridge handling a bit.
- Make IDE link again
- Fix up compat changes
- Improve stack dumping code