]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/commit - include/linux/blkdev.h
block: Move SECTOR_SIZE and SECTOR_SHIFT definitions into <linux/blkdev.h>
authorBart Van Assche <bart.vanassche@wdc.com>
Wed, 14 Mar 2018 22:48:06 +0000 (15:48 -0700)
committerJens Axboe <axboe@kernel.dk>
Sat, 17 Mar 2018 20:45:23 +0000 (14:45 -0600)
commit233bde21aa43516baa013ef7ac33f3427056db3e
treec90ab5a8f118fad728fd1506e672885834f80bb6
parentec6dcf63c55c8b09b44fe5990082b07baf139c69
block: Move SECTOR_SIZE and SECTOR_SHIFT definitions into <linux/blkdev.h>

It happens often while I'm preparing a patch for a block driver that
I'm wondering: is a definition of SECTOR_SIZE and/or SECTOR_SHIFT
available for this driver? Do I have to introduce definitions of these
constants before I can use these constants? To avoid this confusion,
move the existing definitions of SECTOR_SIZE and SECTOR_SHIFT into the
<linux/blkdev.h> header file such that these become available for all
block drivers. Make the SECTOR_SIZE definition in the uapi msdos_fs.h
header file conditional to avoid that including that header file after
<linux/blkdev.h> causes the compiler to complain about a SECTOR_SIZE
redefinition.

Note: the SECTOR_SIZE / SECTOR_SHIFT / SECTOR_BITS definitions have
not been removed from uapi header files nor from NAND drivers in
which these constants are used for another purpose than converting
block layer offsets and sizes into a number of sectors.

Cc: David S. Miller <davem@davemloft.net>
Cc: Mike Snitzer <snitzer@redhat.com>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Minchan Kim <minchan@kernel.org>
Cc: Nitin Gupta <ngupta@vflare.org>
Reviewed-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Bart Van Assche <bart.vanassche@wdc.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
13 files changed:
arch/xtensa/platforms/iss/simdisk.c
drivers/block/brd.c
drivers/block/null_blk.c
drivers/block/rbd.c
drivers/block/zram/zram_drv.h
drivers/ide/ide-cd.c
drivers/ide/ide-cd.h
drivers/nvdimm/nd.h
drivers/scsi/gdth.h
include/linux/blkdev.h
include/linux/device-mapper.h
include/linux/ide.h
include/uapi/linux/msdos_fs.h