linux-2.6
16 years agopkt_sched: Fix qdisc config when link is down.
David S. Miller [Fri, 8 Aug 2008 03:26:40 +0000 (20:26 -0700)] 
pkt_sched: Fix qdisc config when link is down.

Bug reported by Stephen Hemminger.

We need to fetch the root from ->qdisc_sleeping not ->qdisc.

Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agoMerge branch 'ath9k' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wirele...
David S. Miller [Fri, 8 Aug 2008 01:52:57 +0000 (18:52 -0700)] 
Merge branch 'ath9k' of git://git./linux/kernel/git/linville/wireless-2.6

16 years agoMerge branch 'tracehook' of git://git.kernel.org/pub/scm/linux/kernel/git/frob/linux...
Linus Torvalds [Fri, 8 Aug 2008 01:14:24 +0000 (18:14 -0700)] 
Merge branch 'tracehook' of git://git./linux/kernel/git/frob/linux-2.6-utrace

* 'tracehook' of git://git.kernel.org/pub/scm/linux/kernel/git/frob/linux-2.6-utrace:
  tracehook: fix CLONE_PTRACE

16 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland...
Linus Torvalds [Fri, 8 Aug 2008 01:14:07 +0000 (18:14 -0700)] 
Merge branch 'for-linus' of git://git./linux/kernel/git/roland/infiniband

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
  IB/mad: Test ib_create_send_mad() return with IS_ERR(), not == NULL
  IB/mlx4: Allow 4K messages for UD QPs
  mlx4_core: Add ethernet fields to CQE struct
  IB/ipath: Fix printk format warnings
  RDMA/cxgb3: Fix deadlock initializing iw_cxgb3 device
  RDMA/cxgb3: Fix up MW access rights
  RDMA/cxgb3: Fix QP capabilities
  RDMA/cma: Remove padding arrays by using struct sockaddr_storage
  IB/ipath: Use unsigned long for irq flags
  IPoIB/cm: Set correct SG list in ipoib_cm_init_rx_wr()

16 years agoMerge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block
Linus Torvalds [Fri, 8 Aug 2008 01:13:30 +0000 (18:13 -0700)] 
Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block

* 'for-linus' of git://git.kernel.dk/linux-2.6-block:
  xen-blkfront.c: make blkif_ioctl() static
  bio: make use of bvec_nr_vecs
  cciss: fix bug if scsi tape support is disabled
  cciss: add support for multi lun tape devices
  cciss: change the way we notify scsi midlayer of tape drives
  cciss: fix negative logical drive count in procfs
  cciss: remove redundant code
  cciss: make rebuild_lun_table behave better
  cciss: return -EFAULT if copy_from_user() fails

16 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6
Linus Torvalds [Fri, 8 Aug 2008 01:12:41 +0000 (18:12 -0700)] 
Merge branch 'for-linus' of git://git./linux/kernel/git/tiwai/sound-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
  ALSA: ASoC: fix SNDCTL_DSP_SYNC support in Freescale 8610 sound drivers

16 years agoFix up duplicate '__s3c2410wdt_stop()' function
Linus Torvalds [Fri, 8 Aug 2008 01:10:12 +0000 (18:10 -0700)] 
Fix up duplicate '__s3c2410wdt_stop()' function

Looks like somebody didn't get enough sleep.

Noticed-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu
Linus Torvalds [Fri, 8 Aug 2008 01:07:33 +0000 (18:07 -0700)] 
Merge branch 'for-linus' of git://git./linux/kernel/git/gerg/m68knommu

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu:
  Move all of include/asm-m68knommu to arch/m68knommu/include/asm.

16 years agopowerpc/iseries: remove the old viocons driver
Stephen Rothwell [Thu, 7 Aug 2008 04:08:27 +0000 (14:08 +1000)] 
powerpc/iseries: remove the old viocons driver

This driver was declared obsolete over 2 years ago, the alternative
console driver for legacy iSeries (hvc_iseries) was made the default
over 1 year ago and this driver has been build broken for over 3
months, so remove it.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
16 years agoMerge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab...
Linus Torvalds [Fri, 8 Aug 2008 01:06:19 +0000 (18:06 -0700)] 
Merge branch 'for_linus' of git://git./linux/kernel/git/mchehab/v4l-dvb

* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/v4l-dvb: (23 commits)
  V4L/DVB (8617): uvcvideo: don't use stack-based buffers for USB transfers.
  V4L/DVB (8616): uvcvideo: Add support for two Bison Electronics webcams
  V4L/DVB (8611): Add suspend/resume to pxa_camera driver
  V4L/DVB (8610): Add suspend/resume capabilities to soc_camera.
  V4L/DVB (8609): media: Clean up platform_driver_unregister() bogosity.
  V4L/DVB (8607): cxusb: fix OOPS and broken tuning regression on FusionHDTV Dual Digital 4
  V4L/DVB (8605): gspca: Fix of gspca_zc3xx oops - 2.6.27-rc1
  V4L/DVB (8604): gspca: Fix of "scheduling while atomic" crash.
  V4L/DVB (8602): gspca: Fix small bugs, simplify and cleanup ov519.
  V4L/DVB (8582): set mts_firmware for em2882 based Pinnacle Hybrid Pro
  V4L/DVB (8574): gspca: Bad bytesperlines of pixelformat in spca505/506/508 and vc023x.
  V4L/DVB (8573): gspca: Bad scan of frame in spca505/506/508.
  V4L/DVB (8572): gspca: Webcam 0c45:6143 in documentation.
  V4L/DVB (8571): gspca: Don't use CONFIG_VIDEO_ADV_DEBUG as a compile option.
  V4L/DVB (8569): gspca: Set back the old values of Sonix sn9c120 and cleanup source.
  V4L/DVB (8567): gspca: hflip and vflip controls added for ov519 - ov7670 plus init cleanup.
  V4L/DVB (8564): fix vino driver build error
  V4L/DVB (8563): fix drivers/media/video/arv.c compilation
  V4L/DVB (8562): DVB_DRX397XD: remove FW_LOADER select
  V4L/DVB (8558): media/video/Kconfig: fix a typo
  ...

16 years agoMerge branch 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6
Linus Torvalds [Fri, 8 Aug 2008 01:05:39 +0000 (18:05 -0700)] 
Merge branch 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6

* 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
  hwmon: (it87) Support for 16-bit fan reading in it8705 >= rev 0x03
  hwmon: (it87) Support for 16-bit fan reading in it8712 >= rev 0x07
  hwmon: (hwmon-vid) Add 6-bit vid codes for AMD NPT 0Fh cpus
  hwmon: (hwmon-vid) Trivial format multi-line comments per CodingStyle
  hwmon: ad7414 driver
  hwmon: (thmc50) Add support for critical temperature limits
  hwmon: (adm9240) Remove EXPERIMENTAL dependency
  hwmon: (w83627hf) Drop reset module parameter
  hwmon: (w83627hf) Add pwm_enable sysfs interface
  hwmon: (w83791d) Use fan divisor bits from vbat register
  hwmon: (f71882fg) Delete needless forward declarations
  hwmon: (dme1737) Add support for the SMSC SCH5027
  hwmon: (dme1737) Skip detection if forced
  hwmon: (dme1737) Cleanups

