]> git.openfabrics.org - ~shefty/librdmacm.git/log
~shefty/librdmacm.git
9 years agorename
Sean Hefty [Tue, 10 Feb 2015 20:27:35 +0000 (12:27 -0800)]
rename

9 years agorename
Sean Hefty [Tue, 10 Feb 2015 20:27:35 +0000 (12:27 -0800)]
rename

9 years agopop
Sean Hefty [Tue, 10 Feb 2015 20:27:20 +0000 (12:27 -0800)]
pop

9 years agopop
Sean Hefty [Tue, 10 Feb 2015 20:27:20 +0000 (12:27 -0800)]
pop

9 years agorefresh
Sean Hefty [Tue, 10 Feb 2015 20:25:35 +0000 (12:25 -0800)]
refresh

9 years agorefresh
Sean Hefty [Tue, 10 Feb 2015 20:25:35 +0000 (12:25 -0800)]
refresh

9 years agorefresh (create temporary patch)
Sean Hefty [Tue, 10 Feb 2015 20:25:35 +0000 (12:25 -0800)]
refresh (create temporary patch)

9 years agorefresh (create temporary patch)
Sean Hefty [Tue, 10 Feb 2015 20:25:35 +0000 (12:25 -0800)]
refresh (create temporary patch)

9 years agoRefresh of raccept
Sean Hefty [Tue, 10 Feb 2015 20:25:35 +0000 (12:25 -0800)]
Refresh of raccept

9 years agorefresh
Sean Hefty [Tue, 10 Feb 2015 20:24:23 +0000 (12:24 -0800)]
refresh

9 years agorefresh
Sean Hefty [Tue, 10 Feb 2015 20:24:23 +0000 (12:24 -0800)]
refresh

9 years agorefresh (create temporary patch)
Sean Hefty [Tue, 10 Feb 2015 20:24:23 +0000 (12:24 -0800)]
refresh (create temporary patch)

9 years agorefresh (create temporary patch)
Sean Hefty [Tue, 10 Feb 2015 20:24:23 +0000 (12:24 -0800)]
refresh (create temporary patch)

9 years agoRefresh of raccept
Sean Hefty [Tue, 10 Feb 2015 20:24:23 +0000 (12:24 -0800)]
Refresh of raccept

9 years agorefresh
Sean Hefty [Tue, 10 Feb 2015 20:24:01 +0000 (12:24 -0800)]
refresh

9 years agorefresh
Sean Hefty [Tue, 10 Feb 2015 20:24:01 +0000 (12:24 -0800)]
refresh

9 years agorefresh (create temporary patch)
Sean Hefty [Tue, 10 Feb 2015 20:24:01 +0000 (12:24 -0800)]
refresh (create temporary patch)

9 years agorefresh (create temporary patch)
Sean Hefty [Tue, 10 Feb 2015 20:24:01 +0000 (12:24 -0800)]
refresh (create temporary patch)

9 years agoRefresh of raccept
Sean Hefty [Tue, 10 Feb 2015 20:24:01 +0000 (12:24 -0800)]
Refresh of raccept

9 years agorsocket: Return -1 from raccept in case of EAGAIN error
Sasha Kotchubievsky [Tue, 10 Feb 2015 20:23:52 +0000 (12:23 -0800)]
rsocket: Return -1 from raccept in case of EAGAIN error

If no pending connections are present for the rsocket
marked as nonblocknig, raccept should fail with the error
EAGAIN or EWOULDBLOCK.

Signed-off-by: Sasha Kotchubievsky <sashakot@mellanox.com>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
9 years agorsocket: Return -1 from raccept in case of EAGAIN error
Sasha Kotchubievsky [Tue, 10 Feb 2015 20:23:52 +0000 (12:23 -0800)]
rsocket: Return -1 from raccept in case of EAGAIN error

If no pending connections are present for the rsocket
marked as nonblocknig, raccept should fail with the error
EAGAIN or EWOULDBLOCK.

