diff options
author | Martin K. Petersen <martin.petersen@oracle.com> | 2012-01-11 16:29:31 +0100 |
---|---|---|
committer | Ziyan <jaraidaniel@gmail.com> | 2016-01-08 10:42:57 +0100 |
commit | 806e6596b906483c2f2f2c057908593ede5973f1 (patch) | |
tree | 2ce8507e8cc18dc985da1f2aec0fd5c4c48aea4e /block | |
parent | f5316271c9a92ab48c762174c9e7fb82e5852dda (diff) | |
download | kernel_samsung_tuna-806e6596b906483c2f2f2c057908593ede5973f1.zip kernel_samsung_tuna-806e6596b906483c2f2f2c057908593ede5973f1.tar.gz kernel_samsung_tuna-806e6596b906483c2f2f2c057908593ede5973f1.tar.bz2 |
block: Add BLKROTATIONAL ioctl
Introduce an ioctl which permits applications to query whether a block
device is rotational.
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block')
-rw-r--r-- | block/compat_ioctl.c | 3 | ||||
-rw-r--r-- | block/ioctl.c | 2 |
2 files changed, 5 insertions, 0 deletions
diff --git a/block/compat_ioctl.c b/block/compat_ioctl.c index cc3eb78..f8fafc7 100644 --- a/block/compat_ioctl.c +++ b/block/compat_ioctl.c @@ -733,6 +733,9 @@ long compat_blkdev_ioctl(struct file *file, unsigned cmd, unsigned long arg) case BLKSECTGET: return compat_put_ushort(arg, queue_max_sectors(bdev_get_queue(bdev))); + case BLKROTATIONAL: + return compat_put_ushort(arg, + !blk_queue_nonrot(bdev_get_queue(bdev))); case BLKRASET: /* compatible, but no compat_ptr (!) */ case BLKFRASET: if (!capable(CAP_SYS_ADMIN)) diff --git a/block/ioctl.c b/block/ioctl.c index f082e04..fd129da 100644 --- a/block/ioctl.c +++ b/block/ioctl.c @@ -295,6 +295,8 @@ int blkdev_ioctl(struct block_device *bdev, fmode_t mode, unsigned cmd, return put_uint(arg, bdev_discard_zeroes_data(bdev)); case BLKSECTGET: return put_ushort(arg, queue_max_sectors(bdev_get_queue(bdev))); + case BLKROTATIONAL: + return put_ushort(arg, !blk_queue_nonrot(bdev_get_queue(bdev))); case BLKRASET: case BLKFRASET: if(!capable(CAP_SYS_ADMIN)) |