[rds-devel] [PATCH 00/19] RDS loop/tcp on network namespace

Jie Liu jeff.liu at oracle.com
Sun Oct 7 05:13:53 PDT 2012


Recently, I have tried to improve RDS with network namespace support, so that
it could works on linux containers.

By default, RDS have global sysctls, statistics as well as per transports statistics, like:
connection count, sock count, etc... and also, it can only bind connection on init_ns.

Here is an initial patch set, it teach RDS loop/tcp works per netns.
For infiniband/iWARP, I also worked out a basicially patch set, but I have not yet
test it since I have to share with Venkat's servers with those kind of devices enabled,
Here includes some changes to IB/IW source code, however, they are not really make sense,
the changes is required to make compiler happy without warnnings.

Any comments are appreciated!

Thanks,
-Jeff

---
 include/net/net_namespace.h |    6 ++
 include/net/netns/rds.h     |   61 +++++++++++++++++
 net/rds/af_rds.c            |  156 +++++++++++++++++++++++++++++++------------
 net/rds/bind.c              |   42 +++++++-----
 net/rds/cong.c              |  150 +++++++++++++++++++++++------------------
 net/rds/connection.c        |   59 +++++++++-------
 net/rds/ib.c                |    4 +-
 net/rds/ib.h                |    9 ++-
 net/rds/ib_cm.c             |   10 ++--
 net/rds/ib_recv.c           |   18 +++--
 net/rds/ib_send.c           |    9 ++-
 net/rds/ib_stats.c          |    3 +-
 net/rds/iw.c                |    4 +-
 net/rds/iw.h                |    9 ++-
 net/rds/iw_cm.c             |   10 ++--
 net/rds/iw_recv.c           |   48 +++++++------
 net/rds/iw_send.c           |   14 ++--
 net/rds/iw_stats.c          |    3 +-
 net/rds/loop.c              |   54 +++++++++++-----
 net/rds/loop.h              |    1 +
 net/rds/message.c           |   20 +++--
 net/rds/page.c              |   14 ++--
 net/rds/rdma.c              |   15 ++--
 net/rds/rdma_transport.c    |    6 +-
 net/rds/rdma_transport.h    |    4 +-
 net/rds/rds.h               |   86 ++++++++++++++----------
 net/rds/recv.c              |   29 +++++----
 net/rds/send.c              |   45 ++++++++-----
 net/rds/stats.c             |    9 +--
 net/rds/sysctl.c            |   71 +++++++++++++++-----
 net/rds/tcp.c               |  129 +++++++++++++++++++++++++-----------
 net/rds/tcp.h               |   15 ++--
 net/rds/tcp_connect.c       |    3 +-
 net/rds/tcp_listen.c        |   27 ++++---
 net/rds/tcp_recv.c          |   14 +++--
 net/rds/tcp_send.c          |    7 ++-
 net/rds/tcp_stats.c         |    3 +-
 net/rds/threads.c           |   27 +++++---
 net/rds/transport.c         |    9 ++-
 39 files changed, 775 insertions(+), 428 deletions(-)
 create mode 100644 include/net/netns/rds.h



More information about the rds-devel mailing list