Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp2714465pxv; Sun, 11 Jul 2021 23:35:23 -0700 (PDT) X-Google-Smtp-Source: ABdhPJw6NlTw6VRyQzr67+piPpLYvtTHUdSpD84twx4c68jqUoHNKAirLMwoJNDM9HxiTgt0oWkU X-Received: by 2002:a17:906:48cd:: with SMTP id d13mr30954153ejt.311.1626071723412; Sun, 11 Jul 2021 23:35:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626071723; cv=none; d=google.com; s=arc-20160816; b=FI9+3Z+vlzb1Exa6XBNj9dkWEvT4DJIDVBJmfhmlj9VuPpmiTQiO5uNfQIKhqcf32t VfGAkJqIOOzrF7s8oWs6Y6+tQNCJEw/IK8boDu8hP1xDmPj/aK2st6Ujqc6p2WNS/xVT PmlG/CrDoqasRP1PPx3D1hc+EBwhkqY3vztE2TENawAiY92N7wOllN7yVJ+GVyiUoQc3 2+JniAMtitf7BEi38CtjVPl4o/mUrCv7dJbsCAIWqnzLkBLUJxCLieEVZSs/2KKmrcyH gKoWmQLI796UcR6fVRXpXZ83hx1u6kcJgqIlA+c7WFmZ4zwsInC6CMMMXd2U4fvj0TGZ 84tA== 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=IoT7ffJZ9enxjFmjO8s+n28WEpDQWkSFIBY5MNo4QPc=; b=alduLDrOCFB7WjUBd30BmMg4G67B+4h9MeQxFMTdYvUPChxC5EPh3cKngR5g53MDrQ TpnjcVBoCQWy+sCi8RkE1c+EW8+13LUrT9qej1jCCvibTQkoiNTygTUV3OKtXRrYAYzU 9iBGQi4SFqE5qoh+NpEocXhGgcTSLJw9EuAj3AindpeLD3y2egERSOUSOcaLQmvYVtOq cG1mutZE3PWpP5UgBOkNMwGEQldmPOnwpkjzN9ASgLF8f5XklYmUTERebX6iKfS2Fsj3 4lbprpUk5IX6PgKcrrE+RuqKALYNsWkwGNunh5925khCH84yMFp6ZaKvPtOCyuZ1hHZT b0mw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=zXqgqLeu; 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 ds22si1386638ejc.605.2021.07.11.23.35.00; Sun, 11 Jul 2021 23:35:23 -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=zXqgqLeu; 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 S237880AbhGLGe4 (ORCPT + 99 others); Mon, 12 Jul 2021 02:34:56 -0400 Received: from mail.kernel.org ([198.145.29.99]:45894 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233251AbhGLG2v (ORCPT ); Mon, 12 Jul 2021 02:28:51 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 45BCA61183; Mon, 12 Jul 2021 06:25:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1626071109; bh=wCWALNa4ewvd6omXSa8C7gZQ+oFtRheEIXd3ZHgH6+U=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=zXqgqLeu99AQe+JXE9FW4dnBTu242SvEB7tCLOyixvJQu3+NP4x7FoJNkFej4B/iJ wlE8rfO5j5atcWahkiEQuEnP60q8poKc8xRd4CRIAbF6tAvcGSCMNbg5hsziz19kLK 9H8TWcsilpoVaNL4xShoMh+NVaxG6KnKPrIKHaP8= 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 5.4 278/348] iio: light: tcs3414: Fix buffer alignment in iio_push_to_buffers_with_timestamp() Date: Mon, 12 Jul 2021 08:11:02 +0200 Message-Id: <20210712060740.548920149@linuxfoundation.org> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20210712060659.886176320@linuxfoundation.org> References: <20210712060659.886176320@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 7c0291c5fe76..85bfe3b63f4f 100644 --- a/drivers/iio/light/tcs3414.c +++ b/drivers/iio/light/tcs3414.c @@ -53,7 +53,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) { \ @@ -209,10 +213,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