summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2020-11-12 17:50:04 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-11-18 19:22:25 +0100
commit40ca77fdac0f4eeeb248778bc95316920ff3d7e2 (patch)
treea4dfc0cd2ffae5050493fc963d76992af95824cd
parentbdffd69031b8968cec248d13468837b72c6926f7 (diff)
downloadlinux-stable-40ca77fdac0f4eeeb248778bc95316920ff3d7e2.tar.gz
linux-stable-40ca77fdac0f4eeeb248778bc95316920ff3d7e2.tar.bz2
linux-stable-40ca77fdac0f4eeeb248778bc95316920ff3d7e2.zip
block: add a return value to set_capacity_revalidate_and_notify
commit 7e890c37c25c7cbca37ff0ab292873d8146e713b upstream. Return if the function ended up sending an uevent or not. Cc: stable@vger.kernel.org # v5.9 Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Petr Vorel <pvorel@suse.cz> Signed-off-by: Jens Axboe <axboe@kernel.dk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--block/genhd.c5
-rw-r--r--include/linux/genhd.h2
2 files changed, 5 insertions, 2 deletions
diff --git a/block/genhd.c b/block/genhd.c
index 99c64641c314..c50ddbf2a229 100644
--- a/block/genhd.c
+++ b/block/genhd.c
@@ -49,7 +49,7 @@ static void disk_release_events(struct gendisk *disk);
* Set disk capacity and notify if the size is not currently
* zero and will not be set to zero
*/
-void set_capacity_revalidate_and_notify(struct gendisk *disk, sector_t size,
+bool set_capacity_revalidate_and_notify(struct gendisk *disk, sector_t size,
bool revalidate)
{
sector_t capacity = get_capacity(disk);
@@ -63,7 +63,10 @@ void set_capacity_revalidate_and_notify(struct gendisk *disk, sector_t size,
char *envp[] = { "RESIZE=1", NULL };
kobject_uevent_env(&disk_to_dev(disk)->kobj, KOBJ_CHANGE, envp);
+ return true;
}
+
+ return false;
}
EXPORT_SYMBOL_GPL(set_capacity_revalidate_and_notify);
diff --git a/include/linux/genhd.h b/include/linux/genhd.h
index 4ab853461dff..475b286ea10b 100644
--- a/include/linux/genhd.h
+++ b/include/linux/genhd.h
@@ -315,7 +315,7 @@ static inline int get_disk_ro(struct gendisk *disk)
extern void disk_block_events(struct gendisk *disk);
extern void disk_unblock_events(struct gendisk *disk);
extern void disk_flush_events(struct gendisk *disk, unsigned int mask);
-extern void set_capacity_revalidate_and_notify(struct gendisk *disk,
+extern bool set_capacity_revalidate_and_notify(struct gendisk *disk,
sector_t size, bool revalidate);
extern unsigned int disk_clear_events(struct gendisk *disk, unsigned int mask);