The patch titled md: the scheduled removal of the START_ARRAY ioctl for md has been removed from the -mm tree. Its filename is md-the-scheduled-removal-of-the-start_array-ioctl-for-md.patch This patch was dropped because it was merged into mainline or a subsystem tree ------------------------------------------------------ Subject: md: the scheduled removal of the START_ARRAY ioctl for md From: Adrian Bunk <bunk@xxxxxxxxx> This patch contains the scheduled removal of the START_ARRAY ioctl for md. Signed-off-by: Adrian Bunk <bunk@xxxxxxxxx> Signed-off-by: Neil Brown <neilb@xxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- Documentation/feature-removal-schedule.txt | 9 -- drivers/md/md.c | 82 ------------------- include/linux/compat_ioctl.h | 1 include/linux/raid/md_u.h | 2 4 files changed, 1 insertion(+), 93 deletions(-) diff -puN Documentation/feature-removal-schedule.txt~md-the-scheduled-removal-of-the-start_array-ioctl-for-md Documentation/feature-removal-schedule.txt --- a/Documentation/feature-removal-schedule.txt~md-the-scheduled-removal-of-the-start_array-ioctl-for-md +++ a/Documentation/feature-removal-schedule.txt @@ -122,15 +122,6 @@ Who: Arjan van de Ven --------------------------- -What: START_ARRAY ioctl for md -When: July 2006 -Files: drivers/md/md.c -Why: Not reliable by design - can fail when most needed. - Alternatives exist -Who: NeilBrown <neilb@xxxxxxx> - ---------------------------- - What: eepro100 network driver When: January 2007 Why: replaced by the e100 driver diff -puN drivers/md/md.c~md-the-scheduled-removal-of-the-start_array-ioctl-for-md drivers/md/md.c --- a/drivers/md/md.c~md-the-scheduled-removal-of-the-start_array-ioctl-for-md +++ a/drivers/md/md.c @@ -3440,67 +3440,6 @@ static void autorun_devices(int part) printk(KERN_INFO "md: ... autorun DONE.\n"); } -/* - * import RAID devices based on one partition - * if possible, the array gets run as well. - */ - -static int autostart_array(dev_t startdev) -{ - char b[BDEVNAME_SIZE]; - int err = -EINVAL, i; - mdp_super_t *sb = NULL; - mdk_rdev_t *start_rdev = NULL, *rdev; - - start_rdev = md_import_device(startdev, 0, 0); - if (IS_ERR(start_rdev)) - return err; - - - /* NOTE: this can only work for 0.90.0 superblocks */ - sb = (mdp_super_t*)page_address(start_rdev->sb_page); - if (sb->major_version != 0 || - sb->minor_version != 90 ) { - printk(KERN_WARNING "md: can only autostart 0.90.0 arrays\n"); - export_rdev(start_rdev); - return err; - } - - if (test_bit(Faulty, &start_rdev->flags)) { - printk(KERN_WARNING - "md: can not autostart based on faulty %s!\n", - bdevname(start_rdev->bdev,b)); - export_rdev(start_rdev); - return err; - } - list_add(&start_rdev->same_set, &pending_raid_disks); - - for (i = 0; i < MD_SB_DISKS; i++) { - mdp_disk_t *desc = sb->disks + i; - dev_t dev = MKDEV(desc->major, desc->minor); - - if (!dev) - continue; - if (dev == startdev) - continue; - if (MAJOR(dev) != desc->major || MINOR(dev) != desc->minor) - continue; - rdev = md_import_device(dev, 0, 0); - if (IS_ERR(rdev)) - continue; - - list_add(&rdev->same_set, &pending_raid_disks); - } - - /* - * possibly return codes - */ - autorun_devices(0); - return 0; - -} - - static int get_version(void __user * arg) { mdu_version_t ver; @@ -4259,27 +4198,6 @@ static int md_ioctl(struct inode *inode, goto abort; } - - if (cmd == START_ARRAY) { - /* START_ARRAY doesn't need to lock the array as autostart_array - * does the locking, and it could even be a different array - */ - static int cnt = 3; - if (cnt > 0 ) { - printk(KERN_WARNING - "md: %s(pid %d) used deprecated START_ARRAY ioctl. " - "This will not be supported beyond July 2006\n", - current->comm, current->pid); - cnt--; - } - err = autostart_array(new_decode_dev(arg)); - if (err) { - printk(KERN_WARNING "md: autostart failed!\n"); - goto abort; - } - goto done; - } - err = mddev_lock(mddev); if (err) { printk(KERN_INFO diff -puN include/linux/compat_ioctl.h~md-the-scheduled-removal-of-the-start_array-ioctl-for-md include/linux/compat_ioctl.h --- a/include/linux/compat_ioctl.h~md-the-scheduled-removal-of-the-start_array-ioctl-for-md +++ a/include/linux/compat_ioctl.h @@ -122,7 +122,6 @@ COMPATIBLE_IOCTL(PROTECT_ARRAY) ULONG_IOCTL(HOT_ADD_DISK) ULONG_IOCTL(SET_DISK_FAULTY) COMPATIBLE_IOCTL(RUN_ARRAY) -ULONG_IOCTL(START_ARRAY) COMPATIBLE_IOCTL(STOP_ARRAY) COMPATIBLE_IOCTL(STOP_ARRAY_RO) COMPATIBLE_IOCTL(RESTART_ARRAY_RW) diff -puN include/linux/raid/md_u.h~md-the-scheduled-removal-of-the-start_array-ioctl-for-md include/linux/raid/md_u.h --- a/include/linux/raid/md_u.h~md-the-scheduled-removal-of-the-start_array-ioctl-for-md +++ a/include/linux/raid/md_u.h @@ -41,7 +41,7 @@ /* usage */ #define RUN_ARRAY _IOW (MD_MAJOR, 0x30, mdu_param_t) -#define START_ARRAY _IO (MD_MAJOR, 0x31) +/* 0x31 was START_ARRAY */ #define STOP_ARRAY _IO (MD_MAJOR, 0x32) #define STOP_ARRAY_RO _IO (MD_MAJOR, 0x33) #define RESTART_ARRAY_RW _IO (MD_MAJOR, 0x34) _ Patches currently in -mm which might be from bunk@xxxxxxxxx are origin.patch git-pcmcia.patch drivers-net-pcmcia-xirc2ps_csc-remove-unused-label.patch drivers-scsi-aic7xxx-possible-cleanups.patch drivers-scsi-small-cleanups.patch drivers-scsi-qla2xxx-make-some-functions-static.patch drivers-scsi-aic7xxx-aic79xx_corec-make-ahd_match_scb-static.patch drivers-scsi-advansysc-cleanups.patch make-drivers-scsi-aic7xxx-aic79xx_coreahd_set_tags-static.patch megaraid-fix-warnings-when-config_proc_fs=n.patch acx1xx-wireless-driver.patch drivers-edac-make-code-static.patch fs-reiser4-possible-cleanups.patch reiser4-possible-cleanups-2.patch slab-cache-shrinker-statistics.patch debug-shared-irqs-kconfig-fix.patch i386-enable-4k-stacks-by-default.patch mutex-subsystem-synchro-test-module.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