Signed-off-by: Sasha Kotchubievsky <sashakot@mellanox.com>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
9 years agorsocket: Return -1 from raccept in case of EAGAIN error
Sean Hefty [Tue, 10 Feb 2015 20:23:52 +0000 (12:23 -0800)]
rsocket: Return -1 from raccept in case of EAGAIN error

If no pending connections are present for the rsocket
marked as nonblocknig, raccept should fail with the error
EAGAIN or EWOULDBLOCK.

Signed-off-by: Sasha Kotchubievsky <sashakot@mellanox.com>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
9 years agonew
Sean Hefty [Tue, 10 Feb 2015 20:23:52 +0000 (12:23 -0800)]
new

9 years agonew
Sean Hefty [Tue, 10 Feb 2015 20:23:52 +0000 (12:23 -0800)]
new

9 years agorsocket: Return -1 from raccept in case of EAGAIN error
Sean Hefty [Tue, 10 Feb 2015 20:23:52 +0000 (12:23 -0800)]
rsocket: Return -1 from raccept in case of EAGAIN error

If no pending connections are present for the rsocket
marked as nonblocknig, raccept should fail with the error
EAGAIN or EWOULDBLOCK.

Signed-off-by: Sasha Kotchubievsky <sashakot@mellanox.com>
9 years agocommit
Sean Hefty [Tue, 10 Feb 2015 20:08:58 +0000 (12:08 -0800)]
commit

9 years agocommit
Sean Hefty [Tue, 10 Feb 2015 20:08:58 +0000 (12:08 -0800)]
commit

9 years agorefresh
Sean Hefty [Tue, 10 Feb 2015 20:02:04 +0000 (12:02 -0800)]
refresh

9 years agorefresh
Sean Hefty [Tue, 10 Feb 2015 20:02:04 +0000 (12:02 -0800)]
refresh

9 years agorefresh (create temporary patch)
Sean Hefty [Tue, 10 Feb 2015 20:02:04 +0000 (12:02 -0800)]
refresh (create temporary patch)

9 years agorefresh (create temporary patch)
Sean Hefty [Tue, 10 Feb 2015 20:02:04 +0000 (12:02 -0800)]
refresh (create temporary patch)

9 years agoRefresh of setfl
Sean Hefty [Tue, 10 Feb 2015 20:02:04 +0000 (12:02 -0800)]
Refresh of setfl

9 years agorefresh
Sean Hefty [Tue, 10 Feb 2015 19:55:16 +0000 (11:55 -0800)]
refresh

9 years agorefresh
Sean Hefty [Tue, 10 Feb 2015 19:55:16 +0000 (11:55 -0800)]
refresh

9 years agorefresh (create temporary patch)
Sean Hefty [Tue, 10 Feb 2015 19:55:16 +0000 (11:55 -0800)]
refresh (create temporary patch)

9 years agorefresh (create temporary patch)
Sean Hefty [Tue, 10 Feb 2015 19:55:16 +0000 (11:55 -0800)]
refresh (create temporary patch)

9 years agoRefresh of setfl
Sean Hefty [Tue, 10 Feb 2015 19:55:15 +0000 (11:55 -0800)]
Refresh of setfl

9 years agorsockets: Fix F_SETFL to use an int rather than long
Sean Hefty [Tue, 10 Feb 2015 19:55:12 +0000 (11:55 -0800)]
rsockets: Fix F_SETFL to use an int rather than long

The flags are specified as an int, not a long.  The
rsocket code handles the flag incorrectly.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
9 years agorsockets: Fix F_SETFL to use an int rather than long
Sean Hefty [Tue, 10 Feb 2015 19:55:12 +0000 (11:55 -0800)]
rsockets: Fix F_SETFL to use an int rather than long

The flags are specified as an int, not a long.  The
rsocket code handles the flag incorrectly.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
9 years agonew
Sean Hefty [Tue, 10 Feb 2015 19:55:12 +0000 (11:55 -0800)]
new

