The patch titled md: Allow resync_start to be set and queried via sysfs has been added to the -mm tree. Its filename is md-allow-resync_start-to-be-set-and-queried-via-sysfs.patch See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find out what to do about this ------------------------------------------------------ Subject: md: Allow resync_start to be set and queried via sysfs From: NeilBrown <neilb@xxxxxxx> Signed-off-by: Neil Brown <neilb@xxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- Documentation/md.txt | 6 ++++++ drivers/md/md.c | 26 ++++++++++++++++++++++++++ 2 files changed, 32 insertions(+) diff -puN Documentation/md.txt~md-allow-resync_start-to-be-set-and-queried-via-sysfs Documentation/md.txt --- devel/Documentation/md.txt~md-allow-resync_start-to-be-set-and-queried-via-sysfs 2006-05-31 22:28:23.000000000 -0700 +++ devel-akpm/Documentation/md.txt 2006-05-31 22:28:23.000000000 -0700 @@ -205,6 +205,12 @@ All md devices contain: simply a number that is interpretted differently by different levels. It can be written while assembling an array. + resync_start + The point at which resync should start. If no resync is needed, + this will be a very large number. At array creation it will + default to 0, though starting the array as 'clean' will + set it much larger. + new_dev This file can be written but not read. The value written should be a block device number as major:minor. e.g. 8:0 diff -puN drivers/md/md.c~md-allow-resync_start-to-be-set-and-queried-via-sysfs drivers/md/md.c --- devel/drivers/md/md.c~md-allow-resync_start-to-be-set-and-queried-via-sysfs 2006-05-31 22:28:23.000000000 -0700 +++ devel-akpm/drivers/md/md.c 2006-05-31 22:28:23.000000000 -0700 @@ -2235,6 +2235,30 @@ chunk_size_store(mddev_t *mddev, const c static struct md_sysfs_entry md_chunk_size = __ATTR(chunk_size, 0644, chunk_size_show, chunk_size_store); +static ssize_t +resync_start_show(mddev_t *mddev, char *page) +{ + return sprintf(page, "%llu\n", (unsigned long long)mddev->recovery_cp); +} + +static ssize_t +resync_start_store(mddev_t *mddev, const char *buf, size_t len) +{ + /* can only set chunk_size if array is not yet active */ + char *e; + unsigned long long n = simple_strtoull(buf, &e, 10); + + if (mddev->pers) + return -EBUSY; + if (!*buf || (*e && *e != '\n')) + return -EINVAL; + + mddev->recovery_cp = n; + return len; +} +static struct md_sysfs_entry md_resync_start = +__ATTR(resync_start, 0644, resync_start_show, resync_start_store); + /* * The array state can be: * @@ -2771,6 +2795,7 @@ static struct attribute *md_default_attr &md_raid_disks.attr, &md_chunk_size.attr, &md_size.attr, + &md_resync_start.attr, &md_metadata.attr, &md_new_device.attr, &md_safe_delay.attr, @@ -3263,6 +3288,7 @@ static int do_md_stop(mddev_t * mddev, i mddev->array_size = 0; mddev->size = 0; mddev->raid_disks = 0; + mddev->recovery_cp = 0; disk = mddev->gendisk; if (disk) _ Patches currently in -mm which might be from neilb@xxxxxxx are origin.patch fix-dcache-race-during-umount.patch prune_one_dentry-tweaks.patch remove-softlockup-from-invalidate_mapping_pages.patch prepare-for-__copy_from_user_inatomic-to-not-zero-missed-bytes.patch make-copy_from_user_inatomic-not-zero-the-tail-on-i386.patch kconfig-select-things-at-the-closest-tristate-instead-of-bool.patch dm-mirror-sector-offset-fix.patch md-reformat-code-in-raid1_end_write_request-to-avoid-goto.patch md-remove-arbitrary-limit-on-chunk-size.patch md-remove-useless-ioctl-warning.patch md-increase-the-delay-before-marking-metadata-clean-and-make-it-configurable.patch md-merge-raid5-and-raid6-code.patch md-remove-nuisance-message-at-shutdown.patch md-allow-checkpoint-of-recovery-with-version-1-superblock.patch md-allow-checkpoint-of-recovery-with-version-1-superblock-fix.patch md-allow-a-linear-array-to-have-drives-added-while-active.patch md-support-stripe-offset-mode-in-raid10.patch md-make-md_print_devices-static.patch md-split-reshape-portion-of-raid5-sync_request-into-a-separate-function.patch md-bitmap-fix-online-removal-of-file-backed-bitmaps.patch md-bitmap-remove-bitmap-writeback-daemon.patch md-bitmap-cleaner-separation-of-page-attribute-handlers-in-md-bitmap.patch md-bitmap-use-set_bit-etc-for-bitmap-page-attributes.patch md-bitmap-remove-unnecessary-page-reference-manipulations-from-md-bitmap-code.patch md-bitmap-remove-dead-code-from-md-bitmap.patch md-bitmap-tidy-up-i_writecount-handling-in-md-bitmap.patch md-bitmap-change-md-bitmap-file-handling-to-use-bmap-to-file-blocks.patch md-change-md-bitmap-file-handling-to-use-bmap-to-file-blocks-fix.patch md-calculate-correct-array-size-for-raid10-in-new-offset-mode.patch md-md-kconfig-speeling-feex.patch md-fix-kconfig-error.patch md-fix-bug-that-stops-raid5-resync-from-happening.patch md-allow-re-add-to-work-on-array-without-bitmaps.patch md-dont-write-dirty-clean-update-to-spares-leave-them-alone.patch md-set-get-state-of-array-via-sysfs.patch md-allow-rdev-state-to-be-set-via-sysfs.patch md-allow-raid-layout-to-be-read-and-set-via-sysfs.patch md-allow-resync_start-to-be-set-and-queried-via-sysfs.patch md-allow-the-write_mostly-flag-to-be-set-via-sysfs.patch md-dm-reduce-stack-usage-with-stacked-block-devices.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html