Nick Piggin [Wed, 18 Jan 2006 22:05:16 +0000 (14:05 -0800)]
[CASSINI]: dont touch page_count
Remove page refcount manipulations from cassini driver by using
another field in struct page. Needed for lockless pagecache.
Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Andrew Morton [Wed, 18 Jan 2006 05:58:01 +0000 (21:58 -0800)]
[IPV4]: RT_CACHE_STAT_INC() warning fix
BUG: using smp_processor_id() in preemptible [
00000001] code: rpc.statd/2408
And it _is_ a bug, but I guess we don't care enough to add preempt_disable().
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Linus Torvalds [Wed, 18 Jan 2006 03:48:07 +0000 (19:48 -0800)]
Merge git://oss.sgi.com:8090/oss/git/xfs-2.6
Linus Torvalds [Wed, 18 Jan 2006 03:47:31 +0000 (19:47 -0800)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/libata-dev
Linus Torvalds [Wed, 18 Jan 2006 03:46:46 +0000 (19:46 -0800)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/netdev-2.6
David Chinner [Wed, 18 Jan 2006 02:38:12 +0000 (13:38 +1100)]
[XFS] Fix a race in xfs_submit_ioend() where we can be completing I/O for
a page while we are still submitting other buffers on the same page for
I/O.
SGI-PV: 948197
SGI-Modid: xfs-linux-melb:xfs-kern:25004a
Signed-off-by: David Chinner <dgc@sgi.com>
Signed-off-by: Nathan Scott <nathans@sgi.com>
Linus Torvalds [Wed, 18 Jan 2006 01:32:22 +0000 (17:32 -0800)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Wed, 18 Jan 2006 01:19:53 +0000 (17:19 -0800)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6
Bryan O'Sullivan [Wed, 18 Jan 2006 01:00:05 +0000 (17:00 -0800)]
[PATCH] Fix sparse parse error in lppaca.h
sparse can't parse a struct definition in include/asm-powerpc/lppaca.h,
even though gcc can accept it. The form looks like this:
struct __attribute__((whatever)) foo { };
An equivalent that both gcc and sparse can handle is
struct foo { } __attribute__((whatever));
This is the only definition of this type in the tree, and fixing it is
easier than fixing sparse.
Signed-off-by: Bryan O'Sullivan <bos@serpentine.com>
[ Side note: fixing sparse wouldn't be hard, but the "attribute at the
end" version is the canonical one, and the one that makes sense. So
let's just fix the kernel instead. Luc Van Oostenryck already sent
out a sparse patch to the sparse mailing list in case anybody cares.
-- Linus ]
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Stephen Hemminger [Fri, 6 Jan 2006 00:26:05 +0000 (16:26 -0800)]
[PATCH] skge: fix dma mask setup.
There are a couple of problems in the DMA setup code for skge.
* In the 64 bit case, it doesn't set the consistent mask.
* In the 32 bit case, the error check is backwards!
It likely will only be visible as a bug on 64 bit platforms.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Alan Cox [Tue, 17 Jan 2006 20:53:50 +0000 (20:53 +0000)]
[PATCH] libata: Code for the IRQ mask flag
Signed-off-by: Alan Cox <alan@redhat.com>
Somewhat cleaner in the resync as someone cleaned up the pio xfer users
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Alan Cox [Tue, 17 Jan 2006 20:51:55 +0000 (20:51 +0000)]
[PATCH] libata: Fix sector lock to apply to both drives not drive 0 twice
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Alan Cox [Tue, 17 Jan 2006 20:50:31 +0000 (20:50 +0000)]
[PATCH] libata: Fix heuristic typos add LBA48PIO flag and support code, add IRQ flag for next diff
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jason Gaston [Tue, 17 Jan 2006 20:28:48 +0000 (12:28 -0800)]
[PATCH] Intel ICH8 SATA: add PCI device IDs
Signed-off-by: Jason Gaston <Jason.d.gaston@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Alan Cox [Tue, 17 Jan 2006 17:53:56 +0000 (17:53 +0000)]
[PATCH] Fix warning with b44.c on 64bit boxes
sizeof() return is not an int, so use max_t to get the types right.
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Stephen Hemminger [Tue, 17 Jan 2006 21:43:21 +0000 (13:43 -0800)]
[PATCH] sky2: 0.13 version
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Stephen Hemminger [Tue, 17 Jan 2006 21:43:20 +0000 (13:43 -0800)]
[PATCH] sky2: more conservative transmit locking
Be more careful about transmit locking, this solves a possible race
between tx_complete and transmit, that would cause a tx timeout.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Stephen Hemminger [Tue, 17 Jan 2006 21:43:19 +0000 (13:43 -0800)]
[PATCH] sky2: don't inline so much
Don't need to inline quite so many routines, let the compiler
decide
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Stephen Hemminger [Tue, 17 Jan 2006 21:43:18 +0000 (13:43 -0800)]
[PATCH] sky2: use kzalloc
Can use kzalloc here.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Stephen Hemminger [Tue, 17 Jan 2006 21:43:17 +0000 (13:43 -0800)]
[PATCH] sky2: ratelimit error messages
Make sure and rate limit all the error messages that might occur. If a problem
occurs then a few messages are enough.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Stephen Hemminger [Tue, 17 Jan 2006 21:43:16 +0000 (13:43 -0800)]
[PATCH] sky2: optimize for 32 bit dma
Small optimization, if dma addresses are 32 bits, then high
bits are always zero.
Signed-off-by: Stephen Hemminger <shemminger@osdl.or>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Stephen Hemminger [Tue, 17 Jan 2006 21:43:15 +0000 (13:43 -0800)]
[PATCH] sky2: don't bother clearing status ring elements
Don't need to zero out the status ring entries after processing.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Stephen Hemminger [Tue, 17 Jan 2006 21:43:14 +0000 (13:43 -0800)]
[PATCH] sky2: write barrier's
Be more careful about memory barriers. The only place we really
need them is before and after updating the chip's ring interface.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Stephen Hemminger [Tue, 17 Jan 2006 21:43:13 +0000 (13:43 -0800)]
[PATCH] sky2: fix ram buffer for Yukon FE rev 2
Fix problems with Yukon FE rev 2 chipset. Don't cut and paste bugs in from
sk98lin driver. Change how the ram buffer is divided up, and make the math
clearer. Also, set the thresholds where rx takes precedence. The threshold
values are just guesses at this point, it might be worth tuning them later.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Stephen Hemminger [Tue, 17 Jan 2006 21:43:12 +0000 (13:43 -0800)]
[PATCH] sky2: version 0.12
Version update.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Stephen Hemminger [Tue, 17 Jan 2006 21:43:11 +0000 (13:43 -0800)]
[PATCH] sky2: call pci_set_consistent_dma_mask
Need to call pci_set_consistent_dma_mask in the case of 64 bit
DMA.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Stephen Hemminger [Tue, 17 Jan 2006 21:43:10 +0000 (13:43 -0800)]
[PATCH] sky2: receive buffer alignment
Need to make sure that sky2 receive buffers are 64 bit
aligned. Also, don't need to start off with GFP_ATOMIC
on initial setup.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jesse Brandeburg [Tue, 17 Jan 2006 23:01:10 +0000 (15:01 -0800)]
[PATCH] e100: e100 whitespace fixes
e100: e100 whitespace fixes
These are whitespace only fixes.
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jesse Brandeburg [Tue, 17 Jan 2006 23:01:08 +0000 (15:01 -0800)]
[PATCH] e100: Handle the return values from pci_* functions
e100: Handle the return values from pci_* functions
This is to resolve warnings during compile time.
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jesse Brandeburg [Tue, 17 Jan 2006 23:01:06 +0000 (15:01 -0800)]
[PATCH] e100: Fix TX hang and RMCP Ping issue (due to a microcode loading issue)
e100: Fix TX hang and RMCP Ping issue (due to a microcode loading issue)
Set the end of list bit to cause the hardware's transmit state machine to
work correctly and not prevent management (BMC) traffic.
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
David S. Miller [Tue, 17 Jan 2006 23:55:58 +0000 (15:55 -0800)]
[SOUND]: sparc/cs4231: Fix some typos which wrecked the build.
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Tue, 17 Jan 2006 23:53:11 +0000 (15:53 -0800)]
[SPARC]: Fix sbusfb build.
sbusfb_compat_ioctl() needs to return int, not long, as that
is what the fb_ops->fb_compat_ioctl method prototype wants.
Need to git rid of the "struct file *file" first argument to
fbiogetputcmap() and fbiogscursor() to match calls done in
sbusfb_compat_ioctl().
Signed-off-by: David S. Miller <davem@davemloft.net>
Eric Sesterhenn [Tue, 17 Jan 2006 23:36:05 +0000 (15:36 -0800)]
[SPARC]: change if() BUG(); to BUG_ON in iommu.c
this patch changes if() BUG(); constructs
in iommu.c to BUG_ON(); so it gets save
to define BUG() and BUG_ON() to nullstatements.
Signed-off-by: Eric Sesterhenn <snakebyte@gmx.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
Richard Mortimer [Tue, 17 Jan 2006 23:21:01 +0000 (15:21 -0800)]
[SPARC64]: Eliminate race condition reading Hummingbird STICK register
Ensure a consistent value is read from the STICK register by ensuring
that both high and low are read without high changing due to a roll
over of the low register.
Various Debian/SPARC users (myself include) have noticed problems with
Hummingbird based systems. The symptoms are that the system time is
seen to jump forward 3 days, 6 hours, 11 minutes give or take a few
seconds. In many cases the system then hangs some time afterwards.
I've spotted a race condition in the code to read the STICK register.
I could not work out why 3d, 6h, 11m is important but guess that it is
due to the 2^32 jump of STICK (forwards on one read and then the next
read will seem to be backwards) during a timer interrupt. I'm guessing
that a change of -2^32 will get converted to a large unsigned
increment after the arithmetic manipulation between STICK,
nanoseconds, jiffies etc.
I did a test where I modified __hbird_read_stick to artificially
inject rollover faults forcefully every few seconds. With this I saw
the clock jump over 6 times in 12 hours compared to once every month
or so.
Signed-off-by: Richard Mortimer <richm@oldelvet.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
Kris Katterjohn [Tue, 17 Jan 2006 23:15:38 +0000 (15:15 -0800)]
[NET]: Use is_zero_ether_addr() in net/core/netpoll.c
This replaces a memcmp() with is_zero_ether_addr().
Signed-off-by: Kris Katterjohn <kjak@users.sourceforge.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Andrew Morton [Tue, 17 Jan 2006 23:14:49 +0000 (15:14 -0800)]
[CASSINI]: Fix printk warning.
drivers/net/cassini.c:1930: warning: long unsigned int format, different type arg (arg 4)
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Kris Katterjohn [Tue, 17 Jan 2006 21:04:57 +0000 (13:04 -0800)]
[PKTGEN]: Replacing with (compare|is_zero)_ether_addr() and ETH_ALEN
This replaces some tests with is_zero_ether_addr(), memcmp(one, two,
6) with compare_ether_addr(one, two), and 6 with ETH_ALEN where
appropriate.
Signed-off-by: Kris Katterjohn <kjak@users.sourceforge.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Kris Katterjohn [Tue, 17 Jan 2006 21:03:54 +0000 (13:03 -0800)]
[NET]: "signed long" -> "long"
Signed-off-by: Kris Katterjohn <kjak@users.sourceforge.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Patrick McHardy [Tue, 17 Jan 2006 21:01:31 +0000 (13:01 -0800)]
[EBTABLES]: Handle SCTP/DCCP in ebt_{ip,log}
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Patrick McHardy [Tue, 17 Jan 2006 21:01:06 +0000 (13:01 -0800)]
[PKT_SCHED]: Handle SCTP/DCCP in sfq_hash
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Alan Cox [Mon, 9 Jan 2006 17:18:14 +0000 (17:18 +0000)]
[PATCH] libata: add a function to decide if we need iordy
This ought to be simple but for PIO2 we have to poke around the drive
data to get it 100% correct.
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Alan Cox [Mon, 9 Jan 2006 17:14:40 +0000 (17:14 +0000)]
[PATCH] libata: Pre UDMA EIDE PIO mode selection
I misread the spec when doing the original. I've tested the corrected
version with pre UDMA drives and it now picks the right modes. This is a
specific bug fix rather than an update or new feature item.
Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Yusuf Iskenderoglu [Tue, 17 Jan 2006 13:06:21 +0000 (08:06 -0500)]
[libata] sata_promise: add pci id
Javier Achirica [Tue, 17 Jan 2006 13:01:01 +0000 (08:01 -0500)]
airo: Off-by-one channel fix
Oliver Weihe [Tue, 17 Jan 2006 12:58:42 +0000 (07:58 -0500)]
[libata] sata_svw: add pci id
Jason Gaston [Mon, 9 Jan 2006 19:09:13 +0000 (11:09 -0800)]
[PATCH] ahci: AHCI mode SATA patch for Intel ICH8
This patch adds the Intel ICH8 DID's to the ahci.c file for AHCI mode
SATA support.
Signed-off-by: Jason Gaston <Jason.d.gaston@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:51:37 +0000 (16:51 -0800)]
[PATCH] e1000: Removed unused variables and initialized variables
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:51:34 +0000 (16:51 -0800)]
[PATCH] e1000: Cleaned up code and removed hard coded numbers
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:51:30 +0000 (16:51 -0800)]
[PATCH] e1000: Added copy break code
Improves small packet performance with large amounts of reassembly being done in the stack.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:51:28 +0000 (16:51 -0800)]
[PATCH] e1000: Added variable to handle return values for pci_enable_* functions
This was to fix compilation warnings. Also added log messages when pci_enable_* functions return with an error.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:51:25 +0000 (16:51 -0800)]
[PATCH] e1000: Added PCIe bus information
This is two patches, the first is adding additional bus information for the 8257{1|2|3} controllers. The second patch was orginally a community patch to print bus type/speed/width, and enhanced by us.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:51:23 +0000 (16:51 -0800)]
[PATCH] e1000: Added firmware version reporting for 8257{1|2|3} controllers
The EEPROM image version is reported as a firmware version for these controllers.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:51:21 +0000 (16:51 -0800)]
[PATCH] e1000: Added hardware support for PCI express, 82546GB, and 82571 Fiber
Added 82571 fiber to WOL fix for dual port adapters.
Added support for 82546GB (Quad Copper).
Added PCIe typedef for x2, igp cable length 115, and extended TX CTRL registers.
Added parity error detection and PCIe CTRL registers.
Added EEPROM config registers.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:51:19 +0000 (16:51 -0800)]
[PATCH] e1000: Added cleaned_count to RX buffer allocation
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:51:16 +0000 (16:51 -0800)]
[PATCH] e1000: Added interrupt auto mask support
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:51:14 +0000 (16:51 -0800)]
[PATCH] e1000: Fix Netpoll issue
Fixed an issue netpoll would error out during communication, generating the following error:
--netdump[14973]: Got toomany timeouts in handshaking, ...
Even after a kernel panic, netpoll requires two way communication to successfully transfer the crash log to the remote server.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:51:12 +0000 (16:51 -0800)]
[PATCH] e1000: Fixed frame size logic
Simplified the logic used to assign the frame_size.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:51:10 +0000 (16:51 -0800)]
[PATCH] e1000: Fix VLAN support
Fixed VLAN support by switching control over to the firmware.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:51:07 +0000 (16:51 -0800)]
[PATCH] e1000: Fix __pskb_pull_tail
Fixed by moving code to correct location (for 82572 and 82571 controllers).
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:51:05 +0000 (16:51 -0800)]
[PATCH] e1000: Fix collision distance
Fixed the collision distance for 82543 controllers and newer.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:51:03 +0000 (16:51 -0800)]
[PATCH] e1000: Fix bit 22 (TXDCTL) for 82571 & 82572 controllers
Removed duplicate code, TXDCTL and TXDCTL_COUNT_DESC are the same bit and there is no need to set it twice.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:51:01 +0000 (16:51 -0800)]
[PATCH] e1000: Fix desc. clean up
These were two separate community submitted patches.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:57 +0000 (16:50 -0800)]
[PATCH] e1000: Fix TX timeout logic
Fixed the TX timeout logic to use "end of packet" rather than "next to clean". Updated message log.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:55 +0000 (16:50 -0800)]
[PATCH] e1000: Fix Desc. Rings and Jumbo Frames
This patch contains two fixes. The first fix is to the tx and rx descriptor rings clean up process. The second fix is to jumbo frames, which cleans up the code logic and removes most of the fifo related limitations on jumbo frames. This is because the driver code now supports splitting a packet across multiple descriptors.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:53 +0000 (16:50 -0800)]
[PATCH] e1000: Fix TX queue length based on link speed
10/100 speeds seem to have some problems reporting false tx timeouts especially at half duplex. Fixed by using a timeout factor to attempt to mitigate the false timeouts.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:51 +0000 (16:50 -0800)]
[PATCH] e1000: Fix flow control water marks
Fixed flow control water marks based on PBA size.
Store flow control state in original_fc in addition to fc.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:48 +0000 (16:50 -0800)]
[PATCH] e1000: Fix EEPROM read logic
Fixed read_eeprom logic to test use_eerd instead of testing for 82573 controllers.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:46 +0000 (16:50 -0800)]
[PATCH] e1000: Fix PHY reset when blocked
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:44 +0000 (16:50 -0800)]
[PATCH] e1000: Fix loopback logic
Fixed the loopback logic to work for the PCI express adapters.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:41 +0000 (16:50 -0800)]
[PATCH] e1000: Fix mulitple queues
Fixed stats when using multiple queues.
When multiple queues are enabled, log a message in syslog.
Fixed memory allocation for multiple queues.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:39 +0000 (16:50 -0800)]
[PATCH] e1000: Fix adapter structure and prepare for multique fix
Fix adapter structure to handle multiple queues and prepping the driver for full multiple queue support, some changes are ifdef'd our unless you define CONFIG_E1000_MQ.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:37 +0000 (16:50 -0800)]
[PATCH] e1000: Fix LED functionality for 82573
Fixed adapter identification issue.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:35 +0000 (16:50 -0800)]
[PATCH] Fix e1000 stats
Updated the e1000_stats structure and removed mpx for rx_errors and rx_dropped.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:32 +0000 (16:50 -0800)]
[PATCH] e1000: Fix PHY config for 82573 controller
Added a delay to allow PHY configuration to complete before accessing NVM.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:30 +0000 (16:50 -0800)]
[PATCH] e1000: Fix ASF/AMT for 8257{1|2|3} controllers
The 82573 controller required different logic than 82571|2 controllers. Corrected the reset logic for 8257{1|2|3} controllers.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:28 +0000 (16:50 -0800)]
[PATCH] e1000: Fix SoL/IDER link and loopback
Fix so that if a SoL/IDER session is active, do not allow operations which require a PHY reset and instead log a message.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:25 +0000 (16:50 -0800)]
[PATCH] e1000: General Fixes
These fixes update the TX and RX ring structures. Prepare driver for up-coming fixes.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:23 +0000 (16:50 -0800)]
[PATCH] e1000: Fix TSO
Fixed the TSO workaround for 82571/2 controllers.
Fixed TSO issue where a non-tso packet in a linear SKB which followed a TSO packet would get written back prematurely.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Kirsher [Fri, 13 Jan 2006 00:50:18 +0000 (16:50 -0800)]
[PATCH] e1000: Fix jumbo frame performance
Partition PBA for Jumbo frames based on MTU size.
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Signed-off-by: John Ronciak <john.ronciak@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Arnd Bergmann [Thu, 12 Jan 2006 22:16:45 +0000 (17:16 -0500)]
[PATCH] spidernet: fix missing include
This is now required to avoid
drivers/net/spider_net.c:844: error: 'IPPROTO_TCP' undeclared
Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Arnd Bergmann [Thu, 12 Jan 2006 22:16:44 +0000 (17:16 -0500)]
[PATCH] spidernet: performance optimizations
Performance optimizations, changes in these areas:
- RX and TX checksum offload
- correct maximum MTU
- don't use TX interrupts anymore, use a timer instead
- remove some superfluous barriers
- improve RX RAM full handling
From: Utz Bacher <utz.bacher@de.ibm.com>
Signed-off-by: Jens Osterkamp <jens.osterkamp@de.ibm.com>
Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Arnd Bergmann [Thu, 12 Jan 2006 22:16:43 +0000 (17:16 -0500)]
[PATCH] spidernet: fix HW structures for 64 bit dma_addr_t
The driver incorrectly used dma_addr_t to describe
HW structures and consequently broke when that type
was changed in 2.6.15-rc.
This changed spidernet to use u32 for 32 bit HW defined
structure elements.
From: Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
Signed-off-by: Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Arnd Bergmann [Thu, 12 Jan 2006 22:16:42 +0000 (17:16 -0500)]
[PATCH] spidernet: read firmware from the OF device tree
request_firmware() is sometimes problematic, especially
in initramfs, reading the firmware from Open Firmware
is much preferrable.
We still try to get the firmware from the file system
first, in order to support old SLOF releases and to allow
updates of the spidernet firmware without reflashing
the system.
From: Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
Signed-off-by: Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Arnd Bergmann [Thu, 12 Jan 2006 22:16:41 +0000 (17:16 -0500)]
[PATCH] spidernet: check if firmware was loaded correctly
Uploading the device firmware may fail if wrong input data
was provided by the user. This checks for the condition.
From: Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
Signed-off-by: Jens Osterkamp <Jens.Osterkamp@de.ibm.com>
Signed-off-by: Arnd Bergmann <arndb@de.ibm.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Dale Farnsworth [Tue, 17 Jan 2006 00:00:24 +0000 (17:00 -0700)]
[PATCH] mv643xx_eth: Remove needless mask of extended intr register
All interrupts controlled by the extended mask register are also
masked by a bit in the main mask register, so there is no need to
directly manipulate the extended mask register.
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
mv643xx_eth.c | 81 ++++++++++++++++++----------------------------------------
1 file changed, 26 insertions(+), 55 deletions(-)
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Dale Farnsworth [Mon, 16 Jan 2006 23:59:21 +0000 (16:59 -0700)]
[PATCH] mv643xx_eth: Merge open and stop helper functions
Move code from helper functions mv643xx_eth_real_open and mv643xx_eth_real_stop
as they are no longer needed.
Signed-off-by Dale Farnsworth <dale@farnsworth.org>
mv643xx_eth.c | 109 +++++++++++++++++++++++-----------------------------------
1 file changed, 45 insertions(+), 64 deletions(-)
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Dale Farnsworth [Mon, 16 Jan 2006 23:58:24 +0000 (16:58 -0700)]
[PATCH] mv643xx_eth: Fix transmit skb accounting
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
mv643xx_eth.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Wolfram Joost [Mon, 16 Jan 2006 23:57:41 +0000 (16:57 -0700)]
[PATCH] mv643xx_eth: Request HW checksum generation only for IPv4
This patch removes the NETIF_F_HW_CSUM flag to be able to use other protocols
than IPv4. Hardware checksums for IPv4 should continue to work because
NETIF_F_IP_CSUM is still set. The sanity-check has been enhanced to check
the used protocol and to not access skb->iph for non-ipv4-packets.
Signed-off-by: Wolfram Joost <pegasos@frokaschwei.de>
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
mv643xx_eth.c | 19 +++++++++++--------
1 file changed, 11 insertions(+), 8 deletions(-)
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Dale Farnsworth [Mon, 16 Jan 2006 23:56:30 +0000 (16:56 -0700)]
[PATCH] mv643xx_eth: Hold spinlocks only where needed
This driver has historically held a spin_lock during the entire open
and stop functions and while receiving multiple packets. This is
unecessarily long and holds locks during calls that may sleep.
This patch reduces the size of windows where locks are held.
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
mv643xx_eth.c | 172 ++++++++++++++++++++++++++++++----------------------------
1 file changed, 91 insertions(+), 81 deletions(-)
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Dale Farnsworth [Mon, 16 Jan 2006 23:53:15 +0000 (16:53 -0700)]
[PATCH] mv643xx_eth: iounmap the correct SRAM buffer
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
mv643xx_eth.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Paul Janzen [Mon, 16 Jan 2006 23:52:13 +0000 (16:52 -0700)]
[PATCH] mv643xx_eth: Fix handling of small, unaligned fragments
Fix handling of small, unaligned fragments.
It also solves a potential deadlock if skb_linearize() returns -ENOMEM.
Signed-off-by: Paul Janzen <pcj@linux.sez.to>
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
mv643xx_eth.c | 54 +++++++++++++++++++++++++++++++-----------------------
1 file changed, 31 insertions(+), 23 deletions(-)
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Dale Farnsworth [Mon, 16 Jan 2006 23:51:22 +0000 (16:51 -0700)]
[PATCH] mv643xx_eth: Receive buffers require 8 byte alignment
The Marvell mv643xx ethernet hardware requires that DMA buffers be
aligned to 8-byte boundaries. This patch satisfies this requirement.
Buffers allocated by dev_alloc_skb() only have 4-byte alignment when
slab debugging is enabled.
Also, document that the 2-byte offset to align the IP packets on
receive is a hardware feature and is not tied to NET_IP_ALIGN.
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
mv643xx_eth.c | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Dale Farnsworth [Mon, 16 Jan 2006 23:50:02 +0000 (16:50 -0700)]
[PATCH] mv643xx_eth: Add multicast support
This code is adapted from code in a ppc-specific version of the driver.
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
mv643xx_eth.c | 201 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 file changed, 197 insertions(+), 4 deletions(-)
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Paolo Galtieri [Mon, 16 Jan 2006 23:48:58 +0000 (16:48 -0700)]
[PATCH] mv643xx_eth: Fix a NULL pointer dereference
Fix a NULL pointer dereference.
Fill in the buf_ptr and byte_cnt fields of pkt_info in
eth_tx_return_desc().
Signed-off-by: Paolo Galtieri <pgaltieri@mvista.com>
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
mv643xx_eth.c | 51 +++++++++++++++++++++------------------------------
1 file changed, 21 insertions(+), 30 deletions(-)
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Paolo Galtieri [Mon, 16 Jan 2006 23:48:02 +0000 (16:48 -0700)]
[PATCH] mv643xx_eth: Fix dma_map/dma_unmap relations
If you do a dma_map_single you must do dma_unmap_single and if you do
a dma_map_page you must do a dma_unmap_page.
Signed-off-by: Paolo Galtieri <pgaltieri@mvista.com>
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
mv643xx_eth.c | 51 +++++++++++++++++++++------------------------------
1 file changed, 21 insertions(+), 30 deletions(-)
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Olaf Hering [Mon, 16 Jan 2006 23:47:00 +0000 (16:47 -0700)]
[PATCH] mv643xx_eth: 2.6.16 needs ip.h and in.h
Signed-off-by: Olaf Hering <olh@suse.de>
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
mv643xx_eth.c | 2 ++
1 file changed, 2 insertions(+)
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Dale Farnsworth [Mon, 16 Jan 2006 23:45:45 +0000 (16:45 -0700)]
[PATCH] mv643xx_eth: Add Dale Farnsworth as a maintainer
MAINTAINERS | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
Signed-off-by: Dale Farnsworth <dale@farnsworth.org>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
Jeff Garzik [Tue, 17 Jan 2006 12:22:26 +0000 (07:22 -0500)]
Merge branch 'upstream-jgarzik' of git://git.tuxdriver.com/git/wireless-2.6
Eric Dumazet [Tue, 17 Jan 2006 10:54:36 +0000 (02:54 -0800)]
[IPV4]: rt_cache_stat can be statically defined
Using __get_cpu_var(obj) is slightly faster than per_cpu_ptr(obj,
raw_smp_processor_id()).
1) Smaller code and memory use
For static and small objects, DEFINE_PER_CPU(type, object) is preferred over a
alloc_percpu() : Better and smaller code to access them, and no extra memory
(storing the pointer, and the percpu array of pointers)
x86_64 code before patch
mov
1237577(%rip),%rax #
ffffffff803e5990 <rt_cache_stat>
not %rax # part of per_cpu machinery
mov %gs:0x3c,%edx # get cpu number
movslq %edx,%rdx # extend 32 bits cpu number to 64 bits
mov (%rax,%rdx,8),%rax # get the pointer for this cpu
incl 0x38(%rax)
x86_64 code after patch
mov $per_cpu__rt_cache_stat,%rdx
mov %gs:0x48,%rax # get percpu data offset
incl 0x38(%rax,%rdx,1)
2) False sharing avoidance for SMP :
For a small NR_CPUS, the array of per cpu pointers allocated in alloc_percpu()
can be <= 32 bytes. This let slab code gives a part of a cache line. If the
other part of this 64 bytes (or 128 bytes) cache line is used by a mostly
written object, we can have false sharing and expensive per_cpu_ptr() operations.
Size of rt_cache_stat is 64 bytes, so this patch is not a danger of a too big
increase of bss (in UP mode) or static per_cpu data for SMP
(PERCPU_ENOUGH_ROOM is currently 32768 bytes)
Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
David S. Miller [Tue, 17 Jan 2006 10:54:21 +0000 (02:54 -0800)]
[NET]: Make second arg to skb_reserved() signed.
Some subsystems, such as PPP, can send negative values
here. It just happened to work correctly on 32-bit with
an unsigned value, but on 64-bit this explodes.
Figured out by Paul Mackerras based upon several PPP crash
reports.
Signed-off-by: David S. Miller <davem@davemloft.net>