9 years agonew
Sean Hefty [Tue, 10 Feb 2015 19:55:12 +0000 (11:55 -0800)]
new

9 years agorsockets: Fix F_SETFL to use an int rather than long
Sean Hefty [Tue, 10 Feb 2015 19:55:12 +0000 (11:55 -0800)]
rsockets: Fix F_SETFL to use an int rather than long

The flags are specified as an int, not a long.  The
rsocket code handles the flag incorrectly.

9 years agocommit
Sean Hefty [Fri, 6 Feb 2015 05:52:46 +0000 (21:52 -0800)]
commit

9 years agocommit
Sean Hefty [Fri, 6 Feb 2015 05:52:46 +0000 (21:52 -0800)]
commit

9 years agorefresh
Sean Hefty [Fri, 6 Feb 2015 05:23:14 +0000 (21:23 -0800)]
refresh

9 years agorefresh
Sean Hefty [Fri, 6 Feb 2015 05:23:14 +0000 (21:23 -0800)]
refresh

9 years agorefresh (create temporary patch)
Sean Hefty [Fri, 6 Feb 2015 05:23:13 +0000 (21:23 -0800)]
refresh (create temporary patch)

9 years agorefresh (create temporary patch)
Sean Hefty [Fri, 6 Feb 2015 05:23:13 +0000 (21:23 -0800)]
refresh (create temporary patch)

9 years agoRefresh of nonblock
Sean Hefty [Fri, 6 Feb 2015 05:23:13 +0000 (21:23 -0800)]
Refresh of nonblock

9 years agorefresh
Sean Hefty [Fri, 6 Feb 2015 05:17:07 +0000 (21:17 -0800)]
refresh

9 years agorefresh
Sean Hefty [Fri, 6 Feb 2015 05:17:07 +0000 (21:17 -0800)]
refresh

9 years agorefresh (create temporary patch)
Sean Hefty [Fri, 6 Feb 2015 05:17:07 +0000 (21:17 -0800)]
refresh (create temporary patch)

9 years agorefresh (create temporary patch)
Sean Hefty [Fri, 6 Feb 2015 05:17:07 +0000 (21:17 -0800)]
refresh (create temporary patch)

9 years agoRefresh of nonblock
Sean Hefty [Fri, 6 Feb 2015 05:17:07 +0000 (21:17 -0800)]
Refresh of nonblock

9 years agorsockets: Fix setting flags in rfctl
Sean Hefty [Fri, 6 Feb 2015 05:17:03 +0000 (21:17 -0800)]
rsockets: Fix setting flags in rfctl

The rfcntl() call to set rsocket flags merely OR's in
the updated flags with the existing ones, rather than
replacing them.  Also, it does not handle setting an
rsocket from nonblocking mode back to blocking mode.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
9 years agorsockets: Fix setting flags in rfctl
Sean Hefty [Fri, 6 Feb 2015 05:17:03 +0000 (21:17 -0800)]
rsockets: Fix setting flags in rfctl

The rfcntl() call to set rsocket flags merely OR's in
the updated flags with the existing ones, rather than
replacing them.  Also, it does not handle setting an
rsocket from nonblocking mode back to blocking mode.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
9 years agonew
Sean Hefty [Fri, 6 Feb 2015 05:17:03 +0000 (21:17 -0800)]
new

9 years agonew
Sean Hefty [Fri, 6 Feb 2015 05:17:03 +0000 (21:17 -0800)]
new

9 years agorsockets: Fix setting flags in rfctl
Sean Hefty [Fri, 6 Feb 2015 05:17:03 +0000 (21:17 -0800)]
rsockets: Fix setting flags in rfctl

The rfcntl() call to set rsocket flags merely OR's in
the updated flags with the existing ones, rather than
replacing them.  Also, it does not handle setting an
rsocket from nonblocking mode back to blocking mode.

