Re: [PATCH v2 02/12] genhd: Honor gen_uevent and add disk_gen_uevents

2016-06-29 Thread kbuild test robot
Hi,

[auto build test WARNING on block/for-next]
[also build test WARNING on v4.7-rc5]
[cannot apply to next-20160629]
[if your patch is applied to the wrong git tree, please drop us a note to help 
improve the system]

url:
https://github.com/0day-ci/linux/commits/Fam-Zheng/gendisk-Generate-uevent-after-attribute-available/20160630-100720
base:   https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git 
for-next
reproduce: make htmldocs

All warnings (new ones prefixed by >>):

   lib/crc32.c:148: warning: No description found for parameter 'tab)[256]'
   lib/crc32.c:148: warning: Excess function parameter 'tab' description in 
'crc32_le_generic'
   lib/crc32.c:293: warning: No description found for parameter 'tab)[256]'
   lib/crc32.c:293: warning: Excess function parameter 'tab' description in 
'crc32_be_generic'
   lib/crc32.c:1: warning: no structured comments found
   mm/memory.c:2881: warning: No description found for parameter 'old'
>> block/genhd.c:575: warning: No description found for parameter 'disk'
>> block/genhd.c:575: warning: No description found for parameter 'disk'

vim +/disk +575 block/genhd.c

   559  blkdev_put(bdev, FMODE_READ);
   560  
   561  exit:
   562  /* announce disk after possible partitions are created */
   563  dev_set_uevent_suppress(ddev, 0);
   564  if (gen_uevent)
   565  disk_gen_uevents(disk);
   566  }
   567  
   568  /**
   569   * disk_gen_uevents
   570   * @disk - the disk to generate uevent
   571   *
   572   * Generate KOBJ_ADD uevents on the disk and partitions.
   573   */
   574  void disk_gen_uevents(struct gendisk *disk)
 > 575  {
   576  struct device *ddev = disk_to_dev(disk);
   577  struct disk_part_iter piter;
   578  struct hd_struct *part;
   579  
   580  kobject_uevent(&ddev->kobj, KOBJ_ADD);
   581  
   582  /* announce possible partitions */
   583  disk_part_iter_init(&piter, disk, 0);

---
0-DAY kernel test infrastructureOpen Source Technology Center
https://lists.01.org/pipermail/kbuild-all   Intel Corporation


.config.gz
Description: Binary data
___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

[PATCH v2 02/12] genhd: Honor gen_uevent and add disk_gen_uevents

2016-06-29 Thread Fam Zheng
In add_disk(), don't send uevent to userspace when gen_uevent is true;
also export the refactored function disk_gen_uevents for later use.

Signed-off-by: Fam Zheng 
---
 block/genhd.c | 23 +++
 include/linux/genhd.h |  1 +
 2 files changed, 20 insertions(+), 4 deletions(-)

diff --git a/block/genhd.c b/block/genhd.c
index 8e1bfa1..9b66953 100644
--- a/block/genhd.c
+++ b/block/genhd.c
@@ -506,12 +506,10 @@ static int exact_lock(dev_t devt, void *data)
return 0;
 }
 
-static void register_disk(struct gendisk *disk)
+static void register_disk(struct gendisk *disk, bool gen_uevent)
 {
struct device *ddev = disk_to_dev(disk);
struct block_device *bdev;
-   struct disk_part_iter piter;
-   struct hd_struct *part;
int err;
 
ddev->parent = disk->driverfs_dev;
@@ -563,6 +561,22 @@ static void register_disk(struct gendisk *disk)
 exit:
/* announce disk after possible partitions are created */
dev_set_uevent_suppress(ddev, 0);
+   if (gen_uevent)
+   disk_gen_uevents(disk);
+}
+
+/**
+ * disk_gen_uevents
+ * @disk - the disk to generate uevent
+ *
+ * Generate KOBJ_ADD uevents on the disk and partitions.
+ */
+void disk_gen_uevents(struct gendisk *disk)
+{
+   struct device *ddev = disk_to_dev(disk);
+   struct disk_part_iter piter;
+   struct hd_struct *part;
+
kobject_uevent(&ddev->kobj, KOBJ_ADD);
 
/* announce possible partitions */
@@ -571,6 +585,7 @@ exit:
kobject_uevent(&part_to_dev(part)->kobj, KOBJ_ADD);
disk_part_iter_exit(&piter);
 }
+EXPORT_SYMBOL(disk_gen_uevents);
 
 /**
  * add_disk - add partitioning information to kernel list
@@ -618,7 +633,7 @@ void add_disk(struct gendisk *disk, bool gen_uevent)
 
blk_register_region(disk_devt(disk), disk->minors, NULL,
exact_match, exact_lock, disk);
-   register_disk(disk);
+   register_disk(disk, gen_uevent);
blk_register_queue(disk);
 
/*
diff --git a/include/linux/genhd.h b/include/linux/genhd.h
index 038be80..87ad9e5 100644
--- a/include/linux/genhd.h
+++ b/include/linux/genhd.h
@@ -416,6 +416,7 @@ extern void part_round_stats(int cpu, struct hd_struct 
*part);
 /* block/genhd.c */
 extern void add_disk(struct gendisk *disk, bool gen_uevent);
 extern void del_gendisk(struct gendisk *gp);
+extern void disk_gen_uevents(struct gendisk *disk);
 extern struct gendisk *get_gendisk(dev_t dev, int *partno);
 extern struct block_device *bdget_disk(struct gendisk *disk, int partno);
 
-- 
2.9.0

___
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev