mbox

[v2,net-next,00/16] tipc: make use of kernel threads to simplify things

Message ID 1371480891-5264-1-git-send-email-paul.gortmaker@windriver.com
State Accepted, archived
Delegated to: David Miller
Headers show

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux.git tipc_net-next

Message

Paul Gortmaker June 17, 2013, 2:54 p.m. UTC
This is a rework of the content sent earlier[1], with the following changes:

	-drop the Kconfig --> modparam conversion patch; this was
	 requested to be replaced[2] with a dynamic port quantity resizing.
	 Ying and Erik were discussing how best to achieve this, and then
	 vacation schedules got in the way, so implementing that will
	 come (hopefully) in the next round.

	-rework the sk_rcvbuf patch to allow memory resizing via sysctl
	 as per what Ying and Neil discussed[3]

	-add 4 more seemingly straigtforward and relatively small changes
	 from Ying (the last 4 in the series).

	-add cosmetic UAPI comment update patch from Ying.

That said, the largest change is still the one where we make use of
the fact that linux supports kernel threads and do the server like
operations within kernel threads.  As Jon says:  

   We remove the last remnants of the TIPC native API, to make it
   possible to simplify locking policy and solve a problem with lost
   topology events.
 
   First, we introduce a socket-based alternative to the native API.

   Second, we convert the two remaining users of the native API, the 
   TIPC internal topology server and the configuarion server, to use the
   new API. 

   Third, we remove the remaining code pertaining to the native API.

I have re-tested this collection of commits between 32 and 64 bit x86
machines using the standard tipc test suite, and build tested for ppc.

[1] http://patchwork.ozlabs.org/patch/247687/
[2] http://patchwork.ozlabs.org/patch/247680/
[3] http://patchwork.ozlabs.org/patch/247688/

Thanks,
Paul.
---
Cc: Neil Horman <nhorman@tuxdriver.com>

The following changes since commit 2e0c9e7911465b29daf85f7de97949004bf7b31c:

  net: sctp: sctp_association_init: put refs in reverse order (2013-06-14 15:38:36 -0700)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux.git tipc_net-next

for you to fetch changes up to d4e1208e0e85255c644160be879e6f2d0b6bdcf9:

  tipc: remove dev_base_lock use from enable_bearer (2013-06-17 10:13:30 -0400)

----------------------------------------------------------------
Erik Hugne (1):
      tipc: allow implicit connect for stream sockets

Paul Gortmaker (1):
      tipc: cosmetic realignment of function arguments

Ying Xue (14):
      tipc: update code comments to reflect new uapi header path
      tipc: change socket buffer overflow control to respect sk_rcvbuf
      tipc: introduce new TIPC server infrastructure
      tipc: convert topology server to use new server facility
      tipc: convert configuration server to use new server facility
      tipc: delete code orphaned by new server infrastructure
      tipc: remove user_port instance from tipc_port structure
      tipc: rename tipc_createport_raw to tipc_createport
      tipc: convert config_lock from spinlock to mutex
      tipc: save sock structure pointer instead of void pointer to tipc_port
      tipc: enhance priority of link protocol packet
      tipc: make tipc_link_send_sections_fast exit earlier
      tipc: fix wrong return value for link_send_sections_long routine
      tipc: remove dev_base_lock use from enable_bearer

 Documentation/sysctl/net.txt     |  17 +-
 include/uapi/linux/tipc.h        |   2 +-
 include/uapi/linux/tipc_config.h |   2 +-
 net/tipc/Makefile                |   3 +-
 net/tipc/bcast.c                 |   3 +-
 net/tipc/bcast.h                 |   3 +-
 net/tipc/config.c                | 119 ++++----
 net/tipc/core.c                  |  22 +-
 net/tipc/core.h                  |  17 +-
 net/tipc/discover.c              |   7 +-
 net/tipc/eth_media.c             |  15 +-
 net/tipc/ib_media.c              |  13 +-
 net/tipc/link.c                  |  88 ++----
 net/tipc/msg.c                   |  19 +-
 net/tipc/msg.h                   |   8 +-
 net/tipc/name_table.c            |  10 +-
 net/tipc/name_table.h            |  11 +-
 net/tipc/node_subscr.c           |   2 +-
 net/tipc/port.c                  | 320 +--------------------
 net/tipc/port.h                  |  85 +-----
 net/tipc/server.c                | 596 +++++++++++++++++++++++++++++++++++++++
 net/tipc/server.h                |  94 ++++++
 net/tipc/socket.c                | 146 ++++++++--
 net/tipc/subscr.c                | 348 +++++++----------------
 net/tipc/subscr.h                |  21 +-
 net/tipc/sysctl.c                |  64 +++++
 26 files changed, 1158 insertions(+), 877 deletions(-)
 create mode 100644 net/tipc/server.c
 create mode 100644 net/tipc/server.h
 create mode 100644 net/tipc/sysctl.c
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

David Miller June 17, 2013, 10:53 p.m. UTC | #1
From: Paul Gortmaker <paul.gortmaker@windriver.com>
Date: Mon, 17 Jun 2013 10:54:35 -0400

> This is a rework of the content sent earlier[1], with the following changes:
> 
> 	-drop the Kconfig --> modparam conversion patch; this was
> 	 requested to be replaced[2] with a dynamic port quantity resizing.
> 	 Ying and Erik were discussing how best to achieve this, and then
> 	 vacation schedules got in the way, so implementing that will
> 	 come (hopefully) in the next round.
> 
> 	-rework the sk_rcvbuf patch to allow memory resizing via sysctl
> 	 as per what Ying and Neil discussed[3]
> 
> 	-add 4 more seemingly straigtforward and relatively small changes
> 	 from Ying (the last 4 in the series).
> 
> 	-add cosmetic UAPI comment update patch from Ying.
> 
> That said, the largest change is still the one where we make use of
> the fact that linux supports kernel threads and do the server like
> operations within kernel threads.  As Jon says:  
> 
>    We remove the last remnants of the TIPC native API, to make it
>    possible to simplify locking policy and solve a problem with lost
>    topology events.
>  
>    First, we introduce a socket-based alternative to the native API.
> 
>    Second, we convert the two remaining users of the native API, the 
>    TIPC internal topology server and the configuarion server, to use the
>    new API. 
> 
>    Third, we remove the remaining code pertaining to the native API.
> 
> I have re-tested this collection of commits between 32 and 64 bit x86
> machines using the standard tipc test suite, and build tested for ppc.

Series applied, thanks Paul.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html