linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Kent Gibson <warthog618@gmail.com>
To: linux-kernel@vger.kernel.org, linux-gpio@vger.kernel.org,
	bgolaszewski@baylibre.com, linus.walleij@linaro.org,
	andy.shevchenko@gmail.com, arnd@arndb.de
Cc: Kent Gibson <warthog618@gmail.com>
Subject: [PATCH v10 01/20] gpiolib: cdev: gpio_desc_to_lineinfo() should set info offset
Date: Mon, 28 Sep 2020 08:27:48 +0800	[thread overview]
Message-ID: <20200928002807.12146-2-warthog618@gmail.com> (raw)
In-Reply-To: <20200928002807.12146-1-warthog618@gmail.com>

Set the value of the line info offset in gpio_desc_to_lineinfo(), rather
than relying on it being passed in the info.  This makes the function
behave as you would expect from the name - it generates the line info
corresponding to a given GPIO desc.

Signed-off-by: Kent Gibson <warthog618@gmail.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
---

There are some instances where this results in the offset being set when
it is already set in the info, but this is clearer especially considering
that, as part of the replacement of strncpy with strscpy and to ensure
kernel stack cannot be leaked to userspace, the info is initially zeroed
in a subsequent patch.

 drivers/gpio/gpiolib-cdev.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpio/gpiolib-cdev.c b/drivers/gpio/gpiolib-cdev.c
index e6c9b78adfc2..81ce2020f17b 100644
--- a/drivers/gpio/gpiolib-cdev.c
+++ b/drivers/gpio/gpiolib-cdev.c
@@ -752,6 +752,8 @@ static void gpio_desc_to_lineinfo(struct gpio_desc *desc,
 	bool ok_for_pinctrl;
 	unsigned long flags;
 
+	info->line_offset = gpio_chip_hwgpio(desc);
+
 	/*
 	 * This function takes a mutex so we must check this before taking
 	 * the spinlock.
@@ -933,7 +935,6 @@ static int lineinfo_changed_notify(struct notifier_block *nb,
 		return NOTIFY_DONE;
 
 	memset(&chg, 0, sizeof(chg));
-	chg.info.line_offset = gpio_chip_hwgpio(desc);
 	chg.event_type = action;
 	chg.timestamp = ktime_get_ns();
 	gpio_desc_to_lineinfo(desc, &chg.info);
-- 
2.28.0


  reply	other threads:[~2020-09-28  0:28 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-09-28  0:27 [PATCH v10 00/20] gpio: cdev: add uAPI v2 Kent Gibson
2020-09-28  0:27 ` Kent Gibson [this message]
2020-09-28  0:27 ` [PATCH v10 02/20] gpiolib: cdev: replace strncpy() with strscpy() Kent Gibson
2020-09-28  0:27 ` [PATCH v10 03/20] gpio: uapi: define GPIO_MAX_NAME_SIZE for array sizes Kent Gibson
2020-09-28  0:27 ` [PATCH v10 04/20] gpio: uapi: define uAPI v2 Kent Gibson
2020-09-28  0:27 ` [PATCH v10 05/20] gpiolib: make cdev a build option Kent Gibson
2020-09-28  0:27 ` [PATCH v10 06/20] gpiolib: add build option for CDEV v1 ABI Kent Gibson
2020-09-28  0:27 ` [PATCH v10 07/20] gpiolib: cdev: support GPIO_V2_GET_LINE_IOCTL and GPIO_V2_LINE_GET_VALUES_IOCTL Kent Gibson
2020-09-28  0:27 ` [PATCH v10 08/20] gpiolib: cdev: support GPIO_V2_GET_LINEINFO_IOCTL and GPIO_V2_GET_LINEINFO_WATCH_IOCTL Kent Gibson
2020-09-28  0:27 ` [PATCH v10 09/20] gpiolib: cdev: support edge detection for uAPI v2 Kent Gibson
2020-09-28  0:27 ` [PATCH v10 10/20] gpiolib: cdev: support GPIO_V2_LINE_SET_CONFIG_IOCTL Kent Gibson
2020-09-28  0:27 ` [PATCH v10 11/20] gpiolib: cdev: support GPIO_V2_LINE_SET_VALUES_IOCTL Kent Gibson
2020-09-28  0:27 ` [PATCH v10 12/20] gpiolib: cdev: support setting debounce Kent Gibson
2020-09-28  0:28 ` [PATCH v10 13/20] gpio: uapi: document uAPI v1 as deprecated Kent Gibson
2020-09-28  0:28 ` [PATCH v10 14/20] tools: gpio: port lsgpio to v2 uAPI Kent Gibson
2020-09-28  0:28 ` [PATCH v10 15/20] tools: gpio: port gpio-watch " Kent Gibson
2020-09-28  0:28 ` [PATCH v10 16/20] tools: gpio: rename nlines to num_lines Kent Gibson
2020-09-28  0:28 ` [PATCH v10 17/20] tools: gpio: port gpio-hammer to v2 uAPI Kent Gibson
2020-09-28  0:28 ` [PATCH v10 18/20] tools: gpio: port gpio-event-mon " Kent Gibson
2020-09-28  0:28 ` [PATCH v10 19/20] tools: gpio: add multi-line monitoring to gpio-event-mon Kent Gibson
2020-09-28  0:28 ` [PATCH v10 20/20] tools: gpio: add debounce support " Kent Gibson
2020-09-29 15:13 ` [PATCH v10 00/20] gpio: cdev: add uAPI v2 Bartosz Golaszewski
2020-09-29 16:22   ` Andy Shevchenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200928002807.12146-2-warthog618@gmail.com \
    --to=warthog618@gmail.com \
    --cc=andy.shevchenko@gmail.com \
    --cc=arnd@arndb.de \
    --cc=bgolaszewski@baylibre.com \
    --cc=linus.walleij@linaro.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).