All of lore.kernel.org
 help / color / mirror / Atom feed
From: Catalin Marinas <catalin.marinas@arm.com>
To: Sergey Shtylyov <s.shtylyov@omp.ru>
Cc: Will Deacon <will@kernel.org>,
	linux-arm-kernel@lists.infradead.org,
	Oleg Nesterov <oleg@redhat.com>,
	lvc-project@linuxtesting.org
Subject: Re: [PATCH] arm64: ptrace: user_regset_copyin_ignore() always returns 0
Date: Mon, 26 Sep 2022 15:01:55 +0100	[thread overview]
Message-ID: <YzGw03lNvqPuw0O5@arm.com> (raw)
In-Reply-To: <21919615-c075-006b-1730-50043f344f83@omp.ru>

On Thu, Sep 22, 2022 at 08:37:57PM +0300, Sergey Shtylyov wrote:
> On 9/22/22 2:59 PM, Will Deacon wrote:
> [...]
> >> user_regset_copyin_ignore() always return 0, so checking its result seems
> >> pointless -- don't do this...
> >>
> >> Found by Linux Verification Center (linuxtesting.org) with the SVACE static
> >> analysis tool.
> >>
> >> Signed-off-by: Sergey Shtylyov <s.shtylyov@omp.ru>
> >>
> >> ---
> >> This patch is against the 'for-next/core' branch of the ARM64 repo...
> >>
> >>  arch/arm64/kernel/ptrace.c |   16 ++++------------
> >>  1 file changed, 4 insertions(+), 12 deletions(-)
> >>
> >> Index: linux/arch/arm64/kernel/ptrace.c
> >> ===================================================================
> >> --- linux.orig/arch/arm64/kernel/ptrace.c
> >> +++ linux/arch/arm64/kernel/ptrace.c
> >> @@ -514,9 +514,7 @@ static int hw_break_set(struct task_stru
> >>  
> >>  	/* Resource info and pad */
> >>  	offset = offsetof(struct user_hwdebug_state, dbg_regs);
> >> -	ret = user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf, 0, offset);
> >> -	if (ret)
> >> -		return ret;
> >> +	user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf, 0, offset);
> >>  
> >>  	/* (address, ctrl) registers */
> >>  	limit = regset->n * regset->size;
> >> @@ -543,11 +541,8 @@ static int hw_break_set(struct task_stru
> >>  			return ret;
> >>  		offset += PTRACE_HBP_CTRL_SZ;
> >>  
> >> -		ret = user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf,
> >> -						offset,
> >> -						offset + PTRACE_HBP_PAD_SZ);
> >> -		if (ret)
> >> -			return ret;
> >> +		user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf,
> >> +					  offset, offset + PTRACE_HBP_PAD_SZ);
> >>  		offset += PTRACE_HBP_PAD_SZ;
> >>  		idx++;
> >>  	}
> >> @@ -939,10 +934,7 @@ static int sve_set_common(struct task_st
> >>  
> >>  	start = end;
> >>  	end = SVE_PT_SVE_FPSR_OFFSET(vq);
> >> -	ret = user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf,
> >> -					start, end);
> >> -	if (ret)
> >> -		goto out;
> >> +	user_regset_copyin_ignore(&pos, &count, &kbuf, &ubuf, start, end);
> > 
> > I think it would be better to have user_regset_copyin_ignore() return void
> > so that we don't run the risk of missing an error code if it starts
> > returning one in future.
> 
>    That's the plan! But I need to convert the users 1st, right?

Right, though normally we'd like to see the full series that does the
arch clean-up followed by the user_regset_copyin_ignore() return changed
to void. If for some reason the last patch is rejected by the maintainer
because there are plans to actually return some non-zero value, we'd
have to revert the above.

-- 
Catalin

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  reply	other threads:[~2022-09-26 14:03 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-20 20:54 [PATCH] arm64: ptrace: user_regset_copyin_ignore() always returns 0 Sergey Shtylyov
2022-09-21  8:56 ` Sergey Shtylyov
2022-09-22 11:59 ` Will Deacon
2022-09-22 17:37   ` Sergey Shtylyov
2022-09-26 14:01     ` Catalin Marinas [this message]
2022-09-27 18:46       ` Sergey Shtylyov
2022-09-29 17:11         ` Catalin Marinas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YzGw03lNvqPuw0O5@arm.com \
    --to=catalin.marinas@arm.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=lvc-project@linuxtesting.org \
    --cc=oleg@redhat.com \
    --cc=s.shtylyov@omp.ru \
    --cc=will@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.