16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
Linus Torvalds [Fri, 8 Aug 2008 01:05:09 +0000 (18:05 -0700)] 
Merge git://git./linux/kernel/git/wim/linux-2.6-watchdog

* git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog: (70 commits)
  [WATCHDOG] more coding style clean-up's
  [WATCHDOG] sbc8360.c - move stop code into a function
  [WATCHDOG] Coding style - Indentation - part 2
  [WATCHDOG] Coding style - Indentation - part 1
  [WATCHDOG] mpc8xxx_wdt: add support for MPC8xx watchdogs
  [WATCHDOG] mpc8xxx_wdt: fix build
  [WATCHDOG] mpc8xxx_wdt: various renames, mostly s/mpc83xx/mpc8xxx/g
  [WATCHDOG] mpc83xx_wdt: rename to mpc8xxx_wdt
  [WATCHDOG] mpc83xx_wdt: add support for MPC86xx CPUs
  [WATCHDOG] mpc83xx_wdt: convert to the OF platform driver
  [WATCHDOG] pcwd: a couple of watchdogs escaped conversion
  [WATCHDOG] Clean-up includes
  [WATCHDOG] hpwdt.c - fix double includes
  [WATCHDOG 57/57] wdt501/pci: Clean up, coding style and switch to unlocked_ioctl
  [WATCHDOG 56/57] wdt977: clean up, coding style and switch to unlocked_ioctl
  [WATCHDOG 55/57] wdt285: switch to unlocked_ioctl and tidy up oddments of coding style
  [WATCHDOG 54/57] wdrtas: clean up, coding style, switch to unlocked_ioctl
  [WATCHDOG 53/57] wafer5823wdt: Clean up, coding style, switch to unlocked_ioctl
  [WATCHDOG 52/57] w83977f_wdt: clean up, coding style and switch to unlocked_ioctl
  [WATCHDOG 51/57] w83877f_wdt: clean up code, coding style, switch to unlocked_ioctl
  ...

16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes
Linus Torvalds [Fri, 8 Aug 2008 01:04:28 +0000 (18:04 -0700)] 
Merge git://git./linux/kernel/git/sam/kbuild-fixes

* git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes:
  kbuild: a better way to generate cscope database change
  Kconfig: Extend "menuconfig" for modules to simplify Kconfig file
  bugfix for scripts/patch-kernel in 2.6 sublevel stepping
  kbuild: fix O=.. build with arm

16 years agoPCI: Limit VPD length for Broadcom 5708S
Dean Hildebrand [Fri, 8 Aug 2008 00:31:45 +0000 (17:31 -0700)] 
PCI: Limit VPD length for Broadcom 5708S

BCM5706S wont work correctly unless VPD length truncated to 128

Signed-off-by: Dean Hildebrand <dhildeb@us.ibm.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agotracehook: fix CLONE_PTRACE
Roland McGrath [Thu, 7 Aug 2008 23:55:03 +0000 (16:55 -0700)] 
tracehook: fix CLONE_PTRACE

In the change in commit 09a05394fe2448a4139b014936330af23fa7ec83, I
overlooked two nits in the logic and this broke using CLONE_PTRACE
when PTRACE_O_TRACE* are not being used.

A parent that is itself traced at all but not using PTRACE_O_TRACE*,
using CLONE_PTRACE would have its new child fail to be traced.

A parent that is not itself traced at all that uses CLONE_PTRACE
(which should be a no-op in this case) would confuse the bookkeeping
and lead to a crash at exit time.

This restores the missing checks and fixes both failure modes.

Reported-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Roland McGrath <roland@redhat.com>
16 years agosparc: don't use asm/of_device.h
Stephen Rothwell [Thu, 7 Aug 2008 22:33:36 +0000 (15:33 -0700)] 
sparc: don't use asm/of_device.h

Use linux/of_device.h instead.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agoPCI PM: Export pci_pme_active to drivers
Rafael J. Wysocki [Thu, 7 Aug 2008 22:14:24 +0000 (00:14 +0200)] 
PCI PM: Export pci_pme_active to drivers

Export pci_pme_active() to drivers, so that they can clear the
PME_status bit and disable PME# for their devices without involving
ACPI.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years ago[ARM] Fix SMP booting with non-zero PHYS_OFFSET
Russell King [Thu, 7 Aug 2008 21:36:59 +0000 (22:36 +0100)] 
[ARM] Fix SMP booting with non-zero PHYS_OFFSET

The existing code tries to get the pmd for the temporary page table
by doing:

        pgd = pgd_alloc(&init_mm);
        pmd = pmd_offset(pgd, PHYS_OFFSET);

Since we have a two level page table, pmd_offset() is a no-op, so
this just has a casting effect from a pgd to a pmd - the address
argument is unused.  So this can't work.

Normally, we'd do:

pgd = pgd_offset(&init_mm, PHYS_OFFSET);
...
pmd = pmd_offset(pgd, PHYS_OFFSET);

to get the pmd you want.  However, pgd_offset() takes the mm_struct,
not the (unattached) pgd we just allocated.  So, instead use:

        pgd = pgd_alloc(&init_mm);
        pmd = pmd_offset(pgd + pgd_index(PHYS_OFFSET), PHYS_OFFSET);

Reported-by: Antti P Miettinen <ananaza@iki.fi>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
16 years agoMerge branches 'cma', 'cxgb3', 'ipath', 'ipoib', 'mad' and 'mlx4' into for-linus
Roland Dreier [Thu, 7 Aug 2008 21:12:03 +0000 (14:12 -0700)] 
Merge branches 'cma', 'cxgb3', 'ipath', 'ipoib', 'mad' and 'mlx4' into for-linus

16 years agoIB/mad: Test ib_create_send_mad() return with IS_ERR(), not == NULL
Julien Brunel [Thu, 7 Aug 2008 21:11:56 +0000 (14:11 -0700)] 
IB/mad: Test ib_create_send_mad() return with IS_ERR(), not == NULL

In case of error, the function ib_create_send_mad() returns an ERR
pointer, but never returns a NULL pointer.  So testing the return
value for error should be done with IS_ERR, not by comparing with
NULL.

A simplified version of the semantic patch that makes this change is
as follows:

