diff --git a/[refs] b/[refs] index 225259a21646..736e44a71258 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 243294dae09c909c0442c8f04d470b69c3c19d6e +refs/heads/master: 0c002c2f74e10baa9021d3ecc50585c6eafea568 diff --git a/trunk/fs/block_dev.c b/trunk/fs/block_dev.c index c3fa19bd64df..4eeb69a88734 100644 --- a/trunk/fs/block_dev.c +++ b/trunk/fs/block_dev.c @@ -852,6 +852,27 @@ struct block_device *open_by_devnum(dev_t dev, unsigned mode) EXPORT_SYMBOL(open_by_devnum); +/** + * revalidate_disk - wrapper for lower-level driver's revalidate_disk + * call-back + * + * @disk: struct gendisk to be revalidated + * + * This routine is a wrapper for lower-level driver's revalidate_disk + * call-backs. It is used to do common pre and post operations needed + * for all revalidate_disk operations. + */ +int revalidate_disk(struct gendisk *disk) +{ + int ret = 0; + + if (disk->fops->revalidate_disk) + ret = disk->fops->revalidate_disk(disk); + + return ret; +} +EXPORT_SYMBOL(revalidate_disk); + /* * This routine checks whether a removable media has been changed, * and invalidates all buffer-cache-entries in that case. This diff --git a/trunk/include/linux/fs.h b/trunk/include/linux/fs.h index 02a9fb5a830c..d63461f97983 100644 --- a/trunk/include/linux/fs.h +++ b/trunk/include/linux/fs.h @@ -1722,6 +1722,7 @@ extern int fs_may_remount_ro(struct super_block *); */ #define bio_data_dir(bio) ((bio)->bi_rw & 1) +extern int revalidate_disk(struct gendisk *); extern int check_disk_change(struct block_device *); extern int __invalidate_device(struct block_device *); extern int invalidate_partition(struct gendisk *, int);