• NeilBrown's avatar
    [PATCH] md: improve read speed to raid10 arrays using 'far copies' · 22dfdf52
    NeilBrown authored
    raid10 has two different layouts.  One uses near-copies (so multiple
    copies of a block are at the same or similar offsets of different
    devices) and the other uses far-copies (so multiple copies of a block
    are stored a greatly different offsets on different devices).  The point
    of far-copies is that it allows the first section (normally first half)
    to be layed out in normal raid0 style, and thus provide raid0 sequential
    read performance.
    
    Unfortunately, the read balancing in raid10 makes some poor decisions
    for far-copies arrays and you don't get the desired performance.  So
    turn off that bad bit of read_balance for far-copies arrays.
    
    With this patch, read speed of an 'f2' array is comparable with a raid0
    with the same number of devices, though write speed is ofcourse still
    very slow.
    Signed-off-by: default avatarNeil Brown <neilb@suse.de>
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    22dfdf52
raid10.c 48.3 KB