* [PATCH misc-next] drivers/misc: remove redundant rc variable
@ 2021-12-15 6:04 cgel.zte
2021-12-15 8:52 ` Andrew Donnellan
2021-12-26 21:52 ` Michael Ellerman
0 siblings, 2 replies; 7+ messages in thread
From: cgel.zte @ 2021-12-15 6:04 UTC (permalink / raw)
To: fbarrat
Cc: ajd, arnd, gregkh, linuxppc-dev, linux-kernel, Minghao Chi, Zeal Robot
From: Minghao Chi <chi.minghao@zte.com.cn>
Return value from ocxl_context_attach() directly instead
of taking this in another redundant variable.
Reported-by: Zeal Robot <zealci@zte.com.cn>
Signed-off-by: Minghao Chi <chi.minghao@zte.com.cn>
---
drivers/misc/ocxl/file.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/drivers/misc/ocxl/file.c b/drivers/misc/ocxl/file.c
index e70525eedaae..d881f5e40ad9 100644
--- a/drivers/misc/ocxl/file.c
+++ b/drivers/misc/ocxl/file.c
@@ -74,7 +74,6 @@ static long afu_ioctl_attach(struct ocxl_context *ctx,
{
struct ocxl_ioctl_attach arg;
u64 amr = 0;
- int rc;
pr_debug("%s for context %d\n", __func__, ctx->pasid);
@@ -86,8 +85,7 @@ static long afu_ioctl_attach(struct ocxl_context *ctx,
return -EINVAL;
amr = arg.amr & mfspr(SPRN_UAMOR);
- rc = ocxl_context_attach(ctx, amr, current->mm);
- return rc;
+ return ocxl_context_attach(ctx, amr, current->mm);
}
static long afu_ioctl_get_metadata(struct ocxl_context *ctx,
--
2.25.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH misc-next] drivers/misc: remove redundant rc variable
2021-12-15 6:04 [PATCH misc-next] drivers/misc: remove redundant rc variable cgel.zte
@ 2021-12-15 8:52 ` Andrew Donnellan
2021-12-26 21:52 ` Michael Ellerman
1 sibling, 0 replies; 7+ messages in thread
From: Andrew Donnellan @ 2021-12-15 8:52 UTC (permalink / raw)
To: cgel.zte, fbarrat
Cc: arnd, gregkh, linuxppc-dev, linux-kernel, Minghao Chi, Zeal Robot
On 15/12/21 5:04 pm, cgel.zte@gmail.com wrote:
> From: Minghao Chi <chi.minghao@zte.com.cn>
>
> Return value from ocxl_context_attach() directly instead
> of taking this in another redundant variable.
>
> Reported-by: Zeal Robot <zealci@zte.com.cn>
> Signed-off-by: Minghao Chi <chi.minghao@zte.com.cn>
Acked-by: Andrew Donnellan <ajd@linux.ibm.com>
--
Andrew Donnellan OzLabs, ADL Canberra
ajd@linux.ibm.com IBM Australia Limited
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH misc-next] drivers/misc: remove redundant rc variable
2021-12-15 6:04 [PATCH misc-next] drivers/misc: remove redundant rc variable cgel.zte
2021-12-15 8:52 ` Andrew Donnellan
@ 2021-12-26 21:52 ` Michael Ellerman
1 sibling, 0 replies; 7+ messages in thread
From: Michael Ellerman @ 2021-12-26 21:52 UTC (permalink / raw)
To: cgel.zte, fbarrat
Cc: Zeal Robot, gregkh, linux-kernel, ajd, Minghao Chi, arnd, linuxppc-dev
On Wed, 15 Dec 2021 06:04:38 +0000, cgel.zte@gmail.com wrote:
> From: Minghao Chi <chi.minghao@zte.com.cn>
>
> Return value from ocxl_context_attach() directly instead
> of taking this in another redundant variable.
>
>
Applied to powerpc/next.
[1/1] drivers/misc: remove redundant rc variable
https://git.kernel.org/powerpc/c/30e120e6a9d247cec7effd55fd6783d5c619ed4c
cheers
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH misc-next] drivers/misc: remove redundant rc variable
2022-01-05 9:22 ` cgel.zte
@ 2022-01-05 10:08 ` Greg KH
0 siblings, 0 replies; 7+ messages in thread
From: Greg KH @ 2022-01-05 10:08 UTC (permalink / raw)
To: cgel.zte
Cc: arnd, chi.minghao, fkassabri, linux-kernel, obitton, ogabbay,
osharabi, ynudelman, zealci
On Wed, Jan 05, 2022 at 09:22:29AM +0000, cgel.zte@gmail.com wrote:
> I found that there are indeed some optimizations
> after removing the redundancy.
>
> For example:
>
> int foo(int a, int b)
> {
> int ret;
> ret = a>b ? a: b;
> return ret;
> }
> int main()
> {
> int val;
> val = foo(7,2);
> return 0;
> }
>
> and
>
> int foo(int a, int b)
> {
> return a>b ? a: b;
> }
> int main()
> {
> int val;
> val = foo(7,2);
> return 0;
> }
>
> The corresponding disassembly code is as follows:
>
> 1129: f3 0f 1e fa endbr64
> 112d: 55 push %rbp
> 112e: 48 89 e5 mov %rsp,%rbp
> 1131: 89 7d fc mov %edi,-0x4(%rbp)
> 1134: 89 75 f8 mov %esi,-0x8(%rbp)
> 1137: 8b 45 fc mov -0x4(%rbp),%eax
> 113a: 39 45 f8 cmp %eax,-0x8(%rbp)
> 113d: 0f 4d 45 f8 cmovge -0x8(%rbp),%eax
> 1141: 5d pop %rbp
> 1142: c3 retq
>
> and
>
> 1129: f3 0f 1e fa endbr64
> 112d: 55 push %rbp
> 112e: 48 89 e5 mov %rsp,%rbp
> 1131: 89 7d ec mov %edi,-0x14(%rbp)
> 1134: 89 75 e8 mov %esi,-0x18(%rbp)
> 1137: 8b 45 ec mov -0x14(%rbp),%eax
> 113a: 39 45 e8 cmp %eax,-0x18(%rbp)
> 113d: 0f 4d 45 e8 cmovge -0x18(%rbp),%eax
> 1141: 89 45 fc mov %eax,-0x4(%rbp)
> 1144: 8b 45 fc mov -0x4(%rbp),%eax
> 1147: 5d pop %rbp
> 1148: c3 retq
>
> After removing the redundancy, the compiler does
> have some optimizations
Please look at the actual output of the kernel files, the build options
that the kernel enforces should not cause a difference here.
thanks,
greg k-h
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH misc-next] drivers/misc: remove redundant rc variable
2022-01-04 11:45 ` Greg KH
@ 2022-01-05 9:22 ` cgel.zte
2022-01-05 10:08 ` Greg KH
0 siblings, 1 reply; 7+ messages in thread
From: cgel.zte @ 2022-01-05 9:22 UTC (permalink / raw)
To: gregkh
Cc: arnd, cgel.zte, chi.minghao, fkassabri, linux-kernel, obitton,
ogabbay, osharabi, ynudelman, zealci
I found that there are indeed some optimizations
after removing the redundancy.
For example:
int foo(int a, int b)
{
int ret;
ret = a>b ? a: b;
return ret;
}
int main()
{
int val;
val = foo(7,2);
return 0;
}
and
int foo(int a, int b)
{
return a>b ? a: b;
}
int main()
{
int val;
val = foo(7,2);
return 0;
}
The corresponding disassembly code is as follows:
1129: f3 0f 1e fa endbr64
112d: 55 push %rbp
112e: 48 89 e5 mov %rsp,%rbp
1131: 89 7d fc mov %edi,-0x4(%rbp)
1134: 89 75 f8 mov %esi,-0x8(%rbp)
1137: 8b 45 fc mov -0x4(%rbp),%eax
113a: 39 45 f8 cmp %eax,-0x8(%rbp)
113d: 0f 4d 45 f8 cmovge -0x8(%rbp),%eax
1141: 5d pop %rbp
1142: c3 retq
and
1129: f3 0f 1e fa endbr64
112d: 55 push %rbp
112e: 48 89 e5 mov %rsp,%rbp
1131: 89 7d ec mov %edi,-0x14(%rbp)
1134: 89 75 e8 mov %esi,-0x18(%rbp)
1137: 8b 45 ec mov -0x14(%rbp),%eax
113a: 39 45 e8 cmp %eax,-0x18(%rbp)
113d: 0f 4d 45 e8 cmovge -0x18(%rbp),%eax
1141: 89 45 fc mov %eax,-0x4(%rbp)
1144: 8b 45 fc mov -0x4(%rbp),%eax
1147: 5d pop %rbp
1148: c3 retq
After removing the redundancy, the compiler does
have some optimizations
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH misc-next] drivers/misc: remove redundant rc variable
2022-01-04 11:34 cgel.zte
@ 2022-01-04 11:45 ` Greg KH
2022-01-05 9:22 ` cgel.zte
0 siblings, 1 reply; 7+ messages in thread
From: Greg KH @ 2022-01-04 11:45 UTC (permalink / raw)
To: cgel.zte
Cc: ogabbay, arnd, ynudelman, obitton, osharabi, chi.minghao,
fkassabri, linux-kernel, Zeal Robot
On Tue, Jan 04, 2022 at 11:34:11AM +0000, cgel.zte@gmail.com wrote:
> From: Minghao Chi <chi.minghao@zte.com.cn>
>
> Return value from ocxl_context_attach() directly instead
> of taking this in another redundant variable.
Why? Does this change the compiler output?
>
> Reported-by: Zeal Robot <zealci@zte.com.cn>
> Signed-off-by: Minghao Chi <chi.minghao@zte.com.cn>
> Signed-off-by: CGEL ZTE <cgel.zte@gmail.com>
> ---
> drivers/misc/ocxl/file.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/drivers/misc/ocxl/file.c b/drivers/misc/ocxl/file.c
> index e70525eedaae..d881f5e40ad9 100644
> --- a/drivers/misc/ocxl/file.c
> +++ b/drivers/misc/ocxl/file.c
> @@ -74,7 +74,6 @@ static long afu_ioctl_attach(struct ocxl_context *ctx,
> {
> struct ocxl_ioctl_attach arg;
> u64 amr = 0;
> - int rc;
>
> pr_debug("%s for context %d\n", __func__, ctx->pasid);
>
> @@ -86,8 +85,7 @@ static long afu_ioctl_attach(struct ocxl_context *ctx,
> return -EINVAL;
>
> amr = arg.amr & mfspr(SPRN_UAMOR);
> - rc = ocxl_context_attach(ctx, amr, current->mm);
> - return rc;
> + return ocxl_context_attach(ctx, amr, current->mm);
> }
>
> static long afu_ioctl_get_metadata(struct ocxl_context *ctx,
> --
> 2.25.1
>
How did you test this change?
thanks,
greg k-h
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH misc-next] drivers/misc: remove redundant rc variable
@ 2022-01-04 11:34 cgel.zte
2022-01-04 11:45 ` Greg KH
0 siblings, 1 reply; 7+ messages in thread
From: cgel.zte @ 2022-01-04 11:34 UTC (permalink / raw)
To: ogabbay
Cc: arnd, gregkh, ynudelman, obitton, osharabi, chi.minghao,
fkassabri, linux-kernel, Zeal Robot, CGEL ZTE
From: Minghao Chi <chi.minghao@zte.com.cn>
Return value from ocxl_context_attach() directly instead
of taking this in another redundant variable.
Reported-by: Zeal Robot <zealci@zte.com.cn>
Signed-off-by: Minghao Chi <chi.minghao@zte.com.cn>
Signed-off-by: CGEL ZTE <cgel.zte@gmail.com>
---
drivers/misc/ocxl/file.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/drivers/misc/ocxl/file.c b/drivers/misc/ocxl/file.c
index e70525eedaae..d881f5e40ad9 100644
--- a/drivers/misc/ocxl/file.c
+++ b/drivers/misc/ocxl/file.c
@@ -74,7 +74,6 @@ static long afu_ioctl_attach(struct ocxl_context *ctx,
{
struct ocxl_ioctl_attach arg;
u64 amr = 0;
- int rc;
pr_debug("%s for context %d\n", __func__, ctx->pasid);
@@ -86,8 +85,7 @@ static long afu_ioctl_attach(struct ocxl_context *ctx,
return -EINVAL;
amr = arg.amr & mfspr(SPRN_UAMOR);
- rc = ocxl_context_attach(ctx, amr, current->mm);
- return rc;
+ return ocxl_context_attach(ctx, amr, current->mm);
}
static long afu_ioctl_get_metadata(struct ocxl_context *ctx,
--
2.25.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
end of thread, other threads:[~2022-01-05 10:09 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-15 6:04 [PATCH misc-next] drivers/misc: remove redundant rc variable cgel.zte
2021-12-15 8:52 ` Andrew Donnellan
2021-12-26 21:52 ` Michael Ellerman
2022-01-04 11:34 cgel.zte
2022-01-04 11:45 ` Greg KH
2022-01-05 9:22 ` cgel.zte
2022-01-05 10:08 ` Greg KH
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).