2021-01-18 13:56:43

by Tianjia Zhang

[permalink] [raw]
Subject: [PATCH] mm: Optimizing error condition detection in do_mprotect_pkey()

Obviously, the error variable detection of the if statement is
for the mprotect callback function, so it is also put into the
scope of calling callbck.

Reported-by: Jia Zhang <[email protected]>
Signed-off-by: Tianjia Zhang <[email protected]>
---
mm/mprotect.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/mm/mprotect.c b/mm/mprotect.c
index ab709023e9aa..94188df1ee55 100644
--- a/mm/mprotect.c
+++ b/mm/mprotect.c
@@ -617,10 +617,11 @@ static int do_mprotect_pkey(unsigned long start, size_t len,
if (tmp > end)
tmp = end;

- if (vma->vm_ops && vma->vm_ops->mprotect)
+ if (vma->vm_ops && vma->vm_ops->mprotect) {
error = vma->vm_ops->mprotect(vma, nstart, tmp, newflags);
- if (error)
- goto out;
+ if (error)
+ goto out;
+ }

error = mprotect_fixup(vma, &prev, nstart, tmp, newflags);
if (error)
--
2.19.1.3.ge56e4f7


2021-01-20 14:40:14

by Jarkko Sakkinen

[permalink] [raw]
Subject: Re: [PATCH] mm: Optimizing error condition detection in do_mprotect_pkey()



On Mon, Jan 18, 2021 at 09:33:10PM +0800, Tianjia Zhang wrote:
> Obviously, the error variable detection of the if statement is
> for the mprotect callback function, so it is also put into the
> scope of calling callbck.
>
> Reported-by: Jia Zhang <[email protected]>
> Signed-off-by: Tianjia Zhang <[email protected]>

No fixes tag, no description what this commit does. Nothing
makes sense to me.

/Jarkko

> ---
> mm/mprotect.c | 7 ++++---
> 1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/mm/mprotect.c b/mm/mprotect.c
> index ab709023e9aa..94188df1ee55 100644
> --- a/mm/mprotect.c
> +++ b/mm/mprotect.c
> @@ -617,10 +617,11 @@ static int do_mprotect_pkey(unsigned long start, size_t len,
> if (tmp > end)
> tmp = end;
>
> - if (vma->vm_ops && vma->vm_ops->mprotect)
> + if (vma->vm_ops && vma->vm_ops->mprotect) {
> error = vma->vm_ops->mprotect(vma, nstart, tmp, newflags);
> - if (error)
> - goto out;
> + if (error)
> + goto out;
> + }
>
> error = mprotect_fixup(vma, &prev, nstart, tmp, newflags);
> if (error)
> --
> 2.19.1.3.ge56e4f7
>
>

2021-01-21 22:48:29

by Andrew Morton

[permalink] [raw]
Subject: Re: [PATCH] mm: Optimizing error condition detection in do_mprotect_pkey()

On Wed, 20 Jan 2021 16:29:20 +0200 Jarkko Sakkinen <[email protected]> wrote:

>
>
> On Mon, Jan 18, 2021 at 09:33:10PM +0800, Tianjia Zhang wrote:
> > Obviously, the error variable detection of the if statement is
> > for the mprotect callback function, so it is also put into the
> > scope of calling callbck.
> >
> > Reported-by: Jia Zhang <[email protected]>
> > Signed-off-by: Tianjia Zhang <[email protected]>
>
> No fixes tag, no description what this commit does. Nothing
> makes sense to me.

It's a little cleanup. Makes the flow at this site consistent with the
other places where this function handles errors. I added a bit to the
changelog mentioning this.


2021-01-22 17:51:39

by Jarkko Sakkinen

[permalink] [raw]
Subject: Re: [PATCH] mm: Optimizing error condition detection in do_mprotect_pkey()

On Thu, Jan 21, 2021 at 02:46:27PM -0800, Andrew Morton wrote:
> On Wed, 20 Jan 2021 16:29:20 +0200 Jarkko Sakkinen <[email protected]> wrote:
>
> >
> >
> > On Mon, Jan 18, 2021 at 09:33:10PM +0800, Tianjia Zhang wrote:
> > > Obviously, the error variable detection of the if statement is
> > > for the mprotect callback function, so it is also put into the
> > > scope of calling callbck.
> > >
> > > Reported-by: Jia Zhang <[email protected]>
> > > Signed-off-by: Tianjia Zhang <[email protected]>
> >
> > No fixes tag, no description what this commit does. Nothing
> > makes sense to me.
>
> It's a little cleanup. Makes the flow at this site consistent with the
> other places where this function handles errors. I added a bit to the
> changelog mentioning this.

Alright, I see. I'm just used to getting feedback to my own patches
that "imperative form" of expression should be rigidly used. That's the
main reason I gave the feedback.

/Jarkko