public inbox for linux-remoteproc@vger.kernel.org
 help / color / mirror / Atom feed
From: Bjorn Andersson <bjorn.andersson@linaro.org>
To: Jitendra Sharma <shajit@codeaurora.org>
Cc: linux-remoteproc@vger.kernel.org, linux-arm-msm@vger.kernel.org
Subject: Re: [PATCH] remoteproc: Remove null character write of shared mem
Date: Mon, 12 Feb 2018 10:39:25 -0800	[thread overview]
Message-ID: <20180212183925.GX7250@minitux> (raw)
In-Reply-To: <d097d5db-b68c-6a29-2032-bb62e8d08d09@codeaurora.org>

On Thu 08 Feb 01:12 PST 2018, Jitendra Sharma wrote:

> Hi Bjorn,
> 
> 
> On 2/7/2018 8:57 PM, Bjorn Andersson wrote:
> > On Wed 07 Feb 05:22 PST 2018, Jitendra Sharma wrote:
> > 
> > > remoteproc is writing '\0' in the shared mem region. This
> > > region is shared among multiple clients that are also trying
> > > to read. Hence they miss first character.
> > > 
> > > Remove this null character write, as this mem area is
> > > supposed to be Read only.
> > > 
> > > Further during every subsystem reboot, this region is
> > > initialized with default, hence no need to write this
> > > region.
> > Thanks for your patch Jitendra!
> > 
> > The write was removed from the downstream kernel in msm-4.9, late last
> > year. Can you please confirm that you describe here is valid for
> > platforms supported prior to this change as well?
> > 
> > E.g. is what you're describing true for wcnss on 8064, adsp on 8974 and
> > mpss on 8916?
> To provide a history.
> We got a internal request, where during subsystem crash/restart, in our
> recovery path, we try to get the cause of crash by reading shared memory
> region.
> But, because in recovery path we write null to first character of shared
> memory string. So, any other client which in the meantime try to dump the
> crash region will miss first character of crash region.
> For example: actual "err_crash_reason " will be read by other interested
> clients as "rr_crash_reason"
> 
> Now as this piece of code is present since long 3.10,3.18,4.4 time, so we
> were not sure of this snippet's reason of existence. Here, initially we
> tried to find out reason for this null write, where we guessed this snippet
> is lying there to ensure, that across subsequent crashes, we always get a
> new updated reason/string(as we are writing null to first character of
> shared mem) and not some older stale string.
> 
> But this understanding was rejected by subsystem owners saying that crash
> reason, shared memory item is re-initialized at non-HLOS bootup so it will
> get clear automatically.Hence, there is no need to write null character.
> 
> So, because of above reason, we could say that this snippet is causing a bug
> and should be fixed and this change should be valid for any platform.

Thanks for investigating this and letting me know.

As you say the only time this had the potential to be a problem would be
if we have a fatal error with a message followed by a crash that doesn't
fill out the message - in this case we could have read the old message.

I have merged your "v1" patch - which as it's the second version of the
patch, should be titled v2.

Regards,
Bjorn

  reply	other threads:[~2018-02-12 18:39 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-07 13:22 [PATCH] remoteproc: Remove null character write of shared mem Jitendra Sharma
2018-02-07 15:27 ` Bjorn Andersson
2018-02-08  9:12   ` Jitendra Sharma
2018-02-12 18:39     ` Bjorn Andersson [this message]
2018-02-13  7:12       ` Jitendra Sharma
2018-04-05  8:59         ` Jitendra Sharma

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=20180212183925.GX7250@minitux \
    --to=bjorn.andersson@linaro.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-remoteproc@vger.kernel.org \
    --cc=shajit@codeaurora.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox