1. 02 4月, 2009 11 次提交
    • A
      RDS: Rewrite connection cleanup, fixing oops on rmmod · 745cbcca
      Andy Grover 提交于
      This fixes a bug where a connection was unexpectedly
      not on *any* list while being destroyed. It also
      cleans up some code duplication and regularizes some
      function names.
      
      * Grab appropriate lock in conn_free() and explain in comment
      * Ensure via locking that a conn is never not on either
        a dev's list or the nodev list
      * Add rds_xx_remove_conn() to match rds_xx_add_conn()
      * Make rds_xx_add_conn() return void
      * Rename remove_{,nodev_}conns() to
        destroy_{,nodev_}conns() and unify their implementation
        in a helper function
      * Document lock ordering as nodev conn_lock before
        dev_conn_lock
      Reported-by: NYosef Etigin <yosefe@voltaire.com>
      Signed-off-by: NAndy Grover <andy.grover@oracle.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      745cbcca
    • A
      RDS: Fix m_rs_lock deadlock · f1cffcbf
      Andy Grover 提交于
      rs_send_drop_to() is called during socket close. If it takes
      m_rs_lock without disabling interrupts, then
      rds_send_remove_from_sock() can run from the rx completion
      handler and thus deadlock.
      Signed-off-by: NAndy Grover <andy.grover@oracle.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f1cffcbf
    • R
      Neterion: New driver: Kconfig and Makefile · f1782852
      Ramkrishna Vepa 提交于
      - Kconfig and Makefile related changes for vxge driver.
      
      - No changes in current submission.
      
      - Changes from previous submission -
       - Incorporated the following review comments as per Bill Flink:
              - Add dependancy on INET along with PCI
              - Remove dependancy on INET_LRO and add GRO support.
       - Made this patch as last patch as per Ben Hutchings comments.
      Signed-off-by: NSivakumar Subramani <sivakumar.subramani@neterion.com>
      Signed-off-by: NRastapur Santosh <santosh.rastapur@neterion.com>
      Signed-off-by: NRamkrishna Vepa <ram.vepa@neterion.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f1782852
    • R
      Neterion: New driver: Driver version · 5f548a32
      Ramkrishna Vepa 提交于
      - Driver version
      
      - Changes from previous submission -
       - Updated driver version.
      Signed-off-by: NSivakumar Subramani <sivakumar.subramani@neterion.com>
      Signed-off-by: NRastapur Santosh <santosh.rastapur@neterion.com>
      Signed-off-by: NRamkrishna Vepa <ram.vepa@neterion.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      5f548a32
    • R
      Neterion: New driver: Ethtool related · d26078fe
      Ramkrishna Vepa 提交于
      This patch implements all ethtool related entry point functions for the driver.
      
      - Changes in this submission -
              - Removed redundant #include statements
      
      - Changes in previous submissions -
              - Removed unused statistics.
              - General clean up - removed unused variables and macros.
       - Incorporated following comments from Ben Hutchings
              - No need to restart the interface in vxge_ethtool_sset
              - Do not use #ifdef ADVERTISED_XX
              - Remove unnecessart intermediate copy in vxge_ethtool_gdrvinfo
              - Use strlcpy() to ensure null-termination.
              - Use ethtool_op_get_tso, ethtool_op_set_tx_hw_csum instead
                of redefining the same code.
              - Implement get_strings_count instead of deprecated get_stats_count.
              - Don't report reporting the EEPROM length as we don't supprt
                get/set eeprom.
              - Don't set self_test_count as we don't support any self tests.
      Signed-off-by: NSivakumar Subramani <sivakumar.subramani@neterion.com>
      Signed-off-by: NRastapur Santosh <santosh.rastapur@neterion.com>
      Signed-off-by: NRamkrishna Vepa <ram.vepa@neterion.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d26078fe
    • R
      Neterion: New driver: Main entry points · 703da5a1
      Ramkrishna Vepa 提交于
      This patch implements all the driver entry point functions.
      - Definition of all module loadable paramters.
      - Implementation of all driver entry point functions.
      
      - Changes in this submission -
              - Fixed compilation error when enabling debug statements
              - Fixed few warnings when CONFIG_PCI_MSI is not defined
              - Removed unnecessary volatile variables
              - Removed compare_ether_addr as it causes unaligned memory access on
                the sparc64 platform.
      
      - Changes in previous submissions -
              - As per Stephen Hemminger's comments removed the following loadable
                parameters - gro, rx_& tx max_indicate_pkts, exec_mode, rx & tx
                pause_enable, tx_steering_type and intr_type.
              - Added Device ID definition in vxge-main.h instead of
                include/linux/pci_ids.h file - Reported by David Miller
       - Incorporated following review comments from Ben Hutchings
              - NAPI is always enabled (no option to turn it OFF).
              - Loadable parameters
               rx_steering_type: This loadable option is removed.
               ring_blocks: This loadable option is removed.
               The driver default settings work well in most if not all cases.
               Another patch to configure these parameters with ethtool will be
               released in the future.
       - LRO has been deprecated in favour of GRO - Bill Fink & Dave Miller's comment
       - Fixed sparse warnings - Reported by Andi Kleen
       - Removed unused variables
      Signed-off-by: NSivakumar Subramani <sivakumar.subramani@neterion.com>
      Signed-off-by: NRastapur Santosh <santosh.rastapur@neterion.com>
      Signed-off-by: NRamkrishna Vepa <ram.vepa@neterion.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      703da5a1
    • R
      Neterion: New driver: Traffic & alarm handler · 11324132
      Ramkrishna Vepa 提交于
      This patch takes care of trafic handling related APIS.
      - Interrupt Enable and disable
      - Mask / Unmask Interrupt
      - Traffic Interrupt handling.
      - Alarm Interrupt handling.
      
      - Changes in this submission -
              - General clean up - removed redundant includes, defines and macros.
      
      - Changes in previous submissions -
       - General cleanup - removed unused functions and variables.
       - Use asserts where necessary - Reported by Andi Kleen
       - Fixed sparse warnings - Reported by Andi Kleen
       - Use a prefix, "__vxge" in front of hw functions to make them globally
         unique - Ben Hutchings
      Signed-off-by: NSivakumar Subramani <sivakumar.subramani@neterion.com>
      Signed-off-by: NRastapur Santosh <santosh.rastapur@neterion.com>
      Signed-off-by: NRamkrishna Vepa <ram.vepa@neterion.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      11324132
    • R
      Neterion: New driver: Hardware init & configuration · 40a3a915
      Ramkrishna Vepa 提交于
      This patch takes care of Initialization and configuration steps of
      Neterion Inc's X3100 Series 10GbE PCIe I/O Virtualized Server Adapter.
      - Device Initialization.
      - Verification and setting of device config parameters.
      - Allocation of Tx FIFO and Rx Ring descriptors (DTR).
      - APIs to get various type of hw stats
      - APIs to configure RTS (Receive Traffic Steering)
      
      - Changes in this submission -
              - Include vmalloc header without which a compilation error occured
                on sparc64, ppc64 and IA64 plaforms.
      	- Fixed compilation warning in register_poll, write32_upper,
                write32_lower and the special write64 functions on ppc64.
              - General cleanup - removed redundant includes and defines.
      
      - Changes in previous submissions -
              - Add readq/writeq implementation for the driver for 32 bit systems -
                reported by Dave Miller.
      - Incorporated following comments from Ben Hutchings
              - Start a comment with "/**" to make it a kernel-doc comment.
              - Use prefix, "__vxge" in front of hw functions to make them globally
                unique.
              - Fixed unnecessary clearing members of *channel just before freeing
              - Use backslashes only for macro definitions and not in multi-line
                statements.
              - Used pci_find_capability instead of redefining it.
              - Used device and revision ids that are already in pdev - no need to
                read them again.
              - Used pci_save_state() and pci_restore_state() around resets.
              - Used udelay and mdelay directly instead of wrapper.
              - In __vxge_hw_device_register_poll() reset i to 0 after the
                microsecond delay loop to commence the millisecond delay loop.
              - Corrected spelling "sapper" - should be "swapper"
              - Remove too much vertical whitespace.
              - Replaced magic numbers with appropriate macros
      - Incorporated following comments from Andi Kleen [andi@firstfloor.org]
              - Reduced the arguments in functions or refactored them into smaller
              functions.
              - Allocate page sized memories used in slow path with vmalloc.
              - Use asserts where necessary.
              - Use macros instead of magic numbers.
              - Use the pci layer code instead of defining own functions
              - Remove driver wrappers such as xge_hw_device_private_set().
              - Fixed sparse warnings.
      Signed-off-by: NSivakumar Subramani <sivakumar.subramani@neterion.com>
      Signed-off-by: NRastapur Santosh <santosh.rastapur@neterion.com>
      Signed-off-by: NRamkrishna Vepa <ram.vepa@neterion.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      40a3a915
    • R
      Neterion: New driver: register set - vxge-reg.h · 66d97fed
      Ramkrishna Vepa 提交于
      - Complete Register map details of Neterion Inc's X3100 Series 10GbE PCIe I/O
        Virtualized Server Adapter.
      
      - No change from previous submission.
      
      - Changes in previous submissions -
      - Incorporated following comments from Ben Hutchings
              - Use original macros for endian checks
              - Remove VXGE_OS_PLATFORM_* macros as they are unused.
              - Converted multiple bVALX macros into single with additional
                width parameter and renamed it to vxge_bVALn.
              - Using __packed instead of pragma pack(1)
              - Added a comment of the use of a hw swapper so driver code is
                portable (does not have to change the byte order for register
                access as well as dma operations) on different ENDIAN platforms.
              - Using the <linux/pci_regs.h> definitions instead of redefing them.
              - Using the PCI capabilities registers in <linux/pci_regs.h>
                instead of redefing them.
      Signed-off-by: NSivakumar Subramani <sivakumar.subramani@neterion.com>
      Signed-off-by: NRastapur Santosh <santosh.rastapur@neterion.com>
      Signed-off-by: NRamkrishna Vepa <ram.vepa@neterion.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      66d97fed
    • R
      Neterion: New driver: Update Maintainer list · b136d1cb
      Ramkrishna Vepa 提交于
      - update to Maintainer list of S2IO 10GbE drivers (xframe/vxge).
      Signed-off-by: NSivakumar Subramani <sivakumar.subramani@neterion.com>
      Signed-off-by: NRastapur Santosh <santosh.rastapur@neterion.com>
      Signed-off-by: NRamkrishna Vepa <ram.vepa@neterion.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      b136d1cb
    • R
      Neterion: Driver help file · 5adfb64b
      Ramkrishna Vepa 提交于
      - vxge driver help text file.
      
      - No change from previous submission.
      
      - Changes in previous submissions -
        Removed the performance tuning section with instructions to disable
        time stamps and change sysctl settings - Reported by Dave Miller
        General clean up.
       - Removed tx/rx_pause, exec_mode, tx_steering_type, rx_steering_type, gro,
         intr_type, rx & tx max_indicate_pkts and exec_mode loadable parameters. The
         driver default settings work well in most if not all cases. Another patch
         to configure these parameters with ethtool will be released in the future -
         Reported by Stephen Hemminger.
      - Incorporated following fixes based on comments from Ben Hutchings
              Removed references to earlier kernel versions.
              Removed sections that are similar for all drivers -
                      Load/Unload
                      Identifying the adapter/interface
                      Boot time configuration
              Removed loadable parameter -
                      NAPI - Napi is always enabled.
                      rx_steering_type & ring_blocks - The driver default settings
                      work well in most if not all cases. Another patch to configure
                      these parameters with ethtool will be released in the future.
              Removed ethtool support section - No need to duplicate ethtool
                      docs here.
              Removed Known Issue on SUSE 9 - Doesn't apply when using a
                      current kernel.
              Removed Common Problems section - These don't apply to in-tree modules.
              Removed Available Downloads section - Not sure this belongs in-tree.
              Removed Copyright information - This notice doesn't belong in
                      the kernel.
      Signed-off-by: NSivakumar Subramani <sivakumar.subramani@neterion.com>
      Signed-off-by: NRastapur Santosh <santosh.rastapur@neterion.com>
      Signed-off-by: NRamkrishna Vepa <ram.vepa@neterion.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      5adfb64b
  2. 01 4月, 2009 5 次提交
  3. 30 3月, 2009 5 次提交
  4. 29 3月, 2009 19 次提交