17 Jan, 2009

5 commits


15 Jan, 2009

2 commits

  • Fix a deadlock between child interface creation/deletion and ipoib
    start/stop. The former takes vlan_mutex, and then might take RTNL via
    register_netdev()/unregister_netdev(). The latter is executed with
    RTNL held, and tries to take vlan_mutex, which can lead to an AB-BA
    deadlock.

    Fix this by having the child interface creation/deletion code take the
    RTNL first so vlan_mutex always nests inside RTNL. We can use
    register_netdevice() for child interfaces because we form the
    interface name from the parent interface and hence don't need the '%'
    expansion of register_netdev().

    Reported-by: Yossi Etigin
    Signed-off-by: Roland Dreier

    Roland Dreier
     
  • After commit fe25c561 ("IPoIB: Don't enable NAPI when it's already
    enabled"), if an interface is brought up but the corresponding P_Key
    never appears, then ipoib_stop() will hang in napi_disable(), because
    ipoib_open() returns before it does napi_enable().

    Fix this by changing ipoib_open() to call napi_enable() even if the
    P_Key isn't present.

    Reported-by: Yossi Etigin
    Signed-off-by: Roland Dreier

    Roland Dreier
     

14 Jan, 2009

1 commit


13 Jan, 2009

3 commits

  • Roland Dreier
     
  • Fix ib_iser build to depend on INFINIBAND_ADDR_TRANS; if INET=y but
    IPV6=n, then the RDMA CM is not built but INFINIBAND_ISER can be
    enabled, leading to:

    ERROR: "rdma_destroy_id" [drivers/infiniband/ulp/iser/ib_iser.ko] undefined!
    ERROR: "rdma_connect" [drivers/infiniband/ulp/iser/ib_iser.ko] undefined!
    ERROR: "rdma_destroy_qp" [drivers/infiniband/ulp/iser/ib_iser.ko] undefined!
    ERROR: "rdma_create_id" [drivers/infiniband/ulp/iser/ib_iser.ko] undefined!
    ERROR: "rdma_create_qp" [drivers/infiniband/ulp/iser/ib_iser.ko] undefined!
    ERROR: "rdma_resolve_route" [drivers/infiniband/ulp/iser/ib_iser.ko] undefined!
    ERROR: "rdma_disconnect" [drivers/infiniband/ulp/iser/ib_iser.ko] undefined!
    ERROR: "rdma_resolve_addr" [drivers/infiniband/ulp/iser/ib_iser.ko] undefined!

    Signed-off-by: Randy Dunlap

    Randy Dunlap
     
  • Because the ipoib_workqueue is not flushed when ipoib interface is
    brought down, ipoib_mcast_join() may trigger a join to the broadcast
    group after priv->broadcast was set to NULL (during cleanup). This
    will cause the system to be a member of the broadcast group when
    interface is down. As a side effect, this breaks the optimization of
    setting the Q_key only when joining the broadcast group.

    Signed-off-by: Yossi Etigin
    Signed-off-by: Roland Dreier

    Yossi Etigin
     

11 Jan, 2009

1 commit

  • Commit 63779436 ("drivers: replace NIPQUAD()") accidentally replaced
    some HIPQUAD()s, causing IP addresses to be printed in reverse order.
    Add temporary local vars until the byteswapping can be pushed further
    up the stack.

    Signed-off-by: Harvey Harrison
    Signed-off-by: Roland Dreier

    Harvey Harrison
     

10 Jan, 2009

2 commits

  • Fix bonding failover in the case both peers failover and the
    gratuitous ARP is lost. In that case, the sender side will create an
    ipoib_neigh and issue a path request with the old GID first. When
    skb->dst->neighbour->ha changes due to ARP refresh, this ipoib_neigh
    will not be added to the path->list of the path of the new GID,
    because the ipoib_neigh already exists. It will not have an AH
    either, because of sender-side failover. Therefore, it will not get
    an AH when the path is resolved.

    The solution here is to compare GIDs in ipoib_start_xmit() even if
    neigh->ah is invalid. Comparing with an uninitialized value of
    neigh->dgid should be fine, since a spurious match is harmless (and
    astronomically unlikely too).

    Signed-off-by: Moni Shoua
    Signed-off-by: Yossi Etigin
    Signed-off-by: Roland Dreier

    Yossi Etigin
     
  • If the mlx4_ib driver finds an adapter that has only ethernet ports, the
    current code will register an IB device with 0 ports. Nothing useful or
    sensible can be done with such a device, so just skip registering it.

    Signed-off-by: Roland Dreier

    Roland Dreier
     

09 Jan, 2009

1 commit

  • When I review ocfs2 code, find there are 2 typos to "successfull". After
    doing grep "successfull " in kernel tree, 22 typos found totally -- great
    minds always think alike :)

    This patch fixes all the similar typos. Thanks for Randy's ack and comments.

    Signed-off-by: Coly Li
    Acked-by: Randy Dunlap
    Acked-by: Roland Dreier
    Cc: Jeremy Kerr
    Cc: Jeff Garzik
    Cc: Heiko Carstens
    Cc: Martin Schwidefsky
    Cc: Theodore Ts'o
    Cc: Mark Fasheh
    Cc: Vlad Yasevich
    Cc: Sridhar Samudrala
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Coly Li
     