9 years agocommit
Sean Hefty [Thu, 22 Jan 2015 20:53:29 +0000 (12:53 -0800)]
commit

9 years agocommit
Sean Hefty [Thu, 22 Jan 2015 20:53:29 +0000 (12:53 -0800)]
commit

9 years agorping: create persistent server threads in DETACHED state
Steve Wise [Mon, 12 Jan 2015 16:57:40 +0000 (10:57 -0600)]
rping: create persistent server threads in DETACHED state

Since the persistent server threads aren't joined, they must be created in
the DETACHED state or resources will not be cleaned up when they exit.
This results in pthread_create() failures after thousands of rping
instances are run against a persistent server.

Also check the return from all calls to pthread_create() so we don't
ignore a thread creation failure.

Signed-off-by: Steve Wise <swise@opengridcomputing.com>
9 years agoimport
Sean Hefty [Thu, 22 Jan 2015 20:46:25 +0000 (12:46 -0800)]
import

9 years agoimport
Sean Hefty [Thu, 22 Jan 2015 20:46:25 +0000 (12:46 -0800)]
import

9 years agocommit
Sean Hefty [Fri, 14 Nov 2014 18:49:01 +0000 (10:49 -0800)]
commit

9 years agocommit
Sean Hefty [Fri, 14 Nov 2014 18:49:01 +0000 (10:49 -0800)]
commit

9 years agorefresh
Sean Hefty [Fri, 14 Nov 2014 18:48:18 +0000 (10:48 -0800)]
refresh

9 years agorefresh
Sean Hefty [Fri, 14 Nov 2014 18:48:18 +0000 (10:48 -0800)]
refresh

9 years agorefresh (create temporary patch)
Sean Hefty [Fri, 14 Nov 2014 18:48:12 +0000 (10:48 -0800)]
refresh (create temporary patch)

9 years agorefresh (create temporary patch)
Sean Hefty [Fri, 14 Nov 2014 18:48:12 +0000 (10:48 -0800)]
refresh (create temporary patch)

9 years agoRefresh of 2-2-rping-ignore-flushed-compl
Sean Hefty [Fri, 14 Nov 2014 18:48:12 +0000 (10:48 -0800)]
Refresh of 2-2-rping-ignore-flushed-compl

9 years agorping: ignore flushed completions
Hariprasad S [Thu, 6 Nov 2014 09:12:57 +0000 (14:42 +0530)]
rping: ignore flushed completions

Based on original work by Steve Wise <steve@opengridcomputing.com>

Signed-off-by: Hariprasad Shenai <hariprasad@chelsio.com>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
9 years agopop
Sean Hefty [Fri, 14 Nov 2014 18:48:11 +0000 (10:48 -0800)]
pop

9 years agopop
Sean Hefty [Fri, 14 Nov 2014 18:48:11 +0000 (10:48 -0800)]
pop

9 years ago[2/2] rping: ignore flushed completions
Hariprasad S [Thu, 6 Nov 2014 09:12:57 +0000 (14:42 +0530)]
[2/2] rping: ignore flushed completions

Based on original work by Steve Wise <steve@opengridcomputing.com>

Signed-off-by: Hariprasad Shenai <hariprasad@chelsio.com>
9 years agorefresh
Sean Hefty [Fri, 14 Nov 2014 18:48:09 +0000 (10:48 -0800)]
refresh

9 years agorefresh
Sean Hefty [Fri, 14 Nov 2014 18:48:09 +0000 (10:48 -0800)]
refresh

9 years agorefresh (create temporary patch)
Sean Hefty [Fri, 14 Nov 2014 18:47:43 +0000 (10:47 -0800)]
refresh (create temporary patch)

9 years agorefresh (create temporary patch)
Sean Hefty [Fri, 14 Nov 2014 18:47:43 +0000 (10:47 -0800)]
refresh (create temporary patch)

