[prev in list] [next in list] [prev in thread] [next in thread] 

List:       linux-nfs
Subject:    SUNRPC lients: Pipefs mount races
From:       Stanislav Kinsbursky <skinsbursky () parallels ! com>
Date:       2012-07-31 11:02:30
Message-ID: 5017BB46.6080203 () parallels ! com
[Download RAW message or body]

Hello, Trond.
I found one more race in SUNRPC PipeFS mount notification and clients creation.
Now the problem is in SUNRPC clients.
Races are shown below:

CPU#0						CPU#1
------------------------------------		--------------------------------
nfs_create_rpc_client
   rpc_create
   rpc_new_client
   rpc_setup_pipedir	(no sb)
						rpc_mount
						notifier_call(SUNRPC - clnt.c)
   rpc_register_client
nfs_idmap_new
nfs_mark_client_ready(NFS_CS_READY)
						notifier_call(NFS - idmap.c)
						__rpc_pipefs_event
						BUG_ON(cl_dentry == NULL)

How would you prefer to fix this?
Looks like we could either try to add SUNRPC client to the list before PipeFS 
dentry creation or create the dentry for SUNRPC client from NFS code in 
__rpc_pipefs_event() instead of BUG_ON.

-- 
Best regards,
Stanislav Kinsbursky
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic