mbox series

[GIT,PULL] OP-TEE driver fix for v5.11

Message ID 20210122074234.GA1074747@jade (mailing list archive)
State Accepted
Commit 156d02914b7d2d53bf047235991b12bd6cbd7d40
Headers show
Series [GIT,PULL] OP-TEE driver fix for v5.11 | expand

Pull-request

git://git.linaro.org/people/jens.wiklander/linux-tee.git tags/optee-rcu-sched-trace-for-v5.11

Message

Jens Wiklander Jan. 22, 2021, 7:42 a.m. UTC
Hello arm-soc maintainers,

Please pull this small patch taking care of a rcu_sched trace in some
corner cases when OP-TEE is invoked.

Thanks,
Jens

The following changes since commit e71ba9452f0b5b2e8dc8aa5445198cd9214a6a62:

  Linux 5.11-rc2 (2021-01-03 15:55:30 -0800)

are available in the Git repository at:

  git://git.linaro.org/people/jens.wiklander/linux-tee.git tags/optee-rcu-sched-trace-for-v5.11

for you to fetch changes up to dcb3b06d9c34f33a249f65c08805461fb0c4325b:

  tee: optee: replace might_sleep with cond_resched (2021-01-21 10:36:48 +0100)

----------------------------------------------------------------
Fix rcu_sched trace from OP-TEE invoke

Replaces might_sleep() with a conditional call to cond_resched()
in order to avoid the rcu_sched trace in some corner cases.

----------------------------------------------------------------
Rouven Czerwinski (1):
      tee: optee: replace might_sleep with cond_resched

 drivers/tee/optee/call.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

Comments

Arnd Bergmann Jan. 22, 2021, 2:25 p.m. UTC | #1
On Fri, Jan 22, 2021 at 8:42 AM Jens Wiklander
<jens.wiklander@linaro.org> wrote:
> for you to fetch changes up to dcb3b06d9c34f33a249f65c08805461fb0c4325b:
>
>   tee: optee: replace might_sleep with cond_resched (2021-01-21 10:36:48 +0100)
>
> ----------------------------------------------------------------
> Fix rcu_sched trace from OP-TEE invoke
>
> Replaces might_sleep() with a conditional call to cond_resched()
> in order to avoid the rcu_sched trace in some corner cases.

Hi Rouven,

The bugfix looks correct in the sense that it fixes the issue, but
it took me a while to understand what you actually try to do here
because of the unusual way it's written as

              if (need_resched())
                          cond_resched();

which /looks/ like you are doing something fishy here. In the
end I concluded that this was probably just a misunderstanding
of what cond_resched() does.

Can you replace it with a normal

       cond_resched()

without the second need_resched() check and make sure this
still works? cond_resched() by definition performs the check
to ensure that rescheduling is needed, so unless you want to
explicitly hide the might_sleep() in it from being seen, it's
better to call that.

        Arnd
patchwork-bot+linux-soc@kernel.org Jan. 22, 2021, 11 p.m. UTC | #2
Hello:

This pull request was applied to soc/soc.git (refs/heads/arm/fixes):

On Fri, 22 Jan 2021 08:42:34 +0100 you wrote:
> Hello arm-soc maintainers,
> 
> Please pull this small patch taking care of a rcu_sched trace in some
> corner cases when OP-TEE is invoked.
> 
> Thanks,
> Jens
> 
> [...]

Here is the summary with links:
  - [GIT,PULL] OP-TEE driver fix for v5.11
    https://git.kernel.org/soc/soc/c/156d02914b7d

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
patchwork-bot+linux-soc@kernel.org Jan. 22, 2021, 11 p.m. UTC | #3
Hello:

This pull request was applied to soc/soc.git (refs/heads/for-next):

On Fri, 22 Jan 2021 08:42:34 +0100 you wrote:
> Hello arm-soc maintainers,
> 
> Please pull this small patch taking care of a rcu_sched trace in some
> corner cases when OP-TEE is invoked.
> 
> Thanks,
> Jens
> 
> [...]

