Re: [PATCH] io_uring: style: redundant NULL check.

2020-12-29 Thread Randy Dunlap
On 12/29/20 10:22 PM, YANG LI wrote:
> If the pointer in kfree is empty, the function does nothing,
> so remove the redundant NULL check.
> 
> Signed-off-by: YANG LI 
> Reported-by: Abaci 
> ---

Looks like you should do something with these 2 comments:

/* it's reportedly faster than delegating the null check to kfree() */

>  fs/io_uring.c | 13 +
>  1 file changed, 5 insertions(+), 8 deletions(-)
> 
> diff --git a/fs/io_uring.c b/fs/io_uring.c
> index 7e35283..105e188 100644
> --- a/fs/io_uring.c
> +++ b/fs/io_uring.c
> @@ -1934,8 +1934,8 @@ static void io_dismantle_req(struct io_kiocb *req)
>  {
>   io_clean_op(req);
>  
> - if (req->async_data)
> - kfree(req->async_data);
> + kfree(req->async_data);
> +
>   if (req->file)
>   io_put_file(req, req->file, (req->flags & REQ_F_FIXED_FILE));
>   if (req->fixed_file_refs)
> @@ -3537,8 +3537,7 @@ static int io_read(struct io_kiocb *req, bool 
> force_nonblock,
>   ret = 0;
>  out_free:
>   /* it's reportedly faster than delegating the null check to kfree() */
> - if (iovec)
> - kfree(iovec);
> + kfree(iovec);
>   return ret;
>  }
>  
> @@ -3644,8 +3643,7 @@ static int io_write(struct io_kiocb *req, bool 
> force_nonblock,
>   }
>  out_free:
>   /* it's reportedly faster than delegating the null check to kfree() */
> - if (iovec)
> - kfree(iovec);
> + kfree(iovec);
>   return ret;
>  }
>  
> @@ -6133,8 +6131,7 @@ static void __io_clean_op(struct io_kiocb *req)
>   case IORING_OP_WRITE_FIXED:
>   case IORING_OP_WRITE: {
>   struct io_async_rw *io = req->async_data;
> - if (io->free_iovec)
> - kfree(io->free_iovec);
> + kfree(io->free_iovec);
>   break;
>   }
>   case IORING_OP_RECVMSG:
> 


-- 
~Randy



[PATCH] io_uring: style: redundant NULL check.

2020-12-29 Thread YANG LI
If the pointer in kfree is empty, the function does nothing,
so remove the redundant NULL check.

Signed-off-by: YANG LI 
Reported-by: Abaci 
---
 fs/io_uring.c | 13 +
 1 file changed, 5 insertions(+), 8 deletions(-)

diff --git a/fs/io_uring.c b/fs/io_uring.c
index 7e35283..105e188 100644
--- a/fs/io_uring.c
+++ b/fs/io_uring.c
@@ -1934,8 +1934,8 @@ static void io_dismantle_req(struct io_kiocb *req)
 {
io_clean_op(req);
 
-   if (req->async_data)
-   kfree(req->async_data);
+   kfree(req->async_data);
+
if (req->file)
io_put_file(req, req->file, (req->flags & REQ_F_FIXED_FILE));
if (req->fixed_file_refs)
@@ -3537,8 +3537,7 @@ static int io_read(struct io_kiocb *req, bool 
force_nonblock,
ret = 0;
 out_free:
/* it's reportedly faster than delegating the null check to kfree() */
-   if (iovec)
-   kfree(iovec);
+   kfree(iovec);
return ret;
 }
 
@@ -3644,8 +3643,7 @@ static int io_write(struct io_kiocb *req, bool 
force_nonblock,
}
 out_free:
/* it's reportedly faster than delegating the null check to kfree() */
-   if (iovec)
-   kfree(iovec);
+   kfree(iovec);
return ret;
 }
 
@@ -6133,8 +6131,7 @@ static void __io_clean_op(struct io_kiocb *req)
case IORING_OP_WRITE_FIXED:
case IORING_OP_WRITE: {
struct io_async_rw *io = req->async_data;
-   if (io->free_iovec)
-   kfree(io->free_iovec);
+   kfree(io->free_iovec);
break;
}
case IORING_OP_RECVMSG:
-- 
1.8.3.1