1. 06 Feb, 2009 2 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://neil.brown.name/md · b2a740aa
      Linus Torvalds authored
      * 'for-linus' of git://neil.brown.name/md:
        md: Ensure an md array never has too many devices.
        md: Fix a bug in linear.c causing which_dev() to return the wrong device.
        md: Allow read error in a single drive raid1 to be passed up.
      b2a740aa
    • NeilBrown's avatar
      md: Ensure an md array never has too many devices. · de01dfad
      NeilBrown authored
      
      Each different metadata format supported by md supports a
      different maximum number of devices.
      We really should be enforcing this maximum in the kernel, but
      we aren't quite doing that properly.
      
      We currently only enforce it at the 'hot_add' point, which is an
      older interface which is not used by current userspace.
      
      We need to also enforce it at 'add_new_disk' time for active arrays
      and at 'do_md_run' time when starting a new array.
      
      So move the test from 'hot_add' into 'bind_rdev_to_array' which is
      called from both 'hot_add' and 'add_new_disk, and add a new
      test in 'analyse_sbs' which is called from 'do_md_run'.
      
      This bug (or missing feature) has been around "forever" and so
      the patch is suitable for any -stable that is currently maintained.
      
      Cc: stable@kernel.org
      Signed-off-by: default avatarNeilBrown <neilb@suse.de>
      de01dfad
  2. 05 Feb, 2009 36 commits
  3. 04 Feb, 2009 2 commits