mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-08-05 16:54:27 +00:00
gpio: make the iterator point to last handle
When initializing the GPIO handles, we use the iterator (i) to back off if something goes wrong. But since the iterator is also used after we pass the loop, we must decrement by one after exiting the loop so that we point at the last element in the array. Reported-by: Dan Carpenter <dan.carpenter@oracle.com> Cc: Dan Carpenter <dan.carpenter@oracle.com> Cc: Walter Harms <wharms@bfs.de> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
This commit is contained in:
parent
bc0207a546
commit
e2f608be64
1 changed files with 2 additions and 0 deletions
|
@ -474,6 +474,8 @@ static int linehandle_create(struct gpio_device *gdev, void __user *ip)
|
|||
dev_dbg(&gdev->dev, "registered chardev handle for line %d\n",
|
||||
offset);
|
||||
}
|
||||
/* Let i point at the last handle */
|
||||
i--;
|
||||
lh->numdescs = handlereq.lines;
|
||||
|
||||
fd = anon_inode_getfd("gpio-linehandle",
|
||||
|
|
Loading…
Add table
Reference in a new issue