[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e0692316-f8c5-4ddc-ab39-ba70cbfbdf28@gmx.net>
Date: Tue, 30 Jul 2024 20:05:24 +0200
From: Stefan Wahren <wahrenst@....net>
To: Umang Jain <umang.jain@...asonboard.com>, linux-staging@...ts.linux.dev
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Florian Fainelli <florian.fainelli@...adcom.com>, Ray Jui
<rjui@...adcom.com>, Scott Branden <sbranden@...adcom.com>,
Dan Carpenter <dan.carpenter@...aro.org>,
Kieran Bingham <kieran.bingham@...asonboard.com>,
Laurent Pinchart <laurent.pinchart@...asonboard.com>,
Yang Li <yang.lee@...ux.alibaba.com>, Arnd Bergmann <arnd@...db.de>,
Wolfram Sang <wsa+renesas@...g-engineering.com>,
linux-rpi-kernel@...ts.infradead.org, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] staging: vchiq: Avoid mixing bulk_userdata kernel and
userspace pointer
Hi Umang,
Am 30.07.24 um 19:08 schrieb Umang Jain:
> In vchiq_dev.c, there are two places where the __user bulk_userdata
> pointer to set to a kernel-space pointer which then gives relevant
> Sparse warnings as below:
>
> vchiq_dev.c:328:26: warning: incorrect type in assignment (different address spaces)
> vchiq_dev.c:328:26: expected void *[assigned] userdata
> vchiq_dev.c:328:26: got void [noderef] __user *userdata
> vchiq_dev.c:543:47: warning: incorrect type in assignment (different address spaces)
> vchiq_dev.c:543:47: expected void [noderef] __user *[addressable] [assigned] bulk_userdata
> vchiq_dev.c:543:47: got void *bulk_userdata
>
> This is solved by adding additional functional argument to track the
> userspace bulk_userdata separately and passing it accordingly to
> completion handlers.
IMO this patch fixes the issue for spare, but don't address the
confusing member naming for humans. It's not clear that "userdata" is a
kernel pointer and "uuserdata" is a pointer to userspace. It would be
nice to avoid the word "user" for kernel pointer in this case.
Thanks
Powered by blists - more mailing lists