On Sun, 2020-05-03 at 18:22 +0100, jic23@xxxxxxxxxx wrote: > From: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > > iio_push_to_buffers_with_timestamp assumes 8 byte alignment which > is not guaranteed by an array of 8 __be16. > > Reported-by: Lars-Peter Clausen <lars@xxxxxxxxxx> > Signed-off-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx> > --- > drivers/iio/accel/kxsd9.c | 12 +++++++----- > 1 file changed, 7 insertions(+), 5 deletions(-) > > diff --git a/drivers/iio/accel/kxsd9.c b/drivers/iio/accel/kxsd9.c > index 0b876b2dc5bd..4c42d1200914 100644 > --- a/drivers/iio/accel/kxsd9.c > +++ b/drivers/iio/accel/kxsd9.c > @@ -209,14 +209,16 @@ static irqreturn_t kxsd9_trigger_handler(int > irq, void *p) > const struct iio_poll_func *pf = p; > struct iio_dev *indio_dev = pf->indio_dev; > struct kxsd9_state *st = iio_priv(indio_dev); > + struct { > + __be16 chan[4]; > + u64 ts; > + } hw_values; A nitpick from my side. Maybe a comment woudn't be that noisy. It might be not that obvious for some people why this construct is needed and it might prevent new driver's from doing the same mistake. - Nuno Sá