08 Jan, 2009

2 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (24 commits)
    trivial: chack -> check typo fix in main Makefile
    trivial: Add a space (and a comma) to a printk in 8250 driver
    trivial: Fix misspelling of "firmware" in docs for ncr53c8xx/sym53c8xx
    trivial: Fix misspelling of "firmware" in powerpc Makefile
    trivial: Fix misspelling of "firmware" in usb.c
    trivial: Fix misspelling of "firmware" in qla1280.c
    trivial: Fix misspelling of "firmware" in a100u2w.c
    trivial: Fix misspelling of "firmware" in megaraid.c
    trivial: Fix misspelling of "firmware" in ql4_mbx.c
    trivial: Fix misspelling of "firmware" in acpi_memhotplug.c
    trivial: Fix misspelling of "firmware" in ipw2100.c
    trivial: Fix misspelling of "firmware" in atmel.c
    trivial: Fix misspelled firmware in Kconfig
    trivial: fix an -> a typos in documentation and comments
    trivial: fix then -> than typos in comments and documentation
    trivial: update Jesper Juhl CREDITS entry with new email
    trivial: fix singal -> signal typo
    trivial: Fix incorrect use of "loose" in event.c
    trivial: printk: fix indentation of new_text_line declaration
    trivial: rtc-stk17ta8: fix sparse warning
    ...

    Linus Torvalds
     
  • The flags argument to spin_lock_irqsave() should really be unsigned
    long. This will also help prevent some warnings when we change u64 to
    unsigned long long.

    Signed-off-by: Stephen Rothwell
    Signed-off-by: Roland Dreier

    Stephen Rothwell
     

07 Jan, 2009

1 commit


06 Jan, 2009

2 commits


31 Dec, 2008

4 commits


30 Dec, 2008

6 commits


29 Dec, 2008

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1429 commits)
    net: Allow dependancies of FDDI & Tokenring to be modular.
    igb: Fix build warning when DCA is disabled.
    net: Fix warning fallout from recent NAPI interface changes.
    gro: Fix potential use after free
    sfc: If AN is enabled, always read speed/duplex from the AN advertising bits
    sfc: When disabling the NIC, close the device rather than unregistering it
    sfc: SFT9001: Add cable diagnostics
    sfc: Add support for multiple PHY self-tests
    sfc: Merge top-level functions for self-tests
    sfc: Clean up PHY mode management in loopback self-test
    sfc: Fix unreliable link detection in some loopback modes
    sfc: Generate unique names for per-NIC workqueues
    802.3ad: use standard ethhdr instead of ad_header
    802.3ad: generalize out mac address initializer
    802.3ad: initialize ports LACPDU from const initializer
    802.3ad: remove typedef around ad_system
    802.3ad: turn ports is_individual into a bool
    802.3ad: turn ports is_enabled into a bool
    802.3ad: make ntt bool
    ixgbe: Fix set_ringparam in ixgbe to use the same memory pools.
    ...

    Fixed trivial IPv4/6 address printing conflicts in fs/cifs/connect.c due
    to the conversion to %pI (in this networking merge) and the addition of
    doing IPv6 addresses (from the earlier merge of CIFS).

    Linus Torvalds
     

27 Dec, 2008

1 commit


25 Dec, 2008

5 commits


23 Dec, 2008

1 commit

  • When the napi api was changed to separate its 1:1 binding to the net_device
    struct, the netif_rx_[prep|schedule|complete] api failed to remove the now
    vestigual net_device structure parameter. This patch cleans up that api by
    properly removing it..

    Signed-off-by: Neil Horman
    Signed-off-by: David S. Miller

    Neil Horman
     

22 Dec, 2008

2 commits

  • When using MSI-X mode, create a completion event queue for each CPU.
    Report the number of completion EQs in a new struct mlx4_caps member,
    num_comp_vectors, and extend the mlx4_cq_alloc() interface with a
    vector parameter so that consumers can specify which completion EQ
    should be used to report events for the CQ being created.

    Signed-off-by: Yevgeny Petrilin
    Signed-off-by: Roland Dreier

    Yevgeny Petrilin
     
  • iSCSI/iSER targets may send PDUs without a prior request from the
    initiator. RFC 5046 refers to these PDUs as "unexpected". NOP-In PDUs
    with itt=RESERVED and Asynchronous Message PDUs occupy this category.

    The amount of active "unexpected" PDU's an iSER target may have at any
    time is governed by the MaxOutstandingUnexpectedPDUs key, which is not
    yet supported.

    Currently when an iSER target sends an "unexpected" PDU, the
    initiators recv buffer consumed by the PDU is not replaced. If over
    initial_post_recv_bufs_num "unexpected" PDUs are received then the
    receive queue will run out of receive work requests entirely.

    This patch ensures recv buffers consumed by "unexpected" PDUs are
    replaced in the next iser_post_receive_control() call.

    Signed-off-by: David Disseldorp
    Signed-off-by: Ken Sandars
    Acked-by: Or Gerlitz
    Signed-off-by: Roland Dreier

    David Disseldorp