diff options
author | Christoph Hellwig <hch@lst.de> | 2020-04-25 09:57:00 +0200 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2020-05-04 10:13:42 -0600 |
commit | a711d91cd97e6c9a554ccd1652527a7f36661857 (patch) | |
tree | f2cde770a237e0bc8415b86a709cfa070a0d7a21 /include/linux/genhd.h | |
parent | 21f3cfeab304fc07b90d93d98d4d2f62110fe6b2 (diff) | |
download | lwn-a711d91cd97e6c9a554ccd1652527a7f36661857.tar.gz lwn-a711d91cd97e6c9a554ccd1652527a7f36661857.zip |
block: add a cdrom_device_info pointer to struct gendisk
Add a pointer to the CDROM information structure to struct gendisk.
This will allow various removable media file systems to call directly
into the CDROM layer instead of abusing ioctls with kernel pointers.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Damien Le Moal <damien.lemoal@wdc.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'include/linux/genhd.h')
-rw-r--r-- | include/linux/genhd.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/include/linux/genhd.h b/include/linux/genhd.h index 058d895544c7..f9c226f9546a 100644 --- a/include/linux/genhd.h +++ b/include/linux/genhd.h @@ -217,11 +217,20 @@ struct gendisk { #ifdef CONFIG_BLK_DEV_INTEGRITY struct kobject integrity_kobj; #endif /* CONFIG_BLK_DEV_INTEGRITY */ +#if IS_ENABLED(CONFIG_CDROM) + struct cdrom_device_info *cdi; +#endif int node_id; struct badblocks *bb; struct lockdep_map lockdep_map; }; +#if IS_REACHABLE(CONFIG_CDROM) +#define disk_to_cdi(disk) ((disk)->cdi) +#else +#define disk_to_cdi(disk) NULL +#endif + static inline struct gendisk *part_to_disk(struct hd_struct *part) { if (likely(part)) { |