On Tue, Apr 27, 2021 at 12:42 AM Dan Aloni <dan@xxxxxxxxxxxx> wrote: > > On Mon, Apr 26, 2021 at 01:19:43PM -0400, Olga Kornievskaia wrote: > > From: Olga Kornievskaia <kolga@xxxxxxxxxx> > > > > An rpc client uses a transport switch and one ore more transports > > associated with that switch. Since transports are shared among > > rpc clients, create a symlink into the xprt_switch directory > > instead of duplicating entries under each rpc client. > > > > Signed-off-by: Olga Kornievskaia <kolga@xxxxxxxxxx> > > > >.. > > @@ -188,6 +204,11 @@ void rpc_sysfs_client_destroy(struct rpc_clnt *clnt) > > struct rpc_sysfs_client *rpc_client = clnt->cl_sysfs; > > > > if (rpc_client) { > > + char name[23]; > > + > > + snprintf(name, sizeof(name), "switch-%d", > > + rpc_client->xprt_switch->xps_id); > > + sysfs_remove_link(&rpc_client->kobject, name); > > Hi Olga, > > If a client can use a single switch, shouldn't the name of the symlink > be just "switch"? This is to be consistent with other symlinks in > `sysfs` such as the ones in block layer, for example in my > `/sys/block/sda`: > > bdi -> ../../../../../../../../../../../virtual/bdi/8:0 > device -> ../../../5:0:0:0 > Jumping back to this comment because now that I went back to try to modify the code I'm having doubts. We still need numbering of xprt switches because they are different for different mounts. So xprt_switches directory would still have switch-0 for say a mount to server A and then switch-0 for a mount to server B. While yes I see that for a given rpc client that's making a link into a xprt_switches directory will only have 1 link. And "yes" the name of the link could be "switch". But isn't it more informative to keep this to be the same name as the name of the directory under the xprt_switches? > > -- > Dan Aloni