<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/include/rdma, branch v3.0.81</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/include/rdma?h=v3.0.81</id>
<link rel='self' href='https://git.amat.us/linux/atom/include/rdma?h=v3.0.81'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2011-05-26T19:13:57Z</updated>
<entry>
<title>Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband</title>
<updated>2011-05-26T19:13:57Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-05-26T19:13:57Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4c171acc20794af16a27da25e11ec4e9cad5d9fa'/>
<id>urn:sha1:4c171acc20794af16a27da25e11ec4e9cad5d9fa</id>
<content type='text'>
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
  RDMA/cma: Save PID of ID's owner
  RDMA/cma: Add support for netlink statistics export
  RDMA/cma: Pass QP type into rdma_create_id()
  RDMA: Update exported headers list
  RDMA/cma: Export enum cma_state in &lt;rdma/rdma_cm.h&gt;
  RDMA/nes: Add a check for strict_strtoul()
  RDMA/cxgb3: Don't post zero-byte read if endpoint is going away
  RDMA/cxgb4: Use completion objects for event blocking
  IB/srp: Fix integer -&gt; pointer cast warnings
  IB: Add devnode methods to cm_class and umad_class
  IB/mad: Return EPROTONOSUPPORT when an RDMA device lacks the QP required
  IB/uverbs: Add devnode method to set path/mode
  RDMA/ucma: Add .nodename/.mode to tell userspace where to create device node
  RDMA: Add netlink infrastructure
  RDMA: Add error handling to ib_core_init()
</content>
</entry>
<entry>
<title>RDMA/cma: Add support for netlink statistics export</title>
<updated>2011-05-25T20:46:23Z</updated>
<author>
<name>Nir Muchtar</name>
<email>nirm@voltaire.com</email>
</author>
<published>2011-01-03T15:33:53Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=753f618ae03a699cc30044d64eea84165016dc6e'/>
<id>urn:sha1:753f618ae03a699cc30044d64eea84165016dc6e</id>
<content type='text'>
Add callbacks and data types for statistics export of all current
devices/ids.  The schema for RDMA CM is a series of netlink messages.
Each one contains an rdma_cm_stat struct.  Additionally, two netlink
attributes are created for the addresses for each message (if
applicable).

Their types used are:
RDMA_NL_RDMA_CM_ATTR_SRC_ADDR (The source address for this ID)
RDMA_NL_RDMA_CM_ATTR_DST_ADDR (The destination address for this ID)
sockaddr_* structs are encapsulated within these attributes.

In other words, every transaction contains a series of messages like:

-------message 1-------
struct rdma_cm_id_stats {
       __u32 qp_num;
       __u32 bound_dev_if;
       __u32 port_space;
       __s32 pid;
       __u8 cm_state;
       __u8 node_type;
       __u8 port_num;
       __u8 reserved;
}
RDMA_NL_RDMA_CM_ATTR_SRC_ADDR attribute - contains the source address
RDMA_NL_RDMA_CM_ATTR_DST_ADDR attribute - contains the destination address
-------end 1-------
-------message 2-------
struct rdma_cm_id_stats
RDMA_NL_RDMA_CM_ATTR_SRC_ADDR attribute
RDMA_NL_RDMA_CM_ATTR_DST_ADDR attribute
-------end 2-------

Signed-off-by: Nir Muchtar &lt;nirm@voltaire.com&gt;
Signed-off-by: Roland Dreier &lt;roland@purestorage.com&gt;
</content>
</entry>
<entry>
<title>RDMA/cma: Pass QP type into rdma_create_id()</title>
<updated>2011-05-25T20:46:23Z</updated>
<author>
<name>Sean Hefty</name>
<email>sean.hefty@intel.com</email>
</author>
<published>2010-04-01T17:08:41Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b26f9b9949013fec31b23c426fc463164ae08891'/>
<id>urn:sha1:b26f9b9949013fec31b23c426fc463164ae08891</id>
<content type='text'>
The RDMA CM currently infers the QP type from the port space selected
by the user.  In the future (eg with RDMA_PS_IB or XRC), there may not
be a 1-1 correspondence between port space and QP type.  For netlink
export of RDMA CM state, we want to export the QP type to userspace,
so it is cleaner to explicitly associate a QP type to an ID.

Modify rdma_create_id() to allow the user to specify the QP type, and
use it to make our selections of datagram versus connected mode.

