lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Sat, 28 Oct 2023 17:32:21 +0100
From:   Jonathan Cameron <jic23@...nel.org>
To:     Matti Vaittinen <mazziesaccount@...il.com>
Cc:     Matti Vaittinen <matti.vaittinen@...rohmeurope.com>,
        Lars-Peter Clausen <lars@...afoo.de>,
        linux-iio@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 0/2] Sanity-check available_scan_masks array

On Sat, 21 Oct 2023 19:03:15 +0300
Matti Vaittinen <mazziesaccount@...il.com> wrote:

> On 10/21/23 18:55, Jonathan Cameron wrote:
> > On Mon, 16 Oct 2023 14:04:11 +0300
> > Matti Vaittinen <mazziesaccount@...il.com> wrote:
> >   
> >> Sanity-check available_scan_masks array
> >>
> >> The available_scan_masks is an array of bitmasks representing the
> >> channels which can be simultaneously(*) scanned by a driver from the
> >> device. Following special characteristics apply:
> >>
> >> - When IIO is scanning through the array it will use the first mask
> >>    which can be used to scan all enabled channels. This means drivers
> >>    should order the array in the order of the preference. This does also
> >>    mean that a mask which is a subset of a mask located earler in array
> >>    will never be used because the earlier one will be picked by the core.
> >> - Masks wider than size of long are supported only to some extent. The
> >>    code scanning through the array will interpret the first mask with
> >>    first long zeroed as end-of-array terminator. Changing this behaviour
> >>    would make mask-arrays for multi-long masks to be terminated by more
> >>    than one zero long. Failure to do so would result kernel to read
> >>    beyond the array generating a potentially hazardous bug.
> >>
> >> Add a sanity-check to IIO-device registration emitting a warning if
> >> available_scan_mask array is misordered or if mask width is larger than
> >> a long while available_scan_mask-array is populated. Currently there
> >> should be no in-tree drivers with available_scan_mask populated and mask
> >> wider than a long.
> >>
> >> Revision history:
> >> v1 => v2:
> >> 	- Add patch 2/2 documenting why iio_scan_mask_match() checks only
> >> 	  a long worth of bits while searching for the end of the
> >> 	  available_scan_mask-array.
> >> 	- Styling of patch 1/2 as per comments from Jonathan
> >> 	v1 and related discussion here:
> >> 	https://lore.kernel.org/lkml/ZRvjuZaQWdZw1U1I@dc78bmyyyyyyyyyyyyydt-3.rev.dnainternet.fi/
> >>
> >> Matti Vaittinen (2):
> >>    iio: sanity check available_scan_masks array
> >>    iio: buffer: document known issue
> >>
> >>   drivers/iio/industrialio-buffer.c | 16 ++++++++
> >>   drivers/iio/industrialio-core.c   | 63 +++++++++++++++++++++++++++++++
> >>   2 files changed, 79 insertions(+)
> >>  
> > 
> > Hi Matti,
> > 
> > Just a quick note to say this looks fine to me, but I don't want to queue it up
> > just yet given proximity to merge window etc.  
> 
> Makes perfect sense to me.
> 
> >  I'll aim to pick it up early
> > in next cycle. Give me a poke if I still haven't by rc3 or so.  
> 
> Ouch... My memory gets worse year by year - well, I'll try to remember :)

I've started queuing stuff up for rebasing post merge window, so I've
added this as well. For now will only be exposed as the testing branch
that 0-day pokes at.

Thanks,

Jonathan

> 
> Yours,
> 	-- Matti
> 

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