1. 16 7月, 2008 21 次提交
  2. 15 7月, 2008 19 次提交
    • K
      x86: Fix compile error with CONFIG_AS_CFI=n · 3f1c3872
      Kevin Winchester 提交于
         AS      arch/x86/lib/csum-copy_64.o
      arch/x86/lib/csum-copy_64.S: Assembler messages:
      arch/x86/lib/csum-copy_64.S:48: Error: Macro `ignore' was already defined
      make[1]: *** [arch/x86/lib/csum-copy_64.o] Error 1
      make: *** [arch/x86/lib] Error 2
      
      It appears that csum-copy_64.S and dwarf2.h both define an ignore macro. 
      I would expect one of them can be renamed quite easily, unless they 
      are references elsewhere. 
      
      Caused-by-commit: 392a0fc9
          x86: merge dwarf2 headers
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      3f1c3872
    • O
      RDMA/addr: Keep pointer to netdevice in struct rdma_dev_addr · 64c5e613
      Or Gerlitz 提交于
      Keep a pointer to the local (src) netdevice in struct rdma_dev_addr,
      and copy it in as part of rdma_copy_addr().  Use rdma_translate_ip()
      in cma_new_conn_id() to reduce some code duplication and also make
      sure the src_dev member gets set.
      
      In a high-availability configuration the netdevice pointer can be used
      by the RDMA CM to align RDMA sessions to use the same links as the IP
      stack does under fail-over and route change cases.
      Signed-off-by: NOr Gerlitz <ogerlitz@voltaire.com>
      Signed-off-by: NRoland Dreier <rolandd@cisco.com>
      64c5e613
    • S
      RDMA/core: Add local DMA L_Key support · 96f15c03
      Steve Wise 提交于
      - Change the IB_DEVICE_ZERO_STAG flag to the transport-neutral name
        IB_DEVICE_LOCAL_DMA_LKEY, which is used by iWARP RNICs to indicate 0
        STag support and IB HCAs to indicate reserved L_Key support.
      
      - Add a u32 local_dma_lkey member to struct ib_device.  Drivers fill
        this in with the appropriate local DMA L_Key (if they support it).
      
      - Fix up the drivers using this flag.
      Signed-off-by: NSteve Wise <swise@opengridcomputing.com>
      Signed-off-by: NRoland Dreier <rolandd@cisco.com>
      96f15c03
    • R
      IB/mlx4: Add support for blocking multicast loopback packets · 521e575b
      Ron Livne 提交于
      Add support for handling the IB_QP_CREATE_MULTICAST_BLOCK_LOOPBACK
      flag by using the per-multicast group loopback blocking feature of
      mlx4 hardware.
      Signed-off-by: NRon Livne <ronli@voltaire.com>
      Signed-off-by: NRoland Dreier <rolandd@cisco.com>
      521e575b
    • R
      IB/core: Add support for multicast loopback blocking · 47ee1b9f
      Ron Livne 提交于
      This patch also adds a creation flag for QPs,
      IB_QP_CREATE_MULTICAST_BLOCK_LOOPBACK, which when set means that
      multicast sends from the QP to a group that the QP is attached to will
      not be looped back to the QP's receive queue.  This can be used to
      save receive resources when a consumer does not want a local copy of
      multicast traffic; for example IPoIB must waste CPU time throwing away
      such local copies of multicast traffic.
      
      This patch also adds a device capability flag that shows whether a
      device supports this feature or not.
      Signed-off-by: NRon Livne <ronli@voltaire.com>
      Signed-off-by: NRoland Dreier <rolandd@cisco.com>
      47ee1b9f
    • S
      RDMA/core: Add iWARP protocol statistics attributes in sysfs · 7f624d02
      Steve Wise 提交于
      This patch adds a sysfs attribute group called "proto_stats" under
      /sys/class/infiniband/$device/ and populates this group with protocol
      statistics if they exist for a given device.  Currently, only iWARP
      stats are defined, but the code is designed to allow InfiniBand
      protocol stats if they become available.  These stats are per-device
      and more importantly -not- per port.
      
      Details:
      
      - Add union rdma_protocol_stats in ib_verbs.h.  This union allows
        defining transport-specific stats.  Currently only iwarp stats are
        defined.
      
      - Add struct iw_protocol_stats to define the current set of iwarp
        protocol stats.
      
      - Add new ib_device method called get_proto_stats() to return protocol
        statistics.
      
      - Add logic in core/sysfs.c to create iwarp protocol stats attributes
        if the device is an RNIC and has a get_proto_stats() method.
      Signed-off-by: NSteve Wise <swise@opengridcomputing.com>
      Signed-off-by: NRoland Dreier <rolandd@cisco.com>
      7f624d02
    • S
      RDMA/core: Add memory management extensions support · 00f7ec36
      Steve Wise 提交于
      This patch adds support for the IB "base memory management extension"
      (BMME) and the equivalent iWARP operations (which the iWARP verbs
      mandates all devices must implement).  The new operations are:
      
       - Allocate an ib_mr for use in fast register work requests.
      
       - Allocate/free a physical buffer lists for use in fast register work
         requests.  This allows device drivers to allocate this memory as
         needed for use in posting send requests (eg via dma_alloc_coherent).
      
       - New send queue work requests:
         * send with remote invalidate
         * fast register memory region
         * local invalidate memory region
         * RDMA read with invalidate local memory region (iWARP only)
      
      Consumer interface details:
      
       - A new device capability flag IB_DEVICE_MEM_MGT_EXTENSIONS is added
         to indicate device support for these features.
      
       - New send work request opcodes IB_WR_FAST_REG_MR, IB_WR_LOCAL_INV,
         IB_WR_RDMA_READ_WITH_INV are added.
      
       - A new consumer API function, ib_alloc_mr() is added to allocate
         fast register memory regions.
      
       - New consumer API functions, ib_alloc_fast_reg_page_list() and
         ib_free_fast_reg_page_list() are added to allocate and free
         device-specific memory for fast registration page lists.
      
       - A new consumer API function, ib_update_fast_reg_key(), is added to
         allow the key portion of the R_Key and L_Key of a fast registration
         MR to be updated.  Consumers call this if desired before posting
         a IB_WR_FAST_REG_MR work request.
      
      Consumers can use this as follows:
      
       - MR is allocated with ib_alloc_mr().
      
       - Page list memory is allocated with ib_alloc_fast_reg_page_list().
      
       - MR R_Key/L_Key "key" field is updated with ib_update_fast_reg_key().
      
       - MR made VALID and bound to a specific page list via
         ib_post_send(IB_WR_FAST_REG_MR)
      
       - MR made INVALID via ib_post_send(IB_WR_LOCAL_INV),
         ib_post_send(IB_WR_RDMA_READ_WITH_INV) or an incoming send with
         invalidate operation.
      
       - MR is deallocated with ib_dereg_mr()
      
       - page lists dealloced via ib_free_fast_reg_page_list().
      
      Applications can allocate a fast register MR once, and then can
      repeatedly bind the MR to different physical block lists (PBLs) via
      posting work requests to a send queue (SQ).  For each outstanding
      MR-to-PBL binding in the SQ pipe, a fast_reg_page_list needs to be
      allocated (the fast_reg_page_list is owned by the low-level driver
      from the consumer posting a work request until the request completes).
      Thus pipelining can be achieved while still allowing device-specific
      page_list processing.
      
      The 32-bit fast register memory key/STag is composed of a 24-bit index
      and an 8-bit key.  The application can change the key each time it
      fast registers thus allowing more control over the peer's use of the
      key/STag (ie it can effectively be changed each time the rkey is
      rebound to a page list).
      Signed-off-by: NSteve Wise <swise@opengridcomputing.com>
      Signed-off-by: NRoland Dreier <rolandd@cisco.com>
      00f7ec36
    • D
      RDMA: Improve include file coding style · 4deccd6d
      Dotan Barak 提交于
      Remove subversion $Id lines and improve readability by fixing other
      coding style problems pointed out by checkpatch.pl.
      Signed-off-by: NDotan Barak <dotanba@gmail.com>
      Signed-off-by: NRoland Dreier <rolandd@cisco.com>
      4deccd6d
    • S
      RDMA: Fix license text · a9474917
      Sean Hefty 提交于
      The license text for several files references a third software license
      that was inadvertently copied in.  Update the license to what was
      intended.  This update was based on a request from HP.
      Signed-off-by: NSean Hefty <sean.hefty@intel.com>
      Signed-off-by: NRoland Dreier <rolandd@cisco.com>
      a9474917
    • D
      drm/radeon: fixup issue with radeon and PAT support. · 242e3df8
      Dave Airlie 提交于
      With new userspace libpciaccess we can get a conflicting mapping
      on the PCIE GART table in the video RAM. Always try and map it _wc.
      Signed-off-by: NDave Airlie <airlied@redhat.com>
      242e3df8
    • R
      x86: Rename "ignore" macro in <asm/dwarf2.h> to avoid collision · 4d3702b6
      Roland Dreier 提交于
      Commit 70f1bba4 ("x86: use ignore macro instead of hash comment") breaks
      the 64-bit x86 build on toolchains that have CONFIG_AS_CFI undefined with:
      
          arch/x86/lib/csum-copy_64.S:48: Error: Macro `ignore' was already defined
      
      because <asm/dwarf2.h> now uses the ignore macro name itself.  Fix this
      by changing to __cfi_ignore in dwarf2.h.
      Signed-off-by: NRoland Dreier <rolandd@cisco.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      4d3702b6
    • J
      i2c: Add detection capability to new-style drivers · 4735c98f
      Jean Delvare 提交于
      Add a mechanism to let new-style i2c drivers optionally autodetect
      devices they would support on selected buses and ask i2c-core to
      instantiate them. This is a replacement for legacy i2c drivers, much
      cleaner.
      
      Where drivers had to implement both a legacy i2c_driver and a
      new-style i2c_driver so far, this mechanism makes it possible to get
      rid of the legacy i2c_driver and implement both enumerated and
      detected device support with just one (new-style) i2c_driver.
      
      Here is a quick conversion guide for these drivers, step by step:
      
      * Delete the legacy driver definition, registration and removal.
        Delete the attach_adapter and detach_client methods of the legacy
        driver.
      
      * Change the prototype of the legacy detect function from
          static int foo_detect(struct i2c_adapter *adapter, int address, int kind);
        to
          static int foo_detect(struct i2c_client *client, int kind,
          			  struct i2c_board_info *info);
      
      * Set the new-style driver detect callback to this new function, and
        set its address_data to &addr_data (addr_data is generally provided
        by I2C_CLIENT_INSMOD.)
      
      * Add the appropriate class to the new-style driver. This is
        typically the class the legacy attach_adapter method was checking
        for. Class checking is now mandatory (done by i2c-core.) See
        <linux/i2c.h> for the list of available classes.
      
      * Remove the i2c_client allocation and freeing from the detect
        function. A pre-allocated client is now handed to you by i2c-core,
        and is freed automatically.
      
      * Make the detect function fill the type field of the i2c_board_info
        structure it was passed as a parameter, and return 0, on success. If
        the detection fails, return -ENODEV.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      4735c98f
    • W
      i2c: New-style EEPROM driver using device IDs · 2b7a5056
      Wolfram Sang 提交于
      Add a new-style driver for most I2C EEPROMs, giving sysfs read/write
      access to their data. Tested with various chips and clock rates.
      Signed-off-by: NWolfram Sang <w.sang@pengutronix.de>
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      2b7a5056
    • J
      i2c: Export the i2c_bus_type symbol · e9ca9eb9
      Jon Smirl 提交于
      Export the root of the i2c bus so that PowerPC device tree code can
      iterate over devices on the i2c bus.
      Signed-off-by: NJon Smirl <jonsmirl@gmail.com>
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      e9ca9eb9
    • J
      i2c-dev: Delete empty detach_client callback · f6a71105
      Jean Delvare 提交于
      Implementing detach_client is optional, so there is no point in
      an empty implementation.
      
      Likewise, i2c driver IDs are optional, and we don't need one.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      f6a71105
    • J
      i2c-algo-pcf: Drop unused struct members · e3e7fc3c
      Jean Delvare 提交于
      Struct members udelay and timeout aren't used anywhere, so drop them.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      Acked-by: NEric Brower <ebrower@gmail.com>
      e3e7fc3c
    • E
      i2c-algo-pcf: Multi-master lost-arbitration improvement · 0573d11b
      Eric Brower 提交于
      Improve lost-arbitration handling of PCF8584.  This is necessary for
      support of a currently out-of-kernel driver for Sun Microsystems E250
      environmental management; perhaps others.
      Signed-off-by: NEric Brower <ebrower@gmail.com>
      Acked-by: NDan Smolik <marvin@mydatex.cz>
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      0573d11b
    • J
      i2c: Let bus drivers add SPD to their class · 3401b2ff
      Jean Delvare 提交于
      Let general purpose I2C/SMBus bus drivers add SPD to their class. Once
      this is done, we will be able to tell the eeprom driver to only probe
      for SPD EEPROMs and similar on these buses.
      
      Note that I took a conservative approach here, adding I2C_CLASS_SPD to
      many drivers that have no idea whether they can host SPD EEPROMs or not.
      This is to make sure that the eeprom driver doesn't stop probing buses
      where SPD EEPROMs or equivalent live.
      
      So, bus driver maintainers and users should feel free to remove the SPD
      class from drivers those buses never have SPD EEPROMs or they don't
      want the eeprom driver to bind to them. Likewise, feel free to add the
      SPD class to any bus driver I might have missed.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      3401b2ff
    • J
      i2c: Let framebuffer drivers set their I2C bus class to DDC · c1b6b4f2
      Jean Delvare 提交于
      Let framebuffer drivers set their I2C bus class to DDC. Once this is
      done, we will be able to tell the eeprom driver to only probe for
      EDID EEPROMs on these buses.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      c1b6b4f2