Re: [PATCH v2 3/7] cxl/memdev: cxl_memdev_ioctl() cleanup
From: Dave Jiang
Date: Wed Feb 19 2025 - 13:34:09 EST
On 2/17/25 7:48 AM, Li Ming wrote:
> In cxl_memdev_ioctl(), the down_read(&cxl_memdev_rwsem) and
> up_read(&cxl_memdev_rwsem) can be replaced by a
> guard(rwsem_read)(&cxl_memdev_rwsem), it helps to remove the open-coded
> up_read(&cxl_memdev_rwsem). Besides, the local var 'rc' can be also
> removed to make the code more cleaner.
>
> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> Signed-off-by: Li Ming <ming.li@xxxxxxxxxxxx>
Reviewed-by: Dave Jiang <dave.jiang@xxxxxxxxx>
> ---
> drivers/cxl/core/memdev.c | 8 +++-----
> 1 file changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/cxl/core/memdev.c b/drivers/cxl/core/memdev.c
> index 98c05426aa4a..6f90dcd626f9 100644
> --- a/drivers/cxl/core/memdev.c
> +++ b/drivers/cxl/core/memdev.c
> @@ -668,15 +668,13 @@ static long cxl_memdev_ioctl(struct file *file, unsigned int cmd,
> {
> struct cxl_memdev *cxlmd = file->private_data;
> struct cxl_dev_state *cxlds;
> - int rc = -ENXIO;
>
> - down_read(&cxl_memdev_rwsem);
> + guard(rwsem_read)(&cxl_memdev_rwsem);
> cxlds = cxlmd->cxlds;
> if (cxlds && cxlds->type == CXL_DEVTYPE_CLASSMEM)
> - rc = __cxl_memdev_ioctl(cxlmd, cmd, arg);
> - up_read(&cxl_memdev_rwsem);
> + return __cxl_memdev_ioctl(cxlmd, cmd, arg);
>
> - return rc;
> + return -ENXIO;
> }
>
> static int cxl_memdev_open(struct inode *inode, struct file *file)