On 16.10.2018 18:04, Konstantin Khorenko wrote:
> The commit is pushed to "branch-rh7-3.10.0-862.14.4.vz7.72.x-ovz" and will 
> appear at https://src.openvz.org/scm/ovz/vzkernel.git
> after rh7-3.10.0-862.14.4.vz7.72.9
> ------>
> commit b7f9b4aaa9c9828f40c79d496cfe4dc3e9c04db4
> Author: Kirill Tkhai <ktk...@virtuozzo.com>
> Date:   Tue Oct 16 18:04:29 2018 +0300
> 
>      fuse kio: Use __maybe_unused
>      
>      Signed-off-by: Kirill Tkhai <ktk...@virtuozzo.com>
>      Reviewed-by: Pavel Butsykin <pbutsy...@virtuozzo.com>
>      
>      =====================
>      Patchset description:
>      
>      Order pcs_rpc and pcs_sockio destruction and close leaked socket
>      
>      https://pmc.acronis.com/browse/VSTOR-15305
>      
>      Ploop can asynchronously unmap regions by sending IOCB_CMD_UNMAP_ITER, 
> but this
>      command isn't quite correctly interpreted in Fuse. Moreover, in 
> Fast-path mode,
>      fallocate(FALLOC_FL_PUNCH_HOLE|FALLOC_FL_ZERO_RANGE) falls to fuse user 
> daemon
>      and it can lead to data corruption.
>      
>      Let's fix it.
Konstantin, you messed up the Patchset description :)

>      
>      Kirill Tkhai (9):
>            fuse kio: Use __maybe_unused
>            fuse kio: Use sio eof instead of parent to determ abort
>            fuse kio: Reorder callback assignment
>            fuse kio: Add pcs_cleanup_wq
>            fuse kio: Destroy rpc in work func
>            fuse kio: Introduce pcs_sk_kick_queue()
>            fuse kio: Dereference sk_user_data under rcu
>            fuse kio: Fix rpc socket leak on rpc_abort()
>            fuse kio: Hold pcs_rpc counter till sio may be freed
> ---
>   fs/fuse/kio/pcs/pcs_sock_io.c | 4 +---
>   1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/fs/fuse/kio/pcs/pcs_sock_io.c b/fs/fuse/kio/pcs/pcs_sock_io.c
> index 0cf392fb4703..18b66f99e018 100644
> --- a/fs/fuse/kio/pcs/pcs_sock_io.c
> +++ b/fs/fuse/kio/pcs/pcs_sock_io.c
> @@ -212,7 +212,6 @@ static void pcs_sockio_recv(struct pcs_sockio *sio)
>       u32 msg_size;
>       unsigned long loop_timeout = jiffies + PCS_SIO_SLICE;
>   
> -     (void)ep;
>       TRACE("ENTER:" PEER_FMT " sio:%p cur_msg:%p\n", PEER_ARGS(ep), sio, 
> sio->current_msg);
>   
>       while(!test_bit(PCS_IOCONN_BF_DEAD, &conn->flags)) {
> @@ -316,14 +315,13 @@ static void pcs_sockio_recv(struct pcs_sockio *sio)
>   
>   static void pcs_sockio_send(struct pcs_sockio *sio)
>   {
> +     struct pcs_rpc *ep __maybe_unused = sio->parent;
>       struct pcs_ioconn* conn = &sio->ioconn;
>       struct iov_iter *it = &sio->write_iter;
>       unsigned long loop_timeout = jiffies + PCS_SIO_SLICE;
>       struct pcs_msg * msg;
>       int done = 0;
>       int count = 0;
> -     struct pcs_rpc *ep = sio->parent;
> -     (void)ep;
>   
>       while (!list_empty(&sio->write_queue)) {
>               msg = list_first_entry(&sio->write_queue, struct pcs_msg, list);
> 
> _______________________________________________
> Devel mailing list
> Devel@openvz.org
> https://lists.openvz.org/mailman/listinfo/devel
> 

_______________________________________________
Devel mailing list
Devel@openvz.org
https://lists.openvz.org/mailman/listinfo/devel

Reply via email to