Commit 7a488fd3 authored by Allan Stephens's avatar Allan Stephens Committed by David S. Miller
Browse files

tipc: Eliminate use of user registry by configuration service



Simplifies TIPC's configuration service so that it no longer registers
its port with the user registry, since the service doesn't take advantage
of any of the registry's capabilities.

Signed-off-by: default avatarAllan Stephens <Allan.Stephens@windriver.com>
Signed-off-by: default avatarPaul Gortmaker <paul.gortmaker@windriver.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 8f92df6a
Loading
Loading
Loading
Loading
+7 −19
Original line number Diff line number Diff line
@@ -38,15 +38,9 @@
#include "port.h"
#include "link.h"
#include "name_table.h"
#include "user_reg.h"
#include "config.h"

struct manager {
	u32 user_ref;
	u32 port_ref;
};

static struct manager mng = { 0};
static u32 config_port_ref;

static DEFINE_SPINLOCK(config_lock);

@@ -506,20 +500,16 @@ int tipc_cfg_init(void)
	struct tipc_name_seq seq;
	int res;

	res = tipc_attach(&mng.user_ref);
	if (res)
		goto failed;

	res = tipc_createport(mng.user_ref, NULL, TIPC_CRITICAL_IMPORTANCE,
	res = tipc_createport(0, NULL, TIPC_CRITICAL_IMPORTANCE,
			      NULL, NULL, NULL,
			      NULL, cfg_named_msg_event, NULL,
			      NULL, &mng.port_ref);
			      NULL, &config_port_ref);
	if (res)
		goto failed;

	seq.type = TIPC_CFG_SRV;
	seq.lower = seq.upper = tipc_own_addr;
	res = tipc_nametbl_publish_rsv(mng.port_ref, TIPC_ZONE_SCOPE, &seq);
	res = tipc_nametbl_publish_rsv(config_port_ref, TIPC_ZONE_SCOPE, &seq);
	if (res)
		goto failed;

@@ -527,15 +517,13 @@ int tipc_cfg_init(void)

failed:
	err("Unable to create configuration service\n");
	tipc_detach(mng.user_ref);
	mng.user_ref = 0;
	return res;
}

void tipc_cfg_stop(void)
{
	if (mng.user_ref) {
		tipc_detach(mng.user_ref);
		mng.user_ref = 0;
	if (config_port_ref) {
		tipc_deleteport(config_port_ref);
		config_port_ref = 0;
	}
}