Signed-off-by: Sean Hefty &lt;sean.hefty@intel.com&gt;
Signed-off-by: Roland Dreier &lt;roland@purestorage.com&gt;
</content>
</entry>
<entry>
<title>RDMA: Update exported headers list</title>
<updated>2011-05-25T20:46:23Z</updated>
<author>
<name>Roland Dreier</name>
<email>roland@purestorage.com</email>
</author>
<published>2011-05-10T19:36:01Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9a7147b506ccae8552b0cf218b3c02982012eb4d'/>
<id>urn:sha1:9a7147b506ccae8552b0cf218b3c02982012eb4d</id>
<content type='text'>
Various RDMA headers are intended to be exported to userspace, so add
them to the headers-y list.  Add a (strictly speaking, superfluous)
include of &lt;linux/types.h&gt; to avoid a headers_check warning.

Signed-off-by: Roland Dreier &lt;roland@purestorage.com&gt;
</content>
</entry>
<entry>
<title>RDMA/cma: Export enum cma_state in &lt;rdma/rdma_cm.h&gt;</title>
<updated>2011-05-25T20:46:22Z</updated>
<author>
<name>Nir Muchtar</name>
<email>nirm@voltaire.com</email>
</author>
<published>2011-05-20T18:46:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=550e5ca77e96989c5e19f60e017205b2bcc615a5'/>
<id>urn:sha1:550e5ca77e96989c5e19f60e017205b2bcc615a5</id>
<content type='text'>
Move cma.c's internal definition of enum cma_state to enum rdma_cm_state
in an exported header so that it can be exported via RDMA netlink.

Signed-off-by: Nir Muchtar &lt;nirm@voltaire.com&gt;
Signed-off-by: Roland Dreier &lt;roland@purestorage.com&gt;
</content>
</entry>
<entry>
<title>Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6</title>
<updated>2011-05-20T20:43:21Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-05-20T20:43:21Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=06f4e926d256d902dd9a53dcb400fd74974ce087'/>
<id>urn:sha1:06f4e926d256d902dd9a53dcb400fd74974ce087</id>
<content type='text'>
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1446 commits)
  macvlan: fix panic if lowerdev in a bond
  tg3: Add braces around 5906 workaround.
  tg3: Fix NETIF_F_LOOPBACK error
  macvlan: remove one synchronize_rcu() call
  networking: NET_CLS_ROUTE4 depends on INET
  irda: Fix error propagation in ircomm_lmp_connect_response()
  irda: Kill set but unused variable 'bytes' in irlan_check_command_param()
  irda: Kill set but unused variable 'clen' in ircomm_connect_indication()
  rxrpc: Fix set but unused variable 'usage' in rxrpc_get_transport()
  be2net: Kill set but unused variable 'req' in lancer_fw_download()
  irda: Kill set but unused vars 'saddr' and 'daddr' in irlan_provider_connect_indication()
  atl1c: atl1c_resume() is only used when CONFIG_PM_SLEEP is defined.
  rxrpc: Fix set but unused variable 'usage' in rxrpc_get_peer().
  rxrpc: Kill set but unused variable 'local' in rxrpc_UDP_error_handler()
  rxrpc: Kill set but unused variable 'sp' in rxrpc_process_connection()
  rxrpc: Kill set but unused variable 'sp' in rxrpc_rotate_tx_window()
  pkt_sched: Kill set but unused variable 'protocol' in tc_classify()
  isdn: capi: Use pr_debug() instead of ifdefs.
  tg3: Update version to 3.119
  tg3: Apply rx_discards fix to 5719/5720
  ...

Fix up trivial conflicts in arch/x86/Kconfig and net/mac80211/agg-tx.c
as per Davem.
</content>
</entry>
<entry>
<title>RDMA: Add netlink infrastructure</title>
<updated>2011-05-20T18:46:11Z</updated>
<author>
<name>Roland Dreier</name>
<email>roland@purestorage.com</email>
</author>
<published>2011-05-20T18:46:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b2cbae2c248776d81cc265ff7d48405b6a4cc463'/>
<id>urn:sha1:b2cbae2c248776d81cc265ff7d48405b6a4cc463</id>
<content type='text'>
Add basic RDMA netlink infrastructure that allows for registration of
RDMA clients for which data is to be exported and supplies message
construction callbacks.

Signed-off-by: Nir Muchtar &lt;nirm@voltaire.com&gt;

[ Reorganize a few things, add CONFIG_NET dependency.  - Roland ]

