lkml.org 
[lkml]   [2018]   [Nov]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH 4/6] fuse: Check for FR_SENT bit in fuse_dev_do_write()
    On Tue, Nov 6, 2018 at 10:30 AM, Kirill Tkhai <ktkhai@virtuozzo.com> wrote:
    > It's not possible to have answer to a request,
    > before the request is actually sent. Add sanity
    > check for that.

    It's checking for the impossible. That sometimes makes sense as a
    WARN_ON() or in special cases a BUG_ON().


    >
    > Signed-off-by: Kirill Tkhai <ktkhai@virtuozzo.com>
    > ---
    > fs/fuse/dev.c | 2 +-
    > 1 file changed, 1 insertion(+), 1 deletion(-)
    >
    > diff --git a/fs/fuse/dev.c b/fs/fuse/dev.c
    > index 739968ee8b0c..c603f1ebf0fd 100644
    > --- a/fs/fuse/dev.c
    > +++ b/fs/fuse/dev.c
    > @@ -1947,7 +1947,7 @@ static ssize_t fuse_dev_do_write(struct fuse_dev *fud,
    > goto err_unlock_pq;
    >
    > req = request_find(fpq, oh.unique & ~FUSE_INT_REQ_BIT);
    > - if (!req)
    > + if (!req || !test_bit(FR_SENT, &req->flags))
    > goto err_unlock_pq;
    >
    > /* Is it an interrupt reply ID? */
    >

    \
     
     \ /
      Last update: 2018-11-07 14:17    [W:2.865 / U:0.420 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site