[lkml]   [2000]   [Nov]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    Patch in this message
    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.

    - 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 @@
    if (infile.f_op->release)
    infile.f_op->release(inode, &infile);
    + blkdev_put(out_inode->i_bdev, BDEV_FILE);
    free_inodes: /* free inodes on error */
    / Werner Almesberger, ICA, EPFL, CH /
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    Please read the FAQ at
     \ /
      Last update: 2005-03-22 12:47    [W:0.021 / U:4.436 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site