# From: NeilBrown <neilb@suse.de>
# 
# Exposing the binary blob which is the md 'super-block' via sysfs
# doesn't really fit with the sysfs model, and since commit
#
#  8118a859dc7abd873193986c77a8d9bdb877adc8
#
# it doesn't actually work at all (as the size of the blob is often one page).
#
# (akpm: as in, fs/sysfs/file.c:fill_read_buffer() goes BUG)
# 
# So just remove it altogether.  It isn't really useful.
# 
# Signed-off-by: Neil Brown <neilb@suse.de>
# Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
# ---
#
# drivers/md/md.c |   12 ------------
# 1 file changed, 12 deletions(-)
#
diff -puN drivers/md/md.c~md-remove-the-super-sysfs-attribute-from-devices-in-an-md-array drivers/md/md.c
--- a/drivers/md/md.c~md-remove-the-super-sysfs-attribute-from-devices-in-an-md-array
+++ a/drivers/md/md.c
@@ -1864,17 +1864,6 @@ static struct rdev_sysfs_entry rdev_stat
 __ATTR(state, S_IRUGO|S_IWUSR, state_show, state_store);
 
 static ssize_t
-super_show(mdk_rdev_t *rdev, char *page)
-{
-	if (rdev->sb_loaded && rdev->sb_size) {
-		memcpy(page, page_address(rdev->sb_page), rdev->sb_size);
-		return rdev->sb_size;
-	} else
-		return 0;
-}
-static struct rdev_sysfs_entry rdev_super = __ATTR_RO(super);
-
-static ssize_t
 errors_show(mdk_rdev_t *rdev, char *page)
 {
 	return sprintf(page, "%d\n", atomic_read(&rdev->corrected_errors));
@@ -2060,7 +2049,6 @@ __ATTR(size, S_IRUGO|S_IWUSR, rdev_size_
 
 static struct attribute *rdev_default_attrs[] = {
 	&rdev_state.attr,
-	&rdev_super.attr,
 	&rdev_errors.attr,
 	&rdev_slot.attr,
 	&rdev_offset.attr,
_

