lkml.org 
[lkml]   [2010]   [Aug]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[071/111] Btrfs: do not mark the chunk as readonly if in degraded mode
    2.6.32-stable review patch.  If anyone has any objections, please let us know.

    ------------------

    From: Josef Bacik <josef@redhat.com>

    commit f48b90756bd834dda852ff514f2690d3175b1f44 upstream.

    If a RAID setup has chunks that span multiple disks, and one of those
    disks has failed, btrfs_chunk_readonly will return 1 since one of the
    disks in that chunk's stripes is dead and therefore not writeable. So
    instead if we are in degraded mode, return 0 so we can go ahead and
    allocate stuff. Without this patch all of the block groups in a RAID1
    setup will end up read-only, which will mean we can't add new disks to
    the array since we won't be able to make allocations.

    Signed-off-by: Josef Bacik <josef@redhat.com>
    Signed-off-by: Chris Mason <chris.mason@oracle.com>
    Acked-by: Jeff Mahoney <jeffm@suse.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>


    ---
    fs/btrfs/volumes.c | 5 +++++
    1 file changed, 5 insertions(+)

    --- a/fs/btrfs/volumes.c
    +++ b/fs/btrfs/volumes.c
    @@ -2538,6 +2538,11 @@ int btrfs_chunk_readonly(struct btrfs_ro
    if (!em)
    return 1;

    + if (btrfs_test_opt(root, DEGRADED)) {
    + free_extent_map(em);
    + return 0;
    + }
    +
    map = (struct map_lookup *)em->bdev;
    for (i = 0; i < map->num_stripes; i++) {
    if (!map->stripes[i].dev->writeable) {



    \
     
     \ /
      Last update: 2010-08-12 02:37    [W:0.026 / U:59.752 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site