9 years agoRefresh of 1-2-rping-fixes-race-where-ibv
Sean Hefty [Fri, 14 Nov 2014 18:47:43 +0000 (10:47 -0800)]
Refresh of 1-2-rping-fixes-race-where-ibv

9 years agopop
Sean Hefty [Fri, 14 Nov 2014 18:47:38 +0000 (10:47 -0800)]
pop

9 years agopop
Sean Hefty [Fri, 14 Nov 2014 18:47:38 +0000 (10:47 -0800)]
pop

9 years agoimport
Sean Hefty [Fri, 14 Nov 2014 18:47:25 +0000 (10:47 -0800)]
import

9 years agoimport
Sean Hefty [Fri, 14 Nov 2014 18:47:25 +0000 (10:47 -0800)]
import

9 years ago[2/2] rping: ignore flushed completions
Hariprasad S [Thu, 6 Nov 2014 09:12:57 +0000 (14:42 +0530)]
[2/2] rping: ignore flushed completions

Based on original work by Steve Wise <steve@opengridcomputing.com>

Signed-off-by: Hariprasad Shenai <hariprasad@chelsio.com>
9 years agorping: Fixes race, where ibv context was getting freed before memory was deregistered
Hariprasad S [Thu, 6 Nov 2014 09:12:56 +0000 (14:42 +0530)]
rping: Fixes race, where ibv context was getting freed before memory was deregistered

While running rping as a client without server on the other end,
rping_test_client fails and the ibv context was getting freed
before memory was deregistered. This patch fixes it.

Signed-off-by: Hariprasad Shenai <hariprasad@chelsio.com>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
9 years ago[1/2] rping: Fixes race, where ibv context was getting freed before memory was deregi...
Hariprasad S [Thu, 6 Nov 2014 09:12:56 +0000 (14:42 +0530)]
[1/2] rping: Fixes race, where ibv context was getting freed before memory was deregistered

While running rping as a client without server on the other end, rping_test_client fails
and the ibv context was getting freed before memory was deregistered. This patch fixes it.

Signed-off-by: Hariprasad Shenai <hariprasad@chelsio.com>
9 years agoexternal modifications
Sean Hefty [Fri, 14 Nov 2014 18:47:24 +0000 (10:47 -0800)]
external modifications

Modifications by tools other than StGit (e.g. git).

9 years agoexternal modifications
Sean Hefty [Fri, 14 Nov 2014 18:47:24 +0000 (10:47 -0800)]
external modifications

Modifications by tools other than StGit (e.g. git).

9 years agorsocket: Return size of received data in case of error
Sean Hefty [Wed, 8 Oct 2014 21:14:38 +0000 (14:14 -0700)]
rsocket: Return size of received data in case of error

If an error occurs processing rrecv(), we return the error.
But if we have data, we should return the size of the
available data instead.

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
9 years agoWhile waiting for a completion event, rsocket state is incorrectly
Sreedhar Kodali [Thu, 18 Sep 2014 09:05:42 +0000 (14:35 +0530)]
While waiting for a completion event, rsocket state is incorrectly
set to error when interrupted.  Instead, the caller of get
completion event should decide what to do with it based on
errno.  The fix is do not change the state to rs_error when
errno is EINTR inside get completion event.

Signed-off-by: Sreedhar Kodali <srkodali@linux.vnet.ibm.com>
Reviewed-by: Pradeep Satyanarayana <pradeeps@linux.vnet.ibm.com>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
9 years agoPerform completion event acknowledgments in batches instead
Sreedhar Kodali [Thu, 18 Sep 2014 08:59:48 +0000 (14:29 +0530)]
Perform completion event acknowledgments in batches instead
of individually to minimze locking overheads.  Size of the
completion queue decides the size of a batch.

