Received: by 2002:a05:6a10:1287:0:0:0:0 with SMTP id d7csp3767822pxv; Mon, 19 Jul 2021 08:17:34 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxG8uHnl2cq2XM0B6VUEI0FUc4E50ZCK6zGFqA91fRbfCxYvB9NZloQs+cdhLduTED/V5gF X-Received: by 2002:a6b:e207:: with SMTP id z7mr14094984ioc.111.1626707853920; Mon, 19 Jul 2021 08:17:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626707853; cv=none; d=google.com; s=arc-20160816; b=o+Gyu3/NoZkOFcxD7WkAo3BGA2jCDuefVM8IgUDMKN3gk8HH+CnFOYShXH/cwrYtZ4 AMnTYAB82zo4WserL1yOymuSZAmyIZwr1ZPCG5UeMcmaRB2WL7IVxjex721sYBt1VVMK y14n7ZwSveO0j0l/1TaSAG+UNrUlDvHkahdRtPIujEeX34cup+zzLzQGyS6xYLsCPbuV sEknzqsO1LeBzaoeGpiS4qWHfBUBV5kmawgxXFqDMB+SNqpvuwBLCR2TMKWx/5KCOYPu 2Wkp/XqsXMdvfNXjCbVSMJ+4SBki6fB7k2ZVSQWrRRXDDKFjUIU2zyEGevPRXDHfmiG6 FhJw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=56Iqjr9yycYmKZKdaRMZjRiJDEWG4/hcty7cgcon2Iw=; b=RPRtGOttcxorVR2j+Li68uaIFHPGSh9gQ3M5Iz4X2sT4cAxKH0LsspV1y0Ni6OnT0H SepZ783kI0d3eMGHx92JDUdrqDeiIhYNNbyEDQwpGb4E500tSyKbb5oqNoPqhEs8zI2v vr0OPRXAGcbBJyN2G6DM4oNzqJJwhzVPJx/6yjndGuu808zT9g7zbiWpI4PvrWjK0jqD QpB/eOGAoaXP0TGU/y1eoEwMuliG7dzFXnE3yM6/V10c2NCg4ay0Di5u3zVNBZo+jMY0 ZlZwgKXpFCHIcxBVze1UrQOsLQ2/Whky6jepNOMTi9qAvE/2yi6R5+ejw9PNYFCUGfY/ iTtw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=CEM9Knve; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id n6si21889807ilj.66.2021.07.19.08.17.21; Mon, 19 Jul 2021 08:17:33 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=CEM9Knve; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244918AbhGSOgI (ORCPT + 99 others); Mon, 19 Jul 2021 10:36:08 -0400 Received: from mail.kernel.org ([198.145.29.99]:38648 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S244463AbhGSO3q (ORCPT ); Mon, 19 Jul 2021 10:29:46 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 84ECD6120D; Mon, 19 Jul 2021 15:09:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1626707378; bh=QA02mMdXZSWl0ubKkp4Oiy6y8Z2qmOYBGuEpv++eWQM=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=CEM9KnveEYiavhul/Z2HP3KSlFqsAQnYetTa8t0xyyeMKhraYd2eKPISnjr5cJrpz AkXCalTRULIfTtlxIwbpm10jjWHOne4LdMZiWDRcimeuJjkflamVKrGaPFld6wKNh6 XzGgcwFJ2g5VeRQMJF8UtwkC2JKwwPBSnzF3Zbhk= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Jonathan Cameron , Andy Shevchenko , Sasha Levin Subject: [PATCH 4.9 105/245] iio: light: tcs3414: Fix buffer alignment in iio_push_to_buffers_with_timestamp() Date: Mon, 19 Jul 2021 16:50:47 +0200 Message-Id: <20210719144943.813630370@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210719144940.288257948@linuxfoundation.org> References: <20210719144940.288257948@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Jonathan Cameron [ Upstream commit ff08fbc22ab32ccc6690c21b0e5e1d402dcc076f ] To make code more readable, use a structure to express the channel layout and ensure the timestamp is 8 byte aligned. Found during an audit of all calls of uses of iio_push_to_buffers_with_timestamp() Fixes: a244e7b57f0f ("iio: Add driver for AMS/TAOS tcs3414 digital color sensor") Signed-off-by: Jonathan Cameron Reviewed-by: Andy Shevchenko Link: https://lore.kernel.org/r/20210501170121.512209-19-jic23@kernel.org Signed-off-by: Sasha Levin --- drivers/iio/light/tcs3414.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/drivers/iio/light/tcs3414.c b/drivers/iio/light/tcs3414.c index a795afb7667b..b51cd43ef824 100644 --- a/drivers/iio/light/tcs3414.c +++ b/drivers/iio/light/tcs3414.c @@ -56,7 +56,11 @@ struct tcs3414_data { u8 control; u8 gain; u8 timing; - u16 buffer[8]; /* 4x 16-bit + 8 bytes timestamp */ + /* Ensure timestamp is naturally aligned */ + struct { + u16 chans[4]; + s64 timestamp __aligned(8); + } scan; }; #define TCS3414_CHANNEL(_color, _si, _addr) { \ @@ -212,10 +216,10 @@ static irqreturn_t tcs3414_trigger_handler(int irq, void *p) if (ret < 0) goto done; - data->buffer[j++] = ret; + data->scan.chans[j++] = ret; } - iio_push_to_buffers_with_timestamp(indio_dev, data->buffer, + iio_push_to_buffers_with_timestamp(indio_dev, &data->scan, iio_get_time_ns(indio_dev)); done: -- 2.30.2