summaryrefslogtreecommitdiffstats
path: root/block/blk-mq-debugfs.c
diff options
context:
space:
mode:
authorJonathan Cameron <Jonathan.Cameron@huawei.com>2020-07-22 17:50:45 +0200
committerJonathan Cameron <Jonathan.Cameron@huawei.com>2020-08-22 12:38:57 +0200
commit523628852a5f5f34a15252b2634d0498d3cfb347 (patch)
tree4fed87f8ee7c1823b04b0d839fd6d365c0bcc060 /block/blk-mq-debugfs.c
parentiio:chemical:ccs811: Fix timestamp alignment and prevent data leak. (diff)
downloadlinux-523628852a5f5f34a15252b2634d0498d3cfb347.tar.xz
linux-523628852a5f5f34a15252b2634d0498d3cfb347.zip
iio:light:max44000 Fix timestamp alignment and prevent data leak.
One of a class of bugs pointed out by Lars in a recent review. iio_push_to_buffers_with_timestamp assumes the buffer used is aligned to the size of the timestamp (8 bytes). This is not guaranteed in this driver which uses a 16 byte array of smaller elements on the stack. As Lars also noted this anti pattern can involve a leak of data to userspace and that indeed can happen here. We close both issues by moving to a suitable structure in the iio_priv(). This data is allocated with kzalloc so no data can leak appart from previous readings. It is necessary to force the alignment of ts to avoid the padding on x86_32 being different from 64 bit platorms (it alows for 4 bytes aligned 8 byte types. Fixes: 06ad7ea10e2b ("max44000: Initial triggered buffer support") Reported-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Cc: <Stable@vger.kernel.org>
Diffstat (limited to 'block/blk-mq-debugfs.c')
0 files changed, 0 insertions, 0 deletions