loop: Add LOOP_SET_DIRECT_IO to compat ioctl
Enabling Direct I/O with loop devices helps reducing memory usage by avoiding double caching. 32 bit applications running on 64 bits systems are currently not able to request direct I/O because is missing from the lo_compat_ioctl. This patch fixes the compatibility issue mentioned above by exporting LOOP_SET_DIRECT_IO as additional lo_compat_ioctl() entry. The input argument for this ioctl is a single long converted to a 1-bit boolean, so compatibility is preserved. Cc: Jens Axboe <axboe@kernel.dk> Signed-off-by: Alessio Balsini <balsini@android.com> Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
79e178f438
commit
fdbe4eeeb1
|
@ -1755,6 +1755,7 @@ static int lo_compat_ioctl(struct block_device *bdev, fmode_t mode,
|
||||||
case LOOP_SET_FD:
|
case LOOP_SET_FD:
|
||||||
case LOOP_CHANGE_FD:
|
case LOOP_CHANGE_FD:
|
||||||
case LOOP_SET_BLOCK_SIZE:
|
case LOOP_SET_BLOCK_SIZE:
|
||||||
|
case LOOP_SET_DIRECT_IO:
|
||||||
err = lo_ioctl(bdev, mode, cmd, arg);
|
err = lo_ioctl(bdev, mode, cmd, arg);
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|
Loading…
Reference in New Issue