Signed-off-by: Sreedhar Kodali <srkodali@linux.vnet.ibm.com>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
9 years agorsockets: Add fine grained interception mechanism for preload library
Sreedhar Kodali [Thu, 18 Sep 2014 06:03:21 +0000 (11:33 +0530)]
rsockets: Add fine grained interception mechanism for preload library

By default the R-Sockets pre-loading library intercepts all
the stream and datagram sockets belonging to a launched
program processes and threads.

However, distributed application and database servers may
require fine grained interception to ensure that only the
processes which are listening for remote connections on the
RDMA transport need to be enabled with RDMA while remaining
can continue to use TCP as before.  This allows proper
communication happening between various server components locally.

A configuration file based mechanism is introduced to facilitate
this fine grained interception mechanism.  As part of preload
initialization, the configuration file is scanned and an
in-memory record store is created with all the entries found.
When a request is made to intercept a socket, its attributes
are cross checked with stored records to see whether we
should proceed with rsocket switch over.

Note: Right now, the fine grained interception mechanism is
enabled only for newly created sockets.  Going forward,
this can be extened to select connections based on the
specified host/IP addresses and ports as well.

"preload_config" is the name of the configuration file which
should exist in the default configuration location
(usually the full path to this configuration file is:
<install-root>/etc/rdma/rsocket/preload_config)
of an installed rsocket library.

The sample format for this configuration file is shown below:

# Sample config file for preloading in a program specific way
#
# Each line entry should have the following format:
#
#   program domain type protocol
#
# where,
#
# program    - program or command name (string without spaces)
# domain     - the socket domain: AF_INET / AF_INET6 / AF_IB
# type       - the socket type: SOCK_STREAM / SOCK_DGRAM
# protocol   - the socket protocol: IPPROTO_TCP / IPPROTO_UDP
#
# The wildcard value of '*' is supported for any
#
# Note:
#  Lines beginning with '#' character are treated as comments.

Signed-off-by: Sreedhar Kodali <srkodali@linux.vnet.ibm.com>
Reviewed-by: Pradeep Satyanarayana <pradeeps@linux.vnet.ibm.com>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
9 years agorsockets: Support calling listen multiple times on same rsocket
Sean Hefty [Thu, 4 Sep 2014 18:19:28 +0000 (11:19 -0700)]
rsockets: Support calling listen multiple times on same rsocket

Standard sockets allows an application to call listen() multiple
times on the same socket without error.  This allows a multi-threaded
app to call listen from all threads.

rsockets will fail the second listen call.  Modify the behavior to
match standard sockets.

Problem reported by: Sreedhar Kodali <srkodali@linux.vnet.ibm.com>

Signed-off-by: Sean Hefty <sean.hefty@intel.com>
9 years agorsocket: Index map item is cleaned before it is used in iomapping cleanup
Sasha Kotchubievsky [Thu, 4 Sep 2014 16:16:21 +0000 (09:16 -0700)]
rsocket: Index map item is cleaned before it is used in iomapping cleanup

rs_free function clears index map item corresponding to the roscket
(in idm_clear called from rs_remove) and then uses it in
iomapping cleanup (in riounmap called from rs_free_iomappings).

Signed-off-by: Sasha Kotchubievsky <sashakot@mellanox.com>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
9 years agocommit
Sean Hefty [Mon, 18 Aug 2014 20:53:15 +0000 (13:53 -0700)]
commit

9 years agocommit
Sean Hefty [Mon, 18 Aug 2014 20:53:15 +0000 (13:53 -0700)]
commit

9 years agoRenumber 1.0.19-1 release to 1.0.19.1 v1.0.19.1
Sean Hefty [Mon, 18 Aug 2014 20:52:22 +0000 (13:52 -0700)]
Renumber 1.0.19-1 release to 1.0.19.1

9 years agonew
Sean Hefty [Mon, 18 Aug 2014 20:52:22 +0000 (13:52 -0700)]
new

9 years agonew
Sean Hefty [Mon, 18 Aug 2014 20:52:22 +0000 (13:52 -0700)]
new