[lkml]   [2006]   [Jan]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: Block device API
    On 1/25/06, Joshua Hudson <> wrote:
    > I am working on a kernel filesystem driver. I have found plenty of
    > documentation on
    > how to communicate between the VFS and the filesystem driver, but nothing
    > on how to communicate between the block device and the filesystem driver.

    AFAIK there isn't any documentation/article for block and filesystem
    layer interaction (or till now me also not able to find any) :)

    > I found sb_bread() but there is no corrisponding sb_bwrite().
    > I presume that if ((struct superblock *)s) -> bdev is the block
    > device handle, but I cannot find the read/write pair of functions.
    > -

    sb_bread is the function used for reading a block (especially
    superblock) from the storage. For reading/writing do look at
    generic_file_read/write functions found in mm/filemap.c and when going
    through the code you will see its ends up in calling
    mappings->a_ops->readpage(s)/writepage(s) of filesystem in which
    normal filesystems (like ext2) just call function
    mpage_readpages/writepages found in fs/mpage.c which performs actual
    read/write on the block device.

    I hope this helps !

    Fawad Lateef
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2006-01-25 04:19    [W:0.021 / U:0.076 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site