Commit 614310c9 authored by Luis Chamberlain's avatar Luis Chamberlain Committed by Jens Axboe

block: return errors from blk_integrity_add

Prepare for proper error handling in add_disk.
Signed-off-by: default avatarLuis Chamberlain <mcgrof@kernel.org>
[hch: split from a larger patch]
Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Reviewed-by: default avatarHannes Reinecke <hare@suse.de>
Link: https://lore.kernel.org/r/20210818144542.19305-8-hch@lst.deSigned-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 75f4dca5
...@@ -431,13 +431,15 @@ void blk_integrity_unregister(struct gendisk *disk) ...@@ -431,13 +431,15 @@ void blk_integrity_unregister(struct gendisk *disk)
} }
EXPORT_SYMBOL(blk_integrity_unregister); EXPORT_SYMBOL(blk_integrity_unregister);
void blk_integrity_add(struct gendisk *disk) int blk_integrity_add(struct gendisk *disk)
{ {
if (kobject_init_and_add(&disk->integrity_kobj, &integrity_ktype, int ret;
&disk_to_dev(disk)->kobj, "%s", "integrity"))
return;
kobject_uevent(&disk->integrity_kobj, KOBJ_ADD); ret = kobject_init_and_add(&disk->integrity_kobj, &integrity_ktype,
&disk_to_dev(disk)->kobj, "%s", "integrity");
if (!ret)
kobject_uevent(&disk->integrity_kobj, KOBJ_ADD);
return ret;
} }
void blk_integrity_del(struct gendisk *disk) void blk_integrity_del(struct gendisk *disk)
......
...@@ -132,7 +132,7 @@ static inline bool integrity_req_gap_front_merge(struct request *req, ...@@ -132,7 +132,7 @@ static inline bool integrity_req_gap_front_merge(struct request *req,
bip_next->bip_vec[0].bv_offset); bip_next->bip_vec[0].bv_offset);
} }
void blk_integrity_add(struct gendisk *); int blk_integrity_add(struct gendisk *disk);
void blk_integrity_del(struct gendisk *); void blk_integrity_del(struct gendisk *);
#else /* CONFIG_BLK_DEV_INTEGRITY */ #else /* CONFIG_BLK_DEV_INTEGRITY */
static inline bool blk_integrity_merge_rq(struct request_queue *rq, static inline bool blk_integrity_merge_rq(struct request_queue *rq,
...@@ -166,8 +166,9 @@ static inline bool bio_integrity_endio(struct bio *bio) ...@@ -166,8 +166,9 @@ static inline bool bio_integrity_endio(struct bio *bio)
static inline void bio_integrity_free(struct bio *bio) static inline void bio_integrity_free(struct bio *bio)
{ {
} }
static inline void blk_integrity_add(struct gendisk *disk) static inline int blk_integrity_add(struct gendisk *disk)
{ {
return 0;
} }
static inline void blk_integrity_del(struct gendisk *disk) static inline void blk_integrity_del(struct gendisk *disk)
{ {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment