Re: [PATCH v2 2/4] SUNRPC: fix races on PipeFS MOUNT notifications

2013-06-18 Thread Stanislav Kinsbursky

17.06.2013 22:20, Myklebust, Trond пишет:

On Tue, 2013-06-11 at 18:39 +0400, Stanislav Kinsbursky wrote:

Below are races, when RPC client can be created without PiepFS dentries

CPU#0   CPU#1
-   -
rpc_new_client  rpc_fill_super
rpc_setup_pipedir
mutex_lock(>pipefs_sb_lock)
rpc_get_sb_net == NULL
(no per-net PipeFS superblock)
sn->pipefs_sb = sb;
notifier_call_chain(MOUNT)
(client is not in the list)
rpc_register_client
(client without pipes dentries)

To fix this patch:
1) makes PipeFS mount notification call with pipefs_sb_lock being held.
2) releases pipefs_sb_lock on new SUNRPC client creation only after
registration.

Signed-off-by: Stanislav Kinsbursky 
Cc: sta...@vger.kernel.org


Hi Stanislav,

This isn't going to apply to the stable kernels without the cleanup
patch. Could you please reorganise this patch series so that the cleanup
comes last.

Thanks,
   Trond




Hello, Trond.
Sure, will do.

--
Best regards,
Stanislav Kinsbursky
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v2 2/4] SUNRPC: fix races on PipeFS MOUNT notifications

2013-06-18 Thread Stanislav Kinsbursky

17.06.2013 22:20, Myklebust, Trond пишет:

On Tue, 2013-06-11 at 18:39 +0400, Stanislav Kinsbursky wrote:

Below are races, when RPC client can be created without PiepFS dentries

CPU#0   CPU#1
-   -
rpc_new_client  rpc_fill_super
rpc_setup_pipedir
mutex_lock(sn-pipefs_sb_lock)
rpc_get_sb_net == NULL
(no per-net PipeFS superblock)
sn-pipefs_sb = sb;
notifier_call_chain(MOUNT)
(client is not in the list)
rpc_register_client
(client without pipes dentries)

To fix this patch:
1) makes PipeFS mount notification call with pipefs_sb_lock being held.
2) releases pipefs_sb_lock on new SUNRPC client creation only after
registration.

Signed-off-by: Stanislav Kinsbursky skinsbur...@parallels.com
Cc: sta...@vger.kernel.org


Hi Stanislav,

This isn't going to apply to the stable kernels without the cleanup
patch. Could you please reorganise this patch series so that the cleanup
comes last.

Thanks,
   Trond




Hello, Trond.
Sure, will do.

--
Best regards,
Stanislav Kinsbursky
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v2 2/4] SUNRPC: fix races on PipeFS MOUNT notifications

2013-06-17 Thread Myklebust, Trond
On Tue, 2013-06-11 at 18:39 +0400, Stanislav Kinsbursky wrote:
> Below are races, when RPC client can be created without PiepFS dentries
> 
> CPU#0 CPU#1
> - -
> rpc_new_clientrpc_fill_super
> rpc_setup_pipedir
> mutex_lock(>pipefs_sb_lock)
> rpc_get_sb_net == NULL
> (no per-net PipeFS superblock)
>   sn->pipefs_sb = sb;
>   notifier_call_chain(MOUNT)
>   (client is not in the list)
> rpc_register_client
> (client without pipes dentries)
> 
> To fix this patch:
> 1) makes PipeFS mount notification call with pipefs_sb_lock being held.
> 2) releases pipefs_sb_lock on new SUNRPC client creation only after
> registration.
> 
> Signed-off-by: Stanislav Kinsbursky 
> Cc: sta...@vger.kernel.org

Hi Stanislav,

This isn't going to apply to the stable kernels without the cleanup
patch. Could you please reorganise this patch series so that the cleanup
comes last.

Thanks,
  Trond


-- 
Trond Myklebust
Linux NFS client maintainer

NetApp
trond.mykleb...@netapp.com
www.netapp.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH v2 2/4] SUNRPC: fix races on PipeFS MOUNT notifications

2013-06-17 Thread Myklebust, Trond
On Tue, 2013-06-11 at 18:39 +0400, Stanislav Kinsbursky wrote:
 Below are races, when RPC client can be created without PiepFS dentries
 
 CPU#0 CPU#1
 - -
 rpc_new_clientrpc_fill_super
 rpc_setup_pipedir
 mutex_lock(sn-pipefs_sb_lock)
 rpc_get_sb_net == NULL
 (no per-net PipeFS superblock)
   sn-pipefs_sb = sb;
   notifier_call_chain(MOUNT)
   (client is not in the list)
 rpc_register_client
 (client without pipes dentries)
 
 To fix this patch:
 1) makes PipeFS mount notification call with pipefs_sb_lock being held.
 2) releases pipefs_sb_lock on new SUNRPC client creation only after
 registration.
 
 Signed-off-by: Stanislav Kinsbursky skinsbur...@parallels.com
 Cc: sta...@vger.kernel.org

Hi Stanislav,

This isn't going to apply to the stable kernels without the cleanup
patch. Could you please reorganise this patch series so that the cleanup
comes last.

Thanks,
  Trond


-- 
Trond Myklebust
Linux NFS client maintainer

NetApp
trond.mykleb...@netapp.com
www.netapp.com
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/