aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJens Axboe <jens.axboe@oracle.com>2008-09-11 08:20:23 -0400
committerJens Axboe <jens.axboe@oracle.com>2008-09-11 08:20:23 -0400
commit2dc75d3c3b49c64fd26b4832a7efb75546cb3fc5 (patch)
tree908ae81851ca06d46a680d8e6c33afdfb292c131
parentadee14b2e1557d0a8559f29681732d05a89dfc35 (diff)
block: disable sysfs parts of the disk command filter
We still have life time issues with the sysfs command filter kobject, so disable it for 2.6.27 release. We can revisit this and make it work properly for 2.6.28, for 2.6.27 release it's too risky. Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
-rw-r--r--block/cmd-filter.c2
-rw-r--r--drivers/ide/ide-cd.c2
-rw-r--r--drivers/scsi/sd.c2
-rw-r--r--drivers/scsi/sr.c2
-rw-r--r--include/linux/blkdev.h2
5 files changed, 2 insertions, 8 deletions
diff --git a/block/cmd-filter.c b/block/cmd-filter.c
index 228b6447e89f..79c14996ac11 100644
--- a/block/cmd-filter.c
+++ b/block/cmd-filter.c
@@ -49,6 +49,7 @@ int blk_verify_command(struct blk_cmd_filter *filter,
49} 49}
50EXPORT_SYMBOL(blk_verify_command); 50EXPORT_SYMBOL(blk_verify_command);
51 51
52#if 0
52/* and now, the sysfs stuff */ 53/* and now, the sysfs stuff */
53static ssize_t rcf_cmds_show(struct blk_cmd_filter *filter, char *page, 54static ssize_t rcf_cmds_show(struct blk_cmd_filter *filter, char *page,
54 int rw) 55 int rw)
@@ -233,3 +234,4 @@ void blk_unregister_filter(struct gendisk *disk)
233 kobject_put(disk->holder_dir->parent); 234 kobject_put(disk->holder_dir->parent);
234} 235}
235EXPORT_SYMBOL(blk_unregister_filter); 236EXPORT_SYMBOL(blk_unregister_filter);
237#endif
diff --git a/drivers/ide/ide-cd.c b/drivers/ide/ide-cd.c
index f1489999cf91..49a8c589e346 100644
--- a/drivers/ide/ide-cd.c
+++ b/drivers/ide/ide-cd.c
@@ -1933,7 +1933,6 @@ static void ide_cd_remove(ide_drive_t *drive)
1933 1933
1934 ide_proc_unregister_driver(drive, info->driver); 1934 ide_proc_unregister_driver(drive, info->driver);
1935 1935
1936 blk_unregister_filter(info->disk);
1937 del_gendisk(info->disk); 1936 del_gendisk(info->disk);
1938 1937
1939 ide_cd_put(info); 1938 ide_cd_put(info);
@@ -2159,7 +2158,6 @@ static int ide_cd_probe(ide_drive_t *drive)
2159 g->fops = &idecd_ops; 2158 g->fops = &idecd_ops;
2160 g->flags |= GENHD_FL_REMOVABLE; 2159 g->flags |= GENHD_FL_REMOVABLE;
2161 add_disk(g); 2160 add_disk(g);
2162 blk_register_filter(g);
2163 return 0; 2161 return 0;
2164 2162
2165out_free_cd: 2163out_free_cd:
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c
index 2a2bc89aba83..e5e7d7856454 100644
--- a/drivers/scsi/sd.c
+++ b/drivers/scsi/sd.c
@@ -1875,7 +1875,6 @@ static int sd_probe(struct device *dev)
1875 1875
1876 dev_set_drvdata(dev, sdkp); 1876 dev_set_drvdata(dev, sdkp);
1877 add_disk(gd); 1877 add_disk(gd);
1878 blk_register_filter(gd);
1879 sd_dif_config_host(sdkp); 1878 sd_dif_config_host(sdkp);
1880 1879
1881 sd_printk(KERN_NOTICE, sdkp, "Attached SCSI %sdisk\n", 1880 sd_printk(KERN_NOTICE, sdkp, "Attached SCSI %sdisk\n",
@@ -1909,7 +1908,6 @@ static int sd_remove(struct device *dev)
1909 struct scsi_disk *sdkp = dev_get_drvdata(dev); 1908 struct scsi_disk *sdkp = dev_get_drvdata(dev);
1910 1909
1911 device_del(&sdkp->dev); 1910 device_del(&sdkp->dev);
1912 blk_unregister_filter(sdkp->disk);
1913 del_gendisk(sdkp->disk); 1911 del_gendisk(sdkp->disk);
1914 sd_shutdown(dev); 1912 sd_shutdown(dev);
1915 1913
diff --git a/drivers/scsi/sr.c b/drivers/scsi/sr.c
index 3292965bfd84..27f5bfd1def3 100644
--- a/drivers/scsi/sr.c
+++ b/drivers/scsi/sr.c
@@ -656,7 +656,6 @@ static int sr_probe(struct device *dev)
656 dev_set_drvdata(dev, cd); 656 dev_set_drvdata(dev, cd);
657 disk->flags |= GENHD_FL_REMOVABLE; 657 disk->flags |= GENHD_FL_REMOVABLE;
658 add_disk(disk); 658 add_disk(disk);
659 blk_register_filter(disk);
660 659
661 sdev_printk(KERN_DEBUG, sdev, 660 sdev_printk(KERN_DEBUG, sdev,
662 "Attached scsi CD-ROM %s\n", cd->cdi.name); 661 "Attached scsi CD-ROM %s\n", cd->cdi.name);
@@ -895,7 +894,6 @@ static int sr_remove(struct device *dev)
895{ 894{
896 struct scsi_cd *cd = dev_get_drvdata(dev); 895 struct scsi_cd *cd = dev_get_drvdata(dev);
897 896
898 blk_unregister_filter(cd->disk);
899 del_gendisk(cd->disk); 897 del_gendisk(cd->disk);
900 898
901 mutex_lock(&sr_ref_mutex); 899 mutex_lock(&sr_ref_mutex);
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index 44710d7e7bff..53ea933cf60b 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -843,8 +843,6 @@ extern int blkdev_issue_flush(struct block_device *, sector_t *);
843*/ 843*/
844extern int blk_verify_command(struct blk_cmd_filter *filter, 844extern int blk_verify_command(struct blk_cmd_filter *filter,
845 unsigned char *cmd, int has_write_perm); 845 unsigned char *cmd, int has_write_perm);
846extern int blk_register_filter(struct gendisk *disk);
847extern void blk_unregister_filter(struct gendisk *disk);
848extern void blk_set_cmd_filter_defaults(struct blk_cmd_filter *filter); 846extern void blk_set_cmd_filter_defaults(struct blk_cmd_filter *filter);
849 847
850#define MAX_PHYS_SEGMENTS 128 848#define MAX_PHYS_SEGMENTS 128