Here is the summary with links:
  - [GIT,PULL] OP-TEE driver fix for v5.11
    https://git.kernel.org/soc/soc/c/156d02914b7d

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
Jens Wiklander Jan. 25, 2021, 7:21 a.m. UTC | #4
Hi Arnd,

Was this merged by mistake? You had some concerns about the need_resched() test.

Thanks,
Jens

On Sat, Jan 23, 2021 at 12:00 AM <patchwork-bot+linux-soc@kernel.org> wrote:
>
> Hello:
>
> This pull request was applied to soc/soc.git (refs/heads/arm/fixes):
>
> On Fri, 22 Jan 2021 08:42:34 +0100 you wrote:
> > Hello arm-soc maintainers,
> >
> > Please pull this small patch taking care of a rcu_sched trace in some
> > corner cases when OP-TEE is invoked.
> >
> > Thanks,
> > Jens
> >
> > [...]
>
> Here is the summary with links:
>   - [GIT,PULL] OP-TEE driver fix for v5.11
>     https://git.kernel.org/soc/soc/c/156d02914b7d
>
> You are awesome, thank you!
> --
> Deet-doot-dot, I am a bot.
> https://korg.docs.kernel.org/patchwork/pwbot.html
>
>
Arnd Bergmann Jan. 25, 2021, 9:30 a.m. UTC | #5
On Mon, Jan 25, 2021 at 8:21 AM Jens Wiklander
<jens.wiklander@linaro.org> wrote:
>
> Was this merged by mistake? You had some concerns about the need_resched() test.
>

Indeed, thanks for noticing!

Could you send a fixup to remove the need_resched() check after verifying that
it works? Alternatively I can remove the patch I merged by accident and send
my next pull request without it, but I'd prefer to avoid rebasing the fixes I
merged later.

       Arnd
Arnd Bergmann Jan. 26, 2021, 8:22 p.m. UTC | #6
On Mon, Jan 25, 2021 at 10:30 AM Arnd Bergmann <arnd@kernel.org> wrote:
>
> On Mon, Jan 25, 2021 at 8:21 AM Jens Wiklander
> <jens.wiklander@linaro.org> wrote:
> >
> > Was this merged by mistake? You had some concerns about the need_resched() test.
> >
>
> Indeed, thanks for noticing!
>
> Could you send a fixup to remove the need_resched() check after verifying that
> it works? Alternatively I can remove the patch I merged by accident and send
> my next pull request without it, but I'd prefer to avoid rebasing the fixes I
> merged later.

I need to send out the fixes branch for upstream. As it was my mistake to
merge the fix while complaining about it, and the it's also harmless, I'll
leave the version I pulled now.

It would be nice to get a follow-up in your pull request for v5.12 though.

        Arnd
Jens Wiklander Jan. 27, 2021, 7:50 a.m. UTC | #7
On Tue, Jan 26, 2021 at 9:22 PM Arnd Bergmann <arnd@kernel.org> wrote:
>
> On Mon, Jan 25, 2021 at 10:30 AM Arnd Bergmann <arnd@kernel.org> wrote:
> >
> > On Mon, Jan 25, 2021 at 8:21 AM Jens Wiklander
> > <jens.wiklander@linaro.org> wrote:
> > >
> > > Was this merged by mistake? You had some concerns about the need_resched() test.
> > >
> >
> > Indeed, thanks for noticing!
> >
> > Could you send a fixup to remove the need_resched() check after verifying that
> > it works? Alternatively I can remove the patch I merged by accident and send
> > my next pull request without it, but I'd prefer to avoid rebasing the fixes I
> > merged later.
>
> I need to send out the fixes branch for upstream. As it was my mistake to
> merge the fix while complaining about it, and the it's also harmless, I'll
> leave the version I pulled now.

Thanks, it seems it takes a little time to get the updating patch verified.

>
> It would be nice to get a follow-up in your pull request for v5.12 though.

I'll see to that.

Thanks,
Jens