Signed-off-by: Roland Dreier &lt;roland@purestorage.com&gt;
</content>
</entry>
<entry>
<title>RDMA/iwcm: Get rid of enum iw_cm_event_status</title>
<updated>2011-05-10T05:23:57Z</updated>
<author>
<name>Roland Dreier</name>
<email>roland@purestorage.com</email>
</author>
<published>2011-05-10T05:23:57Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d0c49bf391b2e230a8f3ae4486da7df440f1216d'/>
<id>urn:sha1:d0c49bf391b2e230a8f3ae4486da7df440f1216d</id>
<content type='text'>
The IW_CM_EVENT_STATUS_xxx values were used in only a couple of places;
cma.c uses -Exxx values instead, and so do the amso1100, cxgb3 and cxgb4
drivers -- only nes was using the enum values (with the mild consequence
that all nes connection failures were treated as generic errors rather
than reported as timeouts or rejections).

We can fix this confusion by getting rid of enum iw_cm_event_status and
using a plain int for struct iw_cm_event.status, and converting nes to
use -Exxx as the other iWARP drivers do.

This also gets rid of the warning

    drivers/infiniband/core/cma.c: In function 'cma_iw_handler':
    drivers/infiniband/core/cma.c:1333:3: warning: case value '4294967185' not in enumerated type 'enum iw_cm_event_status'
    drivers/infiniband/core/cma.c:1336:3: warning: case value '4294967186' not in enumerated type 'enum iw_cm_event_status'
    drivers/infiniband/core/cma.c:1332:3: warning: case value '4294967192' not in enumerated type 'enum iw_cm_event_status'

Signed-off-by: Roland Dreier &lt;roland@purestorage.com&gt;
Reviewed-by: Steve Wise &lt;swise@opengridcomputing.com&gt;
Reviewed-by: Sean Hefty &lt;sean.hefty@intel.com&gt;
Reviewed-by: Faisal Latif &lt;faisal.latif@intel.com&gt;
</content>
</entry>
<entry>
<title>RDMA/cma: Add an ID_REUSEADDR option</title>
<updated>2011-05-10T05:06:10Z</updated>
<author>
<name>Hefty, Sean</name>
<email>sean.hefty@intel.com</email>
</author>
<published>2011-05-10T05:06:10Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=a9bb79128aa659f97b774b97c9bb1bdc74444595'/>
<id>urn:sha1:a9bb79128aa659f97b774b97c9bb1bdc74444595</id>
<content type='text'>
Lustre requires that clients bind to a privileged port number before
connecting to a remote server.  On larger clusters (typically more
than about 1000 nodes), the number of privileged ports is exhausted,
resulting in lustre being unusable.

To handle this, we add support for reusable addresses to the rdma_cm.
This mimics the behavior of the socket option SO_REUSEADDR.  A user
may set an rdma_cm_id to reuse an address before calling
rdma_bind_addr() (explicitly or implicitly).  If set, other
rdma_cm_id's may be bound to the same address, provided that they all
have reuse enabled, and there are no active listens.

If rdma_listen() is called on an rdma_cm_id that has reuse enabled, it
will only succeed if there are no other id's bound to that same
address.  The reuse option is exported to user space.  The behavior of
the kernel reuse implementation was verified against that given by
sockets.

This patch is derived from a path by Ira Weiny &lt;weiny2@llnl.gov&gt;

Signed-off-by: Sean Hefty &lt;sean.hefty@intel.com&gt;
Signed-off-by: Roland Dreier &lt;roland@purestorage.com&gt;
</content>
</entry>
<entry>
<title>ethtool: Call ethtool's get/set_settings callbacks with cleaned data</title>
<updated>2011-04-29T21:01:30Z</updated>
<author>
<name>David Decotigny</name>
<email>decot@google.com</email>
</author>
<published>2011-04-27T18:32:38Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8ae6daca85c8bbd6a32c382db5e2a2a989f8bed2'/>
<id>urn:sha1:8ae6daca85c8bbd6a32c382db5e2a2a989f8bed2</id>
<content type='text'>
This makes sure that when a driver calls the ethtool's
get/set_settings() callback of another driver, the data passed to it
is clean. This guarantees that speed_hi will be zeroed correctly if
the called callback doesn't explicitely set it: we are sure we don't
get a corrupted speed from the underlying driver. We also take care of
setting the cmd field appropriately (ETHTOOL_GSET/SSET).

This applies to dev_ethtool_get_settings(), which now makes sure it
sets up that ethtool command parameter correctly before passing it to
drivers. This also means that whoever calls dev_ethtool_get_settings()
does not have to clean the ethtool command parameter. This function
also becomes an exported symbol instead of an inline.

All drivers visible to make allyesconfig under x86_64 have been
updated.

Signed-off-by: David Decotigny &lt;decot@google.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
