09 Feb, 2010

3 commits


06 Feb, 2010

4 commits


05 Feb, 2010

9 commits


04 Feb, 2010

23 commits

  • Thanks for your patch. A more general solution would be to move the
    rx_dropped up into sky2_receive.

    Signed-off-by: Stephen Hemminger
    Signed-off-by: David S. Miller

    Stephen Hemminger
     
  • If receive buffer mapping failed, then it was possible to get
    stuck with unmapped receive buffer in DMA ring.

    This would be an extremely rare condition because the driver had just
    released the map for the last receive so it should be able to get
    another map again (in soft-irq).

    Signed-off-by: Stephen Hemminger
    Signed-off-by: David S. Miller

    stephen hemminger
     
  • This patch addresses concerns about efficiency of handling incoming
    packets. Handling of interrupts is done in a threaded interrupt handler
    which has a smaller latency than workqueues. This change needed a rework
    of the locking scheme that was much simplified. Some other (more or less
    longstanding) bugs are fixed: utilization of just half of the RX
    buffers, useless wait for interrupt on open, more reliable reset
    sequence. The MERR interrupt is not used anymore: it overloads the CPU
    in error-passive state without any additional information. One shot mode
    is disabled because it's not clear if it can be handled efficiently on
    this CAN controller.

    Signed-off-by: Christian Pellegrin
    Acked-by: Wolfgang Grandegger
    Signed-off-by: David S. Miller

    Christian Pellegrin
     
  • There is no need to maintain stats in the bonding structure.
    Use the instance of net_device_stats in netdevice.

    Signed-off-by: Ajit Khaparde
    Signed-off-by: Jay Vosburgh
    Signed-off-by: David S. Miller

    Ajit Khaparde
     
  • String constants that are continued on subsequent lines with \
    are not good.

    Signed-off-by: Joe Perches
    Signed-off-by: David S. Miller

    Joe Perches
     
  • Signed-off-by: Thadeu Lima de Souza Cascardo
    Signed-off-by: David S. Miller

    Thadeu Lima de Souza Cascardo
     
  • In order to use macvlan with qemu and other tools that require
    a tap file descriptor, the macvtap driver adds a small backend
    with a character device with the same interface as the tun
    driver, with a minimum set of features.

    Macvtap interfaces are created in the same way as macvlan
    interfaces using ip link, but the netif is just used as a
    handle for configuration and accounting, while the data
    goes through the chardev. Each macvtap interface has its
    own character device, simplifying permission management
    significantly over the generic tun/tap driver.

    Cc: Patrick McHardy
    Cc: Stephen Hemminger
    Cc: David S. Miller"
    Cc: "Michael S. Tsirkin"
    Cc: Herbert Xu
    Cc: Or Gerlitz
    Cc: netdev@vger.kernel.org
    Cc: bridge@lists.linux-foundation.org
    Cc: linux-kernel@vger.kernel.org
    Signed-off-by: Arnd Bergmann
    Signed-off-by: David S. Miller

    Arnd Bergmann
     
  • This makes it possible to hook into the macvlan driver
    from another kernel module. In particular, the goal is
    to extend it with the macvtap backend that provides
    a tun/tap compatible interface directly on the macvlan
    device.

    Signed-off-by: Arnd Bergmann
    Signed-off-by: David S. Miller

    Arnd Bergmann
     
  • In the vlan and macvlan drivers, the start_xmit function forwards
    data to the dev_queue_xmit function for another device, which may
    potentially belong to a different namespace.

    To make sure that classification stays within a single namespace,
    this resets the potentially critical fields.

    Signed-off-by: Arnd Bergmann
    Signed-off-by: David S. Miller

    Arnd Bergmann
     
  • The error return should be negative. Its only caller that acts upon its
    return, handle_bmsg(), transmits the positive error but can also return
    negative errors.

    Signed-off-by: Roel Kluin
    Cc: Karsten Keil
    Signed-off-by: Andrew Morton
    Signed-off-by: David S. Miller

    Roel Kluin
     
  • Remove these compiler warnings:

    drivers/isdn/hardware/mISDN/w6692.c:534: warning: `setvolume' defined but not used
    drivers/isdn/hardware/mISDN/w6692.c:561: warning: `enable_pots' defined but not used

    by moving the functions inside #if 0 ... #endif. And an alternative is
    to remove them completely if nobody has plans to use them.

    Signed-off-by: Jiri Slaby
    Cc: Karsten Keil
    Signed-off-by: Andrew Morton
    Signed-off-by: David S. Miller

    Jiri Slaby
     
  • If setup_instance() fails we kfree() the card, and then use it in the next
    loop iteration. So lets bail out of the loop instead.

    Coverity CID: 13357

    Signed-off-by: Darren Jenkins
    Cc: Karsten Keil
    Signed-off-by: Andrew Morton
    Signed-off-by: David S. Miller

    Darren Jenkins
     
  • With `while (timeout++ < maxdelay)' timeout reaches maxdelay + 1 after the
    loop This is probably unlikely a problem in practice.

    Signed-off-by: Roel Kluin
    Cc: Karsten Keil
    Signed-off-by: Andrew Morton
    Signed-off-by: David S. Miller

    Roel Kluin
     
  • Fix crash where resources are freed twice on an eeh recovery failure.
    If eeh recovery fails we set a flag to indicate to close() that
    resources have been freed.

    Signed-off-by: Ron Mercer
    Signed-off-by: David S. Miller

    Ron Mercer
     
  • Issue asic reset and verify functionality before continuing to the
    resume call. This allows proper error code to be returned in the case
    the asic does not recover.

    Signed-off-by: Ron Mercer
    Signed-off-by: David S. Miller

    Ron Mercer
     
  • This patch allocates the ring structures themselves on each
    NUMA node along with the buffer_info structures. This way we
    don't allocate the entire ring memory on a single node in one
    big block, thus reducing NUMA node memory crosstalk.

    Signed-off-by: Peter P Waskiewicz Jr
    Signed-off-by: Jeff Kirsher
    Signed-off-by: David S. Miller

    PJ Waskiewicz
     
  • The default policy for the current driver is to do all its memory
    allocation on whatever processor is running insmod/modprobe. This
    is less than optimal.

    This driver's default mode of operation will be to use each node for each
    subsequent transmit/receive queue. The most efficient allocation will be
    to then have the interrupts bound in such a way as to match up the
    interrupt of the queue to the cpu where its memory was allocated.

    Signed-off-by: Jesse Brandeburg
    Signed-off-by: Peter P Waskiewicz Jr
    Signed-off-by: Jeff Kirsher
    Signed-off-by: David S. Miller

    Jesse Brandeburg
     
  • This patch adds a call to pci_save_state() immediately after
    the call to pci_restore_state(). Due to a change in the behavior
    of pci_restore_state() it is necessary to call pci_save_state()
    to keep the state_saved flag. This patch is based on a similar
    patch for ixgbe.

    Signed-off-by: Nicholas Nunley
    Signed-off-by: Jeff Kirsher
    Signed-off-by: David S. Miller

    Nick Nunley
     
  • With this change ethtool will correctly report link status when
    the interface is down. Currently ethtool reports the link as not
    detected when the interface is down.

    Signed-off-by: Nicholas Nunley
    Signed-off-by: Jeff Kirsher
    Signed-off-by: David S. Miller

    Nick Nunley
     
  • Processing multiple ixgbe_watchdog_task calls may cause
    the link_up variable and IXGBE_FLAG_NEED_LINK_UPDATE flag
    to be set incorrectly. In the worse case this is causing
    the netif_carrier_off to be called inappropriately which
    results in an interface that can't be brought up.

    Although schedule_work() will only schedule the task if
    it is not already on the work queue the WORK_STRUCT_PENDING
    bits are cleared just before calling the work function.
    This allows WORK_STRUCT_PENDING to be cleared, the work
    function to start and meanwhile schedule another task.

    This patch adds a mutex to the watchdog task. This bug is
    actualized by changing DCB settings or doing extended
    cable pull or reset tests.

    Signed-off-by: John Fastabend
    Signed-off-by: Jeff Kirsher
    Signed-off-by: David S. Miller

    John Fastabend
     
  • David S. Miller
     
  • a developer had complained of getting lots of warnings:

    "eth16 selects TX queue 98, but real number of TX queues is 64"

    http://www.mail-archive.com/e1000-devel@lists.sourceforge.net/msg02200.html

    As there was no follow up on that bug, I am submitting this
    patch assuming that the other return points will not return
    invalid txq's, and also that this fixes the bug (not tested).

    Signed-off-by: Krishna Kumar
    Signed-off-by: Jesse Brandeburg
    Acked-by: Peter P Waskiewicz Jr
    Signed-off-by: Jeff Kirsher
    Signed-off-by: David S. Miller

    Krishna Kumar
     
  • Commit e5a43549f7a58509a91b299a51337d386697b92c (ixgbe: remove
    skb_dma_map/unmap calls from driver) looks to have introduced a bug in
    ixgbe_tx_map. If we get an error from a PCI DMA call, we loop backwards
    through count until it becomes -1 and return that.

    The caller of ixgbe_tx_map expects 0 on error, so return that instead.

    Signed-off-by: Anton Blanchard
    Signed-off-by: Jeff Kirsher
    Signed-off-by: David S. Miller

    Anton Blanchard