(http://www.emn.fr/x-info/coccinelle/)

// <smpl>
@correct_null_test@
expression x,E;
statement S1, S2;
@@
x = ib_create_send_mad(...)
<... when != x = E
if (
(
- x@p2 != NULL
+ ! IS_ERR ( x )
|
- x@p2 == NULL
+ IS_ERR( x )
)
 )
S1
else S2
...>
? x = E;
// </smpl>

Signed-off-by: Julien Brunel <brunel@diku.dk>
Signed-off-by: Julia Lawall <julia@diku.dk>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
16 years agoIB/mlx4: Allow 4K messages for UD QPs
Alex Naslednikov [Thu, 7 Aug 2008 21:06:50 +0000 (14:06 -0700)] 
IB/mlx4: Allow 4K messages for UD QPs

Current code limits the max message size to 2K for UD QPs, while MTU
might be as big as 4K.  This patch sets the maximum message size to
4K, which is needed for UD to work correctly on fabrics with a 4K MTU.

Signed-off-by: Alex Naslednikov <xalex@mellanox.co.il>
Signed-off-by: Eli Cohen <eli@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
16 years ago[Bluetooth] Add full quirk implementation for btusb driver
Marcel Holtmann [Thu, 7 Aug 2008 20:26:56 +0000 (22:26 +0200)] 
[Bluetooth] Add full quirk implementation for btusb driver

This implements all the quirk handling from the hci_usb driver to the
new btusb driver.

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
16 years ago[Bluetooth] Removal of unnecessary ignore module parameter
Marcel Holtmann [Thu, 7 Aug 2008 20:26:55 +0000 (22:26 +0200)] 
[Bluetooth] Removal of unnecessary ignore module parameter

This removes the unnecessary ignore parameter, which is useless. There
are alternate methods of kicking a driver off an USB device.

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
16 years ago[Bluetooth] Add parameters to control BNEP header compression
Marcel Holtmann [Thu, 7 Aug 2008 20:26:54 +0000 (22:26 +0200)] 
[Bluetooth] Add parameters to control BNEP header compression

The Bluetooth qualification for PAN demands testing with BNEP header
compression disabled. This is actually pretty stupid and the Linux
implementation outsmarts the test system since it compresses whenever
possible. So to pass qualification two need parameters have been added
to control the compression of source and destination headers.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
16 years agoPCI: remove duplicate symbol from pci_ids.h
akpm@linux-foundation.org [Tue, 5 Aug 2008 21:07:53 +0000 (14:07 -0700)] 
PCI: remove duplicate symbol from pci_ids.h

pci.ids.h: remove a duplicated symbol

Cc: Doug Thompson <dougthompson@xmission.com>
Signed-off-by: Grant Coady <gcoady.lk@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: check the return value of device_create_bin_file() in pci_create_bus()
Simon Horman [Thu, 7 Aug 2008 04:56:34 +0000 (14:56 +1000)] 
PCI: check the return value of device_create_bin_file() in pci_create_bus()

Check the return value of device_create_bin_file in pci_create_bus and
unwind if necessary. Don't propagate error to caller, as failure to create
these files shouldn't prevent PCI from being initialised. Instead, just
log a warning.

Cc: Sven Wegener <sven.wegener@stealer.net>
Cc: Michael Ellerman <michael@ellerman.id.au>
Cc: Matthew Wilcox <matthew@wil.cx>
Signed-off-by: Simon Horman <horms@verge.net.au>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: fully restore MSI state at resume time
Jesse Barnes [Thu, 7 Aug 2008 15:52:37 +0000 (08:52 -0700)] 
PCI: fully restore MSI state at resume time

With the recent change to avoid masking MSIs using the MSI enable bit, devices
without an MSI mask bit will have their MSI capability always enabled when MSI
is in use, so we need to restore it regardless of the mask bit state.

Fixes kernel bz 11178.

Acked-by: Matthew Wilcox <willy@linux.intel.com>
Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoDMA: make dma-coherent.c documentation kdoc-friendly
Dmitry Baryshkov [Wed, 30 Jul 2008 10:46:50 +0000 (14:46 +0400)] 
DMA: make dma-coherent.c documentation kdoc-friendly

Spotted by Randy.

Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: make pci_register_driver() a macro
Andrew Morton [Wed, 30 Jul 2008 19:07:04 +0000 (12:07 -0700)] 
PCI: make pci_register_driver() a macro

alpha:

CC [M]  drivers/usb/gadget/u_ether.o
In file included from include/asm/dma-mapping.h:7,
                 from include/linux/dma-mapping.h:52,
                 from include/linux/dmaengine.h:29,
                 from include/linux/skbuff.h:29,
                 from include/linux/if_ether.h:114,
                 from include/linux/etherdevice.h:27,
                 from drivers/usb/gadget/u_ether.c:29:
include/linux/pci.h: In function 'pci_register_driver':
include/linux/pci.h:673: error: 'KBUILD_MODNAME' undeclared (first use in this function)
include/linux/pci.h:673: error: (Each undeclared identifier is reported only once
include/linux/pci.h:673: error: for each function it appears in.)

Sam says:

The problem is that u_ether.o is used by two modules so when we build it
KBUILD_MODNAME is not defined because kbuild does not know what value to
use.

And in pci.h we have the following inline:

static inline int __must_check pci_register_driver(struct pci_driver *driver)
{
        return __pci_register_driver(driver, THIS_MODULE, KBUILD_MODNAME);
}

And alpha uses dma-mapping.h to nullify a number of functions that seem to
require something from pci.h.

Making it a macro fixes this particular problem.  However, the underlying issue
of a file using KBUILD_MODNAME and being shared between multiple modules is
*not* addressed.  I guess the answer there is "don't do that".

Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoPCI: add Broadcom 5708S to VPD length quirk
Eric Dumazet [Thu, 31 Jul 2008 18:27:31 +0000 (20:27 +0200)] 
PCI: add Broadcom 5708S to VPD length quirk

BCM5708S wont work correctly unless VPD length truncated to 128

Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
16 years agoath9k: Revamp wireless mode usage
Sujith [Thu, 7 Aug 2008 05:24:57 +0000 (10:54 +0530)] 
ath9k: Revamp wireless mode usage

Use a single enum for managing modes, store supported modes by
the HW in a bitmask.
Register legacy rates with mac80211 only at init.

Signed-off-by: Sujith Manoharan <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoath9k: More unused macros
Sujith [Thu, 7 Aug 2008 05:24:33 +0000 (10:54 +0530)] 
ath9k: More unused macros

Signed-off-by: Sujith Manoharan <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoath9k: Remove a few unused macros and fix indentation
Sujith [Thu, 7 Aug 2008 05:24:07 +0000 (10:54 +0530)] 
ath9k: Remove a few unused macros and fix indentation

Signed-off-by: Sujith Manoharan <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoath9k: Use mac80211's band macros and remove enum hal_freq_band
Sujith [Thu, 7 Aug 2008 05:23:39 +0000 (10:53 +0530)] 
ath9k: Use mac80211's band macros and remove enum hal_freq_band

Signed-off-by: Sujith Manoharan <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoath9k: Remove redundant data structure ath9k_txq_info
Sujith [Thu, 7 Aug 2008 05:23:10 +0000 (10:53 +0530)] 
ath9k: Remove redundant data structure ath9k_txq_info

Use ath9k_tx_queue_info which contains the same elements,
and merge get/set functions of tx queue properties.
Also, fix whitespace damage in struct ath_softc.

Signed-off-by: Sujith Manoharan <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoath9k: Cleanup data structures related to HW capabilities
Sujith [Thu, 7 Aug 2008 05:22:38 +0000 (10:52 +0530)] 
ath9k: Cleanup data structures related to HW capabilities

Signed-off-by: Sujith Manoharan <Sujith.Manoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoath9k: work around gcc ICEs
Adrian Bunk [Tue, 5 Aug 2008 19:06:51 +0000 (22:06 +0300)] 
ath9k: work around gcc ICEs

This patch works around an internal compiler error (gcc bug #37014) in
all gcc 4.2 compilers and the gcc 4.3 series up to at least 4.3.1
on at least powerpc and mips.

Many thanks to Andrew Pinski for analyzing the gcc bug.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoath9k: Add new Atheros IEEE 802.11n driver
Luis R. Rodriguez [Mon, 4 Aug 2008 07:16:41 +0000 (00:16 -0700)] 
ath9k: Add new Atheros IEEE 802.11n driver

This adds the new mac80211 11n ath9k Atheros driver. Only STA support
is currently enabled and tested.

Signed-off-by: Senthil Balasubramanian <senthilkumar@atheros.com>
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Signed-off-by: Jack Howarth <howarth@bromo.msbb.uc.edu>
Signed-off-by: Jouni Malinen <jouni.malinen@atheros.com>
Signed-off-by: Sujith Manoharan <Sujith.Manoharan@atheros.com>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: Vasanthakumar Thiagarajan <vasanth@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoath5k: remove Atheros 11n devices from supported list
Luis R. Rodriguez [Mon, 4 Aug 2008 07:16:40 +0000 (00:16 -0700)] 
ath5k: remove Atheros 11n devices from supported list

Remove Atheros 11n devices from being claimed by ath5k as its
now handled by ath9k.

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agolist.h: add list_cut_position()
Luis R. Rodriguez [Wed, 6 Aug 2008 20:28:54 +0000 (13:28 -0700)] 
list.h: add list_cut_position()

This adds list_cut_position() which lets you cut a list into
two lists given a pivot in the list.

Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agolist.h: Add list_splice_tail() and list_splice_tail_init()
Luis R. Rodriguez [Wed, 6 Aug 2008 22:21:26 +0000 (15:21 -0700)] 
list.h: Add list_splice_tail() and list_splice_tail_init()

If you are using linked lists for queues list_splice() will not do what
you would expect even if you use the elements passed reversed. We need
to handle these differently. We add list_splice_tail() and
list_splice_tail_init().

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agop54: swap short slot time dcf values
Christian Lamparter [Thu, 7 Aug 2008 08:22:28 +0000 (10:22 +0200)] 
p54: swap short slot time dcf values

these "magic" values must to be the other way round...

Signed-off-by: Christian Lamparter <chunkeey@web.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agort2x00: Block all unsupported modes
Ivo van Doorn [Wed, 6 Aug 2008 14:18:31 +0000 (16:18 +0200)] 
rt2x00: Block all unsupported modes

It was possible for unsupported operating modes
to be accepted by the add_interface callback function.
This patch will block those modes until proper support
has been implemented for them.

Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agomac80211: keep mesh ifaces in allmulti mode
Luis Carlos Cobo [Wed, 6 Aug 2008 11:17:54 +0000 (13:17 +0200)] 
mac80211: keep mesh ifaces in allmulti mode

Currently a mesh node will not forward a multicast frame if it is not subscribed
to the specific multicast address. This patch addresses the issue and fixes mesh
multicast forwarding.

Signed-off-by: Luis Carlos Cobo <luisca@cozybit.com>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agomac80211: fix use of skb->cb for mesh forwarding
Luis Carlos Cobo [Tue, 5 Aug 2008 17:34:52 +0000 (19:34 +0200)] 
mac80211: fix use of skb->cb for mesh forwarding

Now we deal with mesh forwarding before the 802.11->802.3 conversion, thus
eliminating a few unnecessary steps. The next hop lookup is called from
ieee80211_master_start_xmit() instead of subif_start_xmit(). Until the next hop
is found, RA in the frame will be all zeroes for frames originating from the
device. For forwarded frames, RA will contain the TA of the received frame,
which will be necessary to send a path error if a next hop is not found.

Signed-off-by: Luis Carlos Cobo <luisca@cozybit.com>
Acked-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agop54: Fix for TX sequence number problem
Larry Finger [Tue, 5 Aug 2008 16:23:16 +0000 (11:23 -0500)] 
p54: Fix for TX sequence number problem

Following "mac80211: fix TX sequence numbers", if a packet
has the IEEE80211_TX_CTL_ASSIGN_SEQ assigned, a sequence number must be
supplied, either by hardware or software. AFAIK, no such hardware exists
for the p54, thus it must be done in software. With this patch, a connection
qith p54usb is stable, whereas the interface went off-line in 2-3 hours
without this change. Note that this code will have to be reworked for proper
sequence numbers on beacons. In addition, the sequence number has been placed
in the hardware state, not the vif state.

Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoiwlwifi: cleanup iwl_tx_skb
Tomas Winkler [Mon, 4 Aug 2008 08:00:44 +0000 (16:00 +0800)] 
iwlwifi: cleanup iwl_tx_skb

This patch cleans up iwl_tx_skb function.

Signed-off-by: Tomas Winkler <tomas.winkler@intel.com>
Signed-off-by: Zhu Yi <yi.zhu@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
16 years agoMerge branch 'for-rmk' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa...
Russell King [Thu, 7 Aug 2008 10:05:25 +0000 (11:05 +0100)] 
Merge branch 'for-rmk' of git://git./linux/kernel/git/ycmiao/pxa-linux-2.6

Conflicts:

arch/arm/mach-pxa/generic.c
arch/arm/mach-pxa/pxa25x.c
arch/arm/mach-pxa/pxa27x.c
arch/arm/mach-pxa/pxa2xx.c
arch/arm/mach-pxa/pxa3xx.c
arch/arm/mach-pxa/reset.c
arch/arm/mach-pxa/spitz.c
arch/arm/mach-pxa/tosa.c
drivers/watchdog/sa1100_wdt.c

16 years ago[ARM] 5185/1: Fix spi num_chipselect for lubbock
Jonathan Cameron [Mon, 4 Aug 2008 13:41:27 +0000 (14:41 +0100)] 
[ARM] 5185/1: Fix spi num_chipselect for lubbock

Change num_chipselect for lubbock ssp master to reflect requirement
of spi subsystem that all buses have at least 1 chip select.

Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk>
Acked-by: Eric Miao <eric.miao@marvell.com>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
16 years agopktgen: multiqueue etc.
Robert Olsson [Thu, 7 Aug 2008 09:23:01 +0000 (02:23 -0700)] 
pktgen: multiqueue etc.

Sofar far pktgen have had a restriction to only use one device per kernel
thread. With the new multiqueue architecture this is no longer adequate.

The patch below is an effort to remove this by in pktgen configuration
adding a tag to  the device name a la eth0@0 etc. The tag is used for
usual device config just as before. Also a new flag is introduced to mirror
queue_map with sending threads smp_processor_id() QUEUE_MAP_CPU.

An example: We use 4 CPU's to send to one 10g interface (eth0)
 and we use the new tagging to send a mix of packet sizes, 64, 576 and
 1500 bytes. Also we use TX queues according to smp_processor_id()

 PGDEV=/proc/net/pktgen/kpktgend_0
 pgset "add_device eth0@0"

 PGDEV=/proc/net/pktgen/kpktgend_1
 pgset "add_device eth0@1"

 PGDEV=/proc/net/pktgen/kpktgend_2
 pgset "add_device eth0@2"

 PGDEV=/proc/net/pktgen/kpktgend_3
 pgset "add_device eth0@3"
....
PGDEV=/proc/net/pktgen/eth0@0
pgset "pkt_size 64"
pgset "flag QUEUE_MAP_CPU"

PGDEV=/proc/net/pktgen/eth0@1
pgset "pkt_size 572"
pgset "flag QUEUE_MAP_CPU"

PGDEV=/proc/net/pktgen/eth0@2
pgset "pkt_size 1496"

PGDEV=/proc/net/pktgen/eth0@3
pgset "pkt_size 1496"
pgset "flag QUEUE_MAP_CPU"

Signed-off-by: Robert Olsson <robert.olsson@its.uu.se>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agoMerge branch 'upstream-davem' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
David S. Miller [Thu, 7 Aug 2008 09:10:27 +0000 (02:10 -0700)] 
Merge branch 'upstream-davem' of /linux/kernel/git/jgarzik/netdev-2.6

16 years ago[ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach
Russell King [Tue, 5 Aug 2008 15:14:15 +0000 (16:14 +0100)] 
[ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach

This just leaves include/asm-arm/plat-* to deal with.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
16 years agoMerge branch 'header-move' of git://git.kernel.org/pub/scm/linux/kernel/git/hskinnemo...
Russell King [Thu, 7 Aug 2008 08:55:16 +0000 (09:55 +0100)] 
Merge branch 'header-move' of git://git./linux/kernel/git/hskinnemoen/avr32-2.6

16 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild-fixes
Russell King [Thu, 7 Aug 2008 08:55:03 +0000 (09:55 +0100)] 
Merge git://git./linux/kernel/git/sam/kbuild-fixes

16 years ago[ARM] Add support for arch/arm/mach-*/include and arch/arm/plat-*/include
Russell King [Sat, 2 Aug 2008 18:36:14 +0000 (19:36 +0100)] 
[ARM] Add support for arch/arm/mach-*/include and arch/arm/plat-*/include

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
16 years ago[ARM] Remove asm/hardware.h, use asm/arch/hardware.h instead
Russell King [Mon, 4 Aug 2008 09:41:28 +0000 (10:41 +0100)] 
[ARM] Remove asm/hardware.h, use asm/arch/hardware.h instead

Remove includes of asm/hardware.h in addition to asm/arch/hardware.h.
Then, since asm/hardware.h only exists to include asm/arch/hardware.h,
update everything to directly include asm/arch/hardware.h and remove
asm/hardware.h.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
16 years ago[ARM] Eliminate useless includes of asm/mach-types.h
Russell King [Sun, 3 Aug 2008 14:06:16 +0000 (15:06 +0100)] 
[ARM] Eliminate useless includes of asm/mach-types.h

There are 43 includes of asm/mach-types.h by files that don't
reference anything from that file.  Remove these unnecessary
includes.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
16 years ago[ARM] Fix circular include dependency with IRQ headers
Russell King [Sun, 3 Aug 2008 14:04:04 +0000 (15:04 +0100)] 
[ARM] Fix circular include dependency with IRQ headers

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
16 years agoMerge branch 'for-jeff' of git://git.kernel.org/pub/scm/linux/kernel/git/chris/linux...
Jeff Garzik [Thu, 7 Aug 2008 08:05:46 +0000 (04:05 -0400)] 
Merge branch 'for-jeff' of git://git./linux/kernel/git/chris/linux-2.6 into tmp

16 years agoWAN: remove extra help text from HDLC_PPP config option
Krzysztof Halasa [Mon, 30 Jun 2008 20:09:15 +0000 (22:09 +0200)] 
WAN: remove extra help text from HDLC_PPP config option

Remove extra help text from HDLC_PPP config option.

Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agonet/core: Allow receive on active slaves.
Joe Eykholt [Thu, 3 Jul 2008 01:22:02 +0000 (18:22 -0700)] 
net/core: Allow receive on active slaves.

If a packet_type specifies an active slave to bonding and not just any
interface, allow it to receive frames that came in on that interface.

Signed-off-by: Joe Eykholt <jre@nuovasystems.com>
Signed-off-by: Jay Vosburgh <fubar@us.ibm.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agonet/core: Allow certain receives on inactive slave.
Joe Eykholt [Thu, 3 Jul 2008 01:22:01 +0000 (18:22 -0700)] 
net/core: Allow certain receives on inactive slave.

Allow a packet_type that specifies the exact device to receive
even on an inactive bonding slave devices.  This is important for some
L2 protocols such as LLDP and FCoE.  This can eventually be used
for the bonding special cases as well.

Signed-off-by: Joe Eykholt <jre@nuovasystems.com>
Signed-off-by: Jay Vosburgh <fubar@us.ibm.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agonet/core: Uninline skb_bond().
Joe Eykholt [Thu, 3 Jul 2008 01:22:00 +0000 (18:22 -0700)] 
net/core: Uninline skb_bond().

Otherwise subsequent changes need multiple return values.

Signed-off-by: Joe Eykholt <jre@nuovasystems.com>
Signed-off-by: Jay Vosburgh <fubar@us.ibm.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agobonding: Don't destroy bonding master when removing slave via sysfs
Moni Shoua [Thu, 3 Jul 2008 01:21:59 +0000 (18:21 -0700)] 
bonding: Don't destroy bonding master when removing slave via sysfs

It is wrong to destroy a bonding master from a context that uses the sysfs
of that bond. When last IPoIB slave is unenslaved from by writing to a
sysfs file (for bond0 this would be /sys/class/net/bond0/bonding/slaves)
the driver tries to destroy the bond. This is wrong and can lead to a
lockup or a crash.  This fix lets the bonding master stay and relies on
the user to destroy the bonding master if necessary (i.e. before module
ib_ipoib is unloaded)

This patch affects only bonds of IPoIB slaves. Ethernet slaves stay
unaffected.

Signed-off-by: Moni Shoua <monis@voltaire.com>
Signed-off-by: Jay Vosburgh <fubar@us.ibm.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agobonding: refactor mii monitor
Jay Vosburgh [Thu, 3 Jul 2008 01:21:58 +0000 (18:21 -0700)] 
bonding: refactor mii monitor

Refactor mii monitor.  As with the previous ARP monitor refactor,
the motivation for this is to handle locking rationally (in this case,
removing conditional locking) and generally clean up the code.

This patch breaks up the monolithic mii monitor into two phases:
an inspection phase, followed by an optional commit phase.  The commit phase
is the only portion that requires RTNL or makes changes to state, and is
only called when inspection finds something to change.

Signed-off-by: Jay Vosburgh <fubar@us.ibm.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agotcp: Fix kernel panic when calling tcp_v(4/6)_md5_do_lookup
Gui Jianfeng [Thu, 7 Aug 2008 06:50:04 +0000 (23:50 -0700)] 
tcp: Fix kernel panic when calling tcp_v(4/6)_md5_do_lookup

If the following packet flow happen, kernel will panic.
MathineA MathineB
SYN
---------------------->
         SYN+ACK
<----------------------
ACK(bad seq)
---------------------->
When a bad seq ACK is received, tcp_v4_md5_do_lookup(skb->sk, ip_hdr(skb)->daddr))
is finally called by tcp_v4_reqsk_send_ack(), but the first parameter(skb->sk) is
NULL at that moment, so kernel panic happens.
This patch fixes this bug.

OOPS output is as following:
[  302.812793] IP: [<c05cfaa6>] tcp_v4_md5_do_lookup+0x12/0x42
[  302.817075] Oops: 0000 [#1] SMP
[  302.819815] Modules linked in: ipv6 loop dm_multipath rtc_cmos rtc_core rtc_lib pcspkr pcnet32 mii i2c_piix4 parport_pc i2c_core parport ac button ata_piix libata dm_mod mptspi mptscsih mptbase scsi_transport_spi sd_mod scsi_mod crc_t10dif ext3 jbd mbcache uhci_hcd ohci_hcd ehci_hcd [last unloaded: scsi_wait_scan]
[  302.849946]
[  302.851198] Pid: 0, comm: swapper Not tainted (2.6.27-rc1-guijf #5)
[  302.855184] EIP: 0060:[<c05cfaa6>] EFLAGS: 00010296 CPU: 0
[  302.858296] EIP is at tcp_v4_md5_do_lookup+0x12/0x42
[  302.861027] EAX: 0000001e EBX: 00000000 ECX: 00000046 EDX: 00000046
[  302.864867] ESI: ceb69e00 EDI: 1467a8c0 EBP: cf75f180 ESP: c0792e54
[  302.868333]  DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068
[  302.871287] Process swapper (pid: 0, ti=c0792000 task=c0712340 task.ti=c0746000)
[  302.875592] Stack: c06f413a 00000000 cf75f180 ceb69e00 00000000 c05d0d86 000016d0 ceac5400
[  302.883275]        c05d28f8 000016d0 ceb69e00 ceb69e20 681bf6e3 00001000 00000000 0a67a8c0
[  302.890971]        ceac5400 c04250a3 c06f413a c0792eb0 c0792edc cf59a620 cf59a620 cf59a634
[  302.900140] Call Trace:
[  302.902392]  [<c05d0d86>] tcp_v4_reqsk_send_ack+0x17/0x35
[  302.907060]  [<c05d28f8>] tcp_check_req+0x156/0x372
[  302.910082]  [<c04250a3>] printk+0x14/0x18
[  302.912868]  [<c05d0aa1>] tcp_v4_do_rcv+0x1d3/0x2bf
[  302.917423]  [<c05d26be>] tcp_v4_rcv+0x563/0x5b9
[  302.920453]  [<c05bb20f>] ip_local_deliver_finish+0xe8/0x183
[  302.923865]  [<c05bb10a>] ip_rcv_finish+0x286/0x2a3
[  302.928569]  [<c059e438>] dev_alloc_skb+0x11/0x25
[  302.931563]  [<c05a211f>] netif_receive_skb+0x2d6/0x33a
[  302.934914]  [<d0917941>] pcnet32_poll+0x333/0x680 [pcnet32]
[  302.938735]  [<c05a3b48>] net_rx_action+0x5c/0xfe
[  302.941792]  [<c042856b>] __do_softirq+0x5d/0xc1
[  302.944788]  [<c042850e>] __do_softirq+0x0/0xc1
[  302.948999]  [<c040564b>] do_softirq+0x55/0x88
[  302.951870]  [<c04501b1>] handle_fasteoi_irq+0x0/0xa4
[  302.954986]  [<c04284da>] irq_exit+0x35/0x69
[  302.959081]  [<c0405717>] do_IRQ+0x99/0xae
[  302.961896]  [<c040422b>] common_interrupt+0x23/0x28
[  302.966279]  [<c040819d>] default_idle+0x2a/0x3d
[  302.969212]  [<c0402552>] cpu_idle+0xb2/0xd2
[  302.972169]  =======================
[  302.974274] Code: fc ff 84 d2 0f 84 df fd ff ff e9 34 fe ff ff 83 c4 0c 5b 5e 5f 5d c3 90 90 57 89 d7 56 53 89 c3 50 68 3a 41 6f c0 e8 e9 55 e5 ff <8b> 93 9c 04 00 00 58 85 d2 59 74 1e 8b 72 10 31 db 31 c9 85 f6
[  303.011610] EIP: [<c05cfaa6>] tcp_v4_md5_do_lookup+0x12/0x42 SS:ESP 0068:c0792e54
[  303.018360] Kernel panic - not syncing: Fatal exception in interrupt

Signed-off-by: Gui Jianfeng <guijianfeng@cn.fujitsu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agopkt_sched: Fix "parent is root" test in qdisc_create().
David S. Miller [Thu, 7 Aug 2008 06:35:59 +0000 (23:35 -0700)] 
pkt_sched: Fix "parent is root" test in qdisc_create().

As noticed by Stephen Hemminger, the root qdisc is denoted by
TC_H_ROOT, not zero.

Signed-off-by: David S. Miller <davem@davemloft.net>
16 years ago[netdrvr] Drivers should not set IFF_* flag themselves
Wang Chen [Tue, 22 Jul 2008 05:13:12 +0000 (13:13 +0800)] 
[netdrvr] Drivers should not set IFF_* flag themselves

Some hardware set promisc when they are requested to set IFF_ALLMULTI flag.
It's ok, but if drivers set IFF_PROMISC flag when they set promisc,
it will broken upper layer handle for promisc and allmulti.
In addition, drivers can use their own hardware programming to make it.
So do not allow drivers to set IFF_* flags.

This is a general driver fix, so I didn't split it to pieces and send
to specific driver maintainers.

Signed-off-by: Wang Chen <wangchen@cn.fujitsu.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agodm9000: Support MAC address setting through platform data.
Laurent Pinchart [Wed, 23 Jul 2008 15:41:52 +0000 (17:41 +0200)] 
dm9000: Support MAC address setting through platform data.

The dm9000 driver reads the chip's MAC address from the attached EEPROM. When
no EEPROM is present, or when the MAC address is invalid, it falls back to
reading the address from the chip.

This patch lets platform code set the desired MAC address through platform
data.

Signed-off-by: Laurent Pinchart <laurentp@cse-semaphore.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years ago3c59x: use netdev_alloc_skb
Stephen Hemminger [Fri, 25 Jul 2008 19:07:22 +0000 (12:07 -0700)] 
3c59x: use netdev_alloc_skb

Fix possible bug where end of receive buffer could be overwritten.
The allocation needs to allow for the reserved space. This would only happen
if device received packet greater than Ethernet standard MTU.

Change this driver to use netdev_alloc_skb rather than setting skb->dev
directly. For the initial allocation it doesn't need to be GFP_ATOMIC.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agoethtool: Expand ethtool_cmd.speed to 32 bits
Brandon Philips [Tue, 15 Jul 2008 09:18:41 +0000 (02:18 -0700)] 
ethtool: Expand ethtool_cmd.speed to 32 bits

Introduce the speed_hi field to ethtool_cmd, using the reserved space,
to expand the speed field to 2^32 Megabits/second.

Making this field expansion now gives us plenty of time to fix up the
user-space pieces that use SIOCETHTOOL before hardware faster than 64
Gb/s is available.

Signed-off-by: Brandon Philips <bphilips@suse.de>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agopegasus: add blacklist support to fix Belkin bluetooth dongle.
Ben Collins [Wed, 30 Jul 2008 19:39:02 +0000 (12:39 -0700)] 
pegasus: add blacklist support to fix Belkin bluetooth dongle.

Reference: https://launchpad.net/bugs/140511

The Belkin bluetooth dongle unfortunately shares the vendor and device id
with the network adapter which causes lockups whenever the bluetooth
dongle is inserted.

Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
Signed-off-by: Ben Collins <ben.collins@canonical.com>
Cc: Greg Kroah-Hartman <gregkh@suse.de>
Cc: David Brownell <david-b@pacbell.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agodrivers/net/netxen/netxen_nic_hw.c: fix printk warnings
Andrew Morton [Wed, 30 Jul 2008 19:50:12 +0000 (12:50 -0700)] 
drivers/net/netxen/netxen_nic_hw.c: fix printk warnings

drivers/net/netxen/netxen_nic_hw.c: In function 'netxen_nic_pci_mem_read_direct':
drivers/net/netxen/netxen_nic_hw.c:1414: warning: format '%llx' expects type 'long long unsigned int', but argument 3 has type 'u64'
drivers/net/netxen/netxen_nic_hw.c: In function 'netxen_nic_pci_mem_write_direct':
drivers/net/netxen/netxen_nic_hw.c:1487: warning: format '%llx' expects type 'long long unsigned int', but argument 3 has type 'u64'

You don't know what type was used for u64 hence they cannot be printed without
casting.

Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agohamradio: add missing sanity check to tty operation
Eugene Teo [Wed, 30 Jul 2008 19:38:59 +0000 (12:38 -0700)] 
hamradio: add missing sanity check to tty operation

Add missing sanity check to tty operation.

Acked-by: Alan Cox <alan@redhat.com>
Signed-off-by: Eugene Teo <eteo@redhat.com>
Cc: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agodrivers/net: coding styles fixes to drivers/net/8390.c
Gustavo F. Padovan [Sat, 2 Aug 2008 18:55:13 +0000 (15:55 -0300)] 
drivers/net: coding styles fixes to drivers/net/8390.c

Fix all errors and warnings reported by checkpatch.pl

Signed-off-by: Gustavo F. Padovan <gustavo@las.ic.unicamp.br>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agodrivers/net: coding styles fixes to drivers/net/8390p.c
Gustavo F. Padovan [Sat, 2 Aug 2008 18:55:12 +0000 (15:55 -0300)] 
drivers/net: coding styles fixes to drivers/net/8390p.c

Fix all errors and warnings reported by checkpatch.pl

Signed-off-by: Gustavo F. Padovan <gustavo@las.ic.unicamp.br>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agodrivers/net: Remove 'return' of void function NS8390p_init()
Gustavo F. Padovan [Sat, 2 Aug 2008 18:55:11 +0000 (15:55 -0300)] 
drivers/net: Remove 'return' of void function NS8390p_init()

We don't need this into a void function.

Signed-off-by: Gustavo F. Padovan <gustavo@las.ic.unicamp.br>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years ago[netdrvr] sh_eth: Add SH7619 support
Yoshinori Sato [Wed, 6 Aug 2008 23:49:00 +0000 (19:49 -0400)] 
[netdrvr] sh_eth: Add SH7619 support

Add support SH7619 Internal ethernet controler.

Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agoMETH: fix MAC address setup
Thomas Bogendoerfer [Wed, 30 Jul 2008 23:14:24 +0000 (01:14 +0200)] 
METH: fix MAC address setup

Setup of the mac filter lost the upper 16bit of the mac address. This
bug got unconvered by a patch, which fixed the promiscous handling.

Signed-off-by: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agoxen-netfront: use netif_start_queue() on xennet_open()
Eduardo Habkost [Thu, 31 Jul 2008 20:36:55 +0000 (17:36 -0300)] 
xen-netfront: use netif_start_queue() on xennet_open()

xen-netfront never called netif_start_queue() and was was waking the
queue on xennet_open(), triggering the BUG_ON() on __netif_schedule().

Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agoqla3xxx: driver version change.
root [Thu, 31 Jul 2008 20:46:08 +0000 (13:46 -0700)] 
qla3xxx: driver version change.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agoqla3xxx: cleanup: Remove some unused structure definitions and structure elements.
Ron Mercer [Thu, 31 Jul 2008 20:46:07 +0000 (13:46 -0700)] 
qla3xxx: cleanup: Remove some unused structure definitions and structure elements.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agoqla3xxx: cleanup: Remove some unused defined constants in the header file.
Ron Mercer [Thu, 31 Jul 2008 20:46:06 +0000 (13:46 -0700)] 
qla3xxx: cleanup: Remove some unused defined constants in the header file.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agoqla3xxx: fix: Fix IFF_MULTICAST setting.
Ron Mercer [Thu, 31 Jul 2008 20:46:05 +0000 (13:46 -0700)] 
qla3xxx: fix: Fix IFF_MULTICAST setting.

The driver was erroneously clearing this bit though the hardware supports multicast.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agoqla3xxx: fix: Remove unused set_multicast function.
Ron Mercer [Thu, 31 Jul 2008 20:46:04 +0000 (13:46 -0700)] 
qla3xxx: fix: Remove unused set_multicast function.

This device is one side of a two-function adapter (NIC and iSCSI).
Promiscuous mode setting/clearing is not allowed from the NIC side.

Signed-off-by: Ron Mercer <ron.mercer@qlogic.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agonetxen: fix promisc mode, mtu setting
Dhananjay Phadke [Fri, 1 Aug 2008 10:14:59 +0000 (03:14 -0700)] 
netxen: fix promisc mode, mtu setting

For NX3031, multicast filtering, promisc mode, and max frame size
setting is handled by firmware, driver needs to send request to
enable/disable it.

For old chip revisions / firmware, driver still sets it directly.

Added function pointer to set mtu according to chip revision.

Signed-off-by: Dhananjay Phadke <dhananjay@netxen.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agonetxen: fix cmd ring init
Dhananjay Phadke [Fri, 1 Aug 2008 10:14:58 +0000 (03:14 -0700)] 
netxen: fix cmd ring init

Initialize producer and consumer indices during netdev open(), only
for old firmware/chip.

Signed-off-by: Dhananjay Phadke <dhananjay@netxen.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agonetxen: fix legacy interrupts
Dhananjay Phadke [Fri, 1 Aug 2008 10:14:57 +0000 (03:14 -0700)] 
netxen: fix legacy interrupts

Fix legacy interrupt mode for NX3031 chips, read pci interrupt state
in hardware to guard against spurious interrupt.

Signed-off-by: Dhananjay Phadke <dhananjay@netxen.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agosparc64: Use kernel/uid16.c helpers instead of own copy.
David S. Miller [Thu, 7 Aug 2008 06:11:08 +0000 (23:11 -0700)] 
sparc64: Use kernel/uid16.c helpers instead of own copy.

Noticed by Adrian Bunk.

Signed-off-by: David S. Miller <davem@davemloft.net>
16 years agonetxen: add new board types
Dhananjay Phadke [Fri, 1 Aug 2008 10:14:56 +0000 (03:14 -0700)] 
netxen: add new board types

Add couple of new board configurations based on NX3031 chip.

Signed-off-by: Dhananjay Phadke <dhananjay@netxen.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agonetxen: fix link status, link speed
Dhananjay Phadke [Fri, 1 Aug 2008 10:14:55 +0000 (03:14 -0700)] 
netxen: fix link status, link speed

For NX3031, the phy is managed by firmware, so driver should avoid
setting any phy registers.

Signed-off-by: Dhananjay Phadke <dhananjay@netxen.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agoremove bogus CONFIG_GFAR_NAPI's
Adrian Bunk [Mon, 4 Aug 2008 08:59:36 +0000 (11:59 +0300)] 
remove bogus CONFIG_GFAR_NAPI's

The commit that made the CONFIG_GFAR_NAPI code unconditional was
included at the same time as a new CONFIG_GFAR_NAPI user, resulting
in these bugus #ifdef's.

Reported-by: Robert P. J. Day <rpjday@crashcourse.ca>
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agonet/fs_enet: remove redundant messages for performance
Li Yang [Wed, 6 Aug 2008 07:08:50 +0000 (15:08 +0800)] 
net/fs_enet: remove redundant messages for performance

Currently when we do a packet flood to the Ethernet port, the console
reports error every time when a packet is dropped.  This is too
redundant and cost performance.  Remove message for this type of event.

Signed-off-by: Li Yang <leoli@freescale.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agoforcedeth: add tx pause limit
Ayaz Abdulla [Wed, 6 Aug 2008 16:12:34 +0000 (12:12 -0400)] 
forcedeth: add tx pause limit

This patch adds support for limiting the number of tx pause frames to a
default of 8. Previously, hardware would send out continuous stream of
pause frames.

Signed-off-by: Ayaz Abdulla <aabdulla@nvidia.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agoforcedeth: add jumbo frame support for mcp79
Ayaz Abdulla [Wed, 6 Aug 2008 16:12:18 +0000 (12:12 -0400)] 
forcedeth: add jumbo frame support for mcp79

This patch adds jumbo frame support for MCP79 chipsets.

Signed-off-by: Ayaz Abdulla <aabdulla@nvidia.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agoforcedeth: add new tx stat counters
Ayaz Abdulla [Wed, 6 Aug 2008 16:11:42 +0000 (12:11 -0400)] 
forcedeth: add new tx stat counters

This patch adds support for new tx statistic counters in the hardware -
unicast, multicast, and broadcast

Signed-off-by: Ayaz Abdulla <aabdulla@nvidia.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agoforcedeth: fix rx error policy
Ayaz Abdulla [Wed, 6 Aug 2008 16:11:03 +0000 (12:11 -0400)] 
forcedeth: fix rx error policy

This patch enforces a stricter policy on rx errors. The driver needs to
verify whether there are multiple rx errors versus a single error.

Signed-off-by: Ayaz Abdulla <aabdulla@nvidia.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agoMerge branch 'via-velocity' of git://git.kernel.org/pub/scm/linux/kernel/git/romieu...
Jeff Garzik [Thu, 7 Aug 2008 06:05:01 +0000 (02:05 -0400)] 
Merge branch 'via-velocity' of git://git./linux/kernel/git/romieu/netdev-2.6 into tmp

16 years agosky2: fix PM related regressions
Stephen Hemminger [Mon, 4 Aug 2008 20:33:37 +0000 (13:33 -0700)] 
sky2: fix PM related regressions

Fix the problems reported for 2.6.27-rc1 caused by over aggressive
power management. Turning clock off on PCI Express is problematic for WOL,
and when doing multi-booting.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
16 years agoigb: remove igb_init_managability as it is deprecated
Alexander Duyck [Mon, 4 Aug 2008 22:00:27 +0000 (15:00 -0700)] 
igb: remove igb_init_managability as it is deprecated

igb_init_managability does not actually perform any function as the two
registers it attempts to write are both read only on the host.  This patch
removes the function and all references to it from the driver.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>