Blob Blame History Raw
From:   Christoph Hellwig <hch@lst.de>
Subject: [PATCH 1/2] block: add a return value to set_capacity_revalidate_and_notify
Date:   Thu, 12 Nov 2020 17:50:04 +0100
Git-commit: 7e890c37c25c7cbca37ff0ab292873d8146e713b
Patch-mainline: v5.10-rc4
References: bsc#1177971

Return if the function ended up sending an uevent or not.


Signed-off-by: Christoph Hellwig <hch@lst.de>
[lduncan: refreshed to remove fuzz]
Acked-by: Lee Duncan <lduncan@suse.com>
---
 block/genhd.c         |    5 ++++-
 include/linux/genhd.h |    2 +-
 2 files changed, 5 insertions(+), 2 deletions(-)

--- a/block/genhd.c
+++ b/block/genhd.c
@@ -49,7 +49,7 @@ static void disk_release_events(struct g
  * 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 update_bdev)
 {
 	sector_t capacity = get_capacity(disk);
@@ -62,7 +62,10 @@ void set_capacity_revalidate_and_notify(
 		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);
--- a/include/linux/genhd.h
+++ b/include/linux/genhd.h
@@ -315,7 +315,7 @@ static inline int get_disk_ro(struct gen
 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);
-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 update_bdev);
 extern unsigned int disk_clear_events(struct gendisk *disk, unsigned int mask);