lkml.org 
[lkml]   [2009]   [Dec]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH] direct_io: fix use after free in __blockdev_direct_IO
    On 12/17/2009 05:29 PM, Al Viro wrote:
    > On Thu, Dec 17, 2009 at 04:49:32PM +0800, Xiaotian Feng wrote:
    >> @@ -1197,7 +1200,11 @@ __blockdev_direct_IO(int rw, struct kiocb *iocb, struct inode *inode,
    >> (end> i_size_read(inode)));
    >>
    >> retval = direct_io_worker(rw, iocb, inode, iov, offset,
    >> - nr_segs, blkbits, get_block, end_io, dio);
    >> + nr_segs, blkbits, get_block, end_io,
    >> + dio,&dio_freed);
    >> +
    >> + if (dio_freed)
    >> + goto out;
    >
    > Um... I'm not sure that this would be the right fix. How about simple
    > s/dio->flags/flags/ in the line below?
    Yes, dio->flags is not changed in direct_io_worker(), your method is
    better, thanks.



    \
     
     \ /
      Last update: 2009-12-17 10:37    [W:0.039 / U:68.140 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site