Andrew Morton [Thu, 20 Mar 2003 13:48:33 +0000 (05:48 -0800)]
[PATCH] Fix floppy oops on forced unload
From: Angus Sawyer <angus.sawyer@dsl.pipex.com>
Prevent OOPS on removing floppy driver with "rmmod -f floppy".
floppy.c would attempt to unregister resources for nonexistent device.
Patch stops the driver attempting to register and unregister the nonexistent
device by removing the drive from the allowed drives mask (defaults to
present).
Andrew Morton [Thu, 20 Mar 2003 13:48:10 +0000 (05:48 -0800)]
[PATCH] raw driver: rewrite i_mapping only on final close
The recent fix to the raw driver wasn't quite right: it rewrites the
character-special inode's i_mapping to point back to itself on each close.
So any other currently-open handles against /dev/raw/rawN get a nasty
surprise.
Change it to only rewrite i_mapping on the final close.
Also, change it so that it only redirects its i_mapping on the initial open.
This is not necessary, but is neater.
Andrew Morton [Thu, 20 Mar 2003 13:48:03 +0000 (05:48 -0800)]
[PATCH] Fail setup_irq for unconfigured IRQs
From: Zwane Mwaikambo <zwane@holomorphy.com>
This patch makes us bail out in case we may have an interrupt which couldn't
be associated with an interrupt controller. Without this we allow
unconfigured interrupts to be assigned and then later on we get "unexpected
IRQ trap at vector xx" during the ack phase.
scenario: This can occur if we fail irq setup during setup_IO_APIC_irqs for
some reason or other and then miss getting assigned a vector. Later on we
then get assigned no_irq_type as our handler.
Andrew Morton [Thu, 20 Mar 2003 13:47:34 +0000 (05:47 -0800)]
[PATCH] fix nanosleep() granularity bumps
From: Tim Schmielau <tim@physik3.uni-rostock.de>
Fixes the problem wherein nanosleep() is sleeping for the wrong duration.
When starting out with timer_jiffies=0, the timer cascade is (unneccessarily)
triggered on the first timer interrupt, incrementing all the higher indices.
When starting with any other initial jiffies value, we miss that and end up
with all higher indices being off by one.
Andrew Morton [Thu, 20 Mar 2003 13:47:26 +0000 (05:47 -0800)]
[PATCH] NMI watchdog fix
From: William Lee Irwin III <wli@holomorphy.com>
The NMI watchdog has two different "modes": NMI_IO_APIC, which delivers NMI's
through the IO-APIC, and NMI_LOCAL_APIC, which uses the local APIC vector
table (LVT) to deliver the periodic NMI's.
Only NMI_IO_APIC requires being able to set up the PIT so it can deliver
NMI's through the IO-APIC, and so NMI_LOCAL_APIC has no dependency on the
timer being set up through the IO-APIC and is unjustifiably disabled by
check_timer() when the PIT cannot deliver interrupts through the IO-APIC.
This is important because one of the most important uses of NMI_LOCAL_APIC is
to get the NMI watchdog going when NMI_IO_APIC doesn't work.
So what this patch does to repair the situation is instead of checking to see
if the NMI watchdog is enabled at all, it instead checks whether the NMI
watchdog is being used in NMI_IO_APIC mode when a failure to set up the NMI
timer interrupt through the IO-APIC occurs.
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.
Alan Stern [Thu, 20 Mar 2003 06:00:11 +0000 (22:00 -0800)]
[PATCH] USB: Update for usb-skeleton
My update for usb-skeleton seems to have gotten lost in the shuffle, so
here it is again -- all wrapped up in one nice little patch. It's been
tested by three different people and passed with flying colors. Please
apply.
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.
Oleg Drokin [Wed, 19 Mar 2003 07:41:23 +0000 (23:41 -0800)]
[PATCH] USB: Memleak in drivers/usb/hub.c::usb_reset_device
Hello!
On Fri, Mar 14, 2003 at 11:37:19AM -0800, Greg KH wrote:
> > There seems to be a memleak in drivers/usb/hub.c::usb_reset_device()
> > on error exit path. See the patch.
> > Found with help of smatch + enhanced unfree script.
> And yes, as David said, there is another kind of error in this area for
> 2.5. Patches to clean that up would be appreciated.