lkml.org 
[lkml]   [2000]   [Nov]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH,RFC] initrd vs. BLKFLSBUF
    Hi Al,

    Jeff Chua reported a while ago that BLKFLSBUF returns EBUSY on a RAM disk
    that was obtained via initrd. I think the problem is that the effect of
    the blkdev_open(out_inode, ...) in drivers/block/rd.c:rd_load_image is
    not undone at the end. I've attached a patch for 2.4.0-test11-pre7 that
    seems to solve the problem. Since I'm not quite sure I understand the
    reference counting rules there, I would appreciate your comment.

    Thanks,
    - Werner

    ---------------------------------- cut here -----------------------------------

    --- linux.orig/drivers/block/rd.c Mon Nov 20 02:07:47 2000
    +++ linux/drivers/block/rd.c Mon Nov 20 04:03:42 2000
    @@ -690,6 +690,7 @@
    done:
    if (infile.f_op->release)
    infile.f_op->release(inode, &infile);
    + blkdev_put(out_inode->i_bdev, BDEV_FILE);
    set_fs(fs);
    return;
    free_inodes: /* free inodes on error */
    --
    _________________________________________________________________________
    / Werner Almesberger, ICA, EPFL, CH Werner.Almesberger@epfl.ch /
    /_IN_N_032__Tel_+41_21_693_6621__Fax_+41_21_693_6610_____________________/
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    Please read the FAQ at http://www.tux.org/lkml/
    \
     
     \ /
      Last update: 2005-03-22 12:47    [W:0.022 / U:1.580 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site