Go to file
Jonathan Cameron 838e00b13b iio:magnetometer:ak8974: Fix alignment and data leak issues
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 an 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() data.

This data is allocated with kzalloc so no data can leak appart from
previous readings.

Fixes: 7c94a8b2ee ("iio: magn: add a driver for AK8974")
Reported-by: Lars-Peter Clausen <lars@metafoo.de>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Cc: <Stable@vger.kernel.org>
2020-07-05 14:22:48 +01:00
Documentation The Kernel Concurrency Sanitizer (KCSAN) 2020-06-11 18:55:43 -07:00
LICENSES LICENSES: Rename other to deprecated 2019-05-03 06:34:32 -06:00
arch The Kernel Concurrency Sanitizer (KCSAN) 2020-06-11 18:55:43 -07:00
block blk-mq: fix blk_mq_all_tag_iter 2020-06-07 08:56:50 -06:00
certs .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
crypto Merge branch 'rwonce/rework' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux 2020-06-10 14:46:54 -07:00
drivers iio:magnetometer:ak8974: Fix alignment and data leak issues 2020-07-05 14:22:48 +01:00
fs Merge branch 'akpm' (patches from Andrew) 2020-06-11 18:18:50 -07:00
include The Kernel Concurrency Sanitizer (KCSAN) 2020-06-11 18:55:43 -07:00
init Rebase locking/kcsan to locking/urgent 2020-06-11 20:02:46 +02:00
ipc mmap locking API: use coccinelle to convert mmap_sem rwsem call sites 2020-06-09 09:39:14 -07:00
kernel The Kernel Concurrency Sanitizer (KCSAN) 2020-06-11 18:55:43 -07:00
lib The Kernel Concurrency Sanitizer (KCSAN) 2020-06-11 18:55:43 -07:00
mm The Kernel Concurrency Sanitizer (KCSAN) 2020-06-11 18:55:43 -07:00
net NFS Client Updates for Linux 5.8 2020-06-11 12:22:41 -07:00
samples Kbuild updates for v5.8 2020-06-06 12:00:25 -07:00
scripts The Kernel Concurrency Sanitizer (KCSAN) 2020-06-11 18:55:43 -07:00
security overlayfs update for 5.8 2020-06-09 15:40:50 -07:00
sound sound fixes for 5.8-rc1 2020-06-11 12:38:11 -07:00
tools The Kernel Concurrency Sanitizer (KCSAN) 2020-06-11 18:55:43 -07:00
usr bpfilter: match bit size of bpfilter_umh to that of the kernel 2020-05-17 18:52:01 +09:00
virt mmap locking API: use coccinelle to convert mmap_sem rwsem call sites 2020-06-09 09:39:14 -07:00
.clang-format block: add bio_for_each_bvec_all() 2020-05-25 11:25:24 +02:00
.cocciconfig scripts: add Linux .cocciconfig for coccinelle 2016-07-22 12:13:39 +02:00
.get_maintainer.ignore Opt out of scripts/get_maintainer.pl 2019-05-16 10:53:40 -07:00
.gitattributes .gitattributes: use 'dts' diff driver for dts files 2019-12-04 19:44:11 -08:00
.gitignore modpost: generate vmlinux.symvers and reuse it for the second modpost 2020-06-06 23:38:12 +09:00
.mailmap A fair amount of stuff this time around, dominated by yet another massive 2020-06-01 15:45:27 -07:00
COPYING COPYING: state that all contributions really are covered by this file 2020-02-10 13:32:20 -08:00
CREDITS mailmap: change email for Ricardo Ribalda 2020-05-25 18:59:59 -06:00
Kbuild kbuild: rename hostprogs-y/always to hostprogs/always-y 2020-02-04 01:53:07 +09:00
Kconfig kbuild: ensure full rebuild when the compiler is updated 2020-05-12 13:28:33 +09:00
MAINTAINERS The Kernel Concurrency Sanitizer (KCSAN) 2020-06-11 18:55:43 -07:00
Makefile Rebase locking/kcsan to locking/urgent 2020-06-11 20:02:46 +02:00
README Drop all 00-INDEX files from Documentation/ 2018-09-09 15:08:58 -06:00

README

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.