diff options
author | Mark Brown <broonie@kernel.org> | 2018-09-25 09:16:48 -0700 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2018-09-25 09:16:48 -0700 |
commit | 8b665c82acaa5a92671c7937521b2adc909bf40d (patch) | |
tree | bf090b90bdaa8e4f40ae44107247a83f850c6bb0 /drivers/block | |
parent | e5a0a3460305fa0be3bbddfe4c536bdf871528bf (diff) | |
parent | 917fa4e672939669f74f1c879b3aae6239f6719b (diff) |
Merge tag 'v4.14.71-rt44' into linux-linaro-lsk-v4.14-rt
Linux 4.14.71-rt44
Diffstat (limited to 'drivers/block')
-rw-r--r-- | drivers/block/nbd.c | 3 | ||||
-rw-r--r-- | drivers/block/pktcdvd.c | 4 |
2 files changed, 6 insertions, 1 deletions
diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c index 5e55d03d3d01..fe1414df0f33 100644 --- a/drivers/block/nbd.c +++ b/drivers/block/nbd.c @@ -1228,6 +1228,9 @@ static int __nbd_ioctl(struct block_device *bdev, struct nbd_device *nbd, case NBD_SET_SOCK: return nbd_add_socket(nbd, arg, false); case NBD_SET_BLKSIZE: + if (!arg || !is_power_of_2(arg) || arg < 512 || + arg > PAGE_SIZE) + return -EINVAL; nbd_size_set(nbd, arg, div_s64(config->bytesize, arg)); return 0; diff --git a/drivers/block/pktcdvd.c b/drivers/block/pktcdvd.c index 531a0915066b..11ec92e47455 100644 --- a/drivers/block/pktcdvd.c +++ b/drivers/block/pktcdvd.c @@ -67,7 +67,7 @@ #include <scsi/scsi.h> #include <linux/debugfs.h> #include <linux/device.h> - +#include <linux/nospec.h> #include <linux/uaccess.h> #define DRIVER_NAME "pktcdvd" @@ -2231,6 +2231,8 @@ static struct pktcdvd_device *pkt_find_dev_from_minor(unsigned int dev_minor) { if (dev_minor >= MAX_WRITERS) return NULL; + + dev_minor = array_index_nospec(dev_minor, MAX_WRITERS); return pkt_devs[dev_minor]; } |