• Goldwyn Rodrigues's avatar
    md: Skip cluster setup for dm-raid · d3b178ad
    Goldwyn Rodrigues authored
    There is a bug that the bitmap superblock isn't initialised properly for
    dm-raid, so a new field can have garbage in new fields.
    (dm-raid does initialisation in the kernel - md initialised the
     superblock in mdadm).
    
    This means that for dm-raid we cannot currently trust the new ->nodes
    field. So:
     - use __GFP_ZERO to initialise the superblock properly for all new
        arrays
     - initialise all fields in bitmap_info in bitmap_new_disk_sb
     - ignore ->nodes for dm arrays (yes, this is a hack)
    
    This bug exposes dm-raid to bug in the (still experimental) md-cluster
    code, so it is suitable for -stable.  It does cause crashes.
    
    References: https://bugzilla.kernel.org/show_bug.cgi?id=100491
    Cc: stable@vger.kernel.org (v4.1)
    Signed-off-By: default avatarGoldwyn Rodrigues <rgoldwyn@suse.com>
    Signed-off-by: default avatarNeilBrown <neilb@suse.com>
    d3b178ad
bitmap.c 64.5 KB