• Dave Olien's avatar
    [PATCH] add local bio pool support and modify dm · 63858f83
    Dave Olien authored
    I've had this patch reviewed by Jens, and incorporated his recommended
    fixes.
    
    The patch adds new interfaces to bio.c that support the creation of local
    bio and bvec pools.  This is important for layered drivers that need to
    allocate new bio and bvec structures in response to bio's submitted to it
    from higher up.  The layered drivers can allocate local pools of bio
    structures to preclude deadlock under global bio pool exhaustion.
    
    The device mapper source files have been modified to remove duplicate bio
    code, and to use the new interfaces to create local bio pools.
    
    From: Dave Olien <dmo@osdl.org>
    
    Change bio_clone() to use the global bio_set pool instead of the bio_set pool
    associated with the bio argument.  This is because raid5 and raid6 bio's are
    not allocated from a bio_set and have no bio_set associated with them.  This
    patch along with the patch Linux just accepted allows raid5 and raid6 to
    function.
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    63858f83
bio.c 25.3 KB