[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20200321175729.GA52762@builder>
Date: Sat, 21 Mar 2020 10:57:29 -0700
From: Bjorn Andersson <bjorn.andersson@...aro.org>
To: Arnaud POULIQUEN <arnaud.pouliquen@...com>
Cc: Nikita Shubin <nshubin@...con.com>,
"stable@...r.kernel.org" <stable@...r.kernel.org>,
Ohad Ben-Cohen <ohad@...ery.com>,
"linux-remoteproc@...r.kernel.org" <linux-remoteproc@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Mathieu Poirier <mathieu.poirier@...aro.org>
Subject: Re: [PATCH v5] remoteproc: Fix NULL pointer dereference in
rproc_virtio_notify
On Tue 17 Mar 07:24 PDT 2020, Arnaud POULIQUEN wrote:
> On 3/11/20 9:01 PM, Bjorn Andersson wrote:
> > On Tue 10 Mar 06:19 PDT 2020, Arnaud POULIQUEN wrote:
> >>> On Mon, Mar 09, 2020 at 03:22:24PM +0100, Arnaud POULIQUEN wrote:
> >>>> On 3/6/20 8:24 AM, Nikita Shubin wrote:
[..]
> >>>>> diff --git a/drivers/remoteproc/remoteproc_virtio.c
> >>>>> b/drivers/remoteproc/remoteproc_virtio.c
> >>>>> index 8c07cb2ca8ba..31a62a0b470e 100644
> >>>>> --- a/drivers/remoteproc/remoteproc_virtio.c
> >>>>> +++ b/drivers/remoteproc/remoteproc_virtio.c
> >>>>> @@ -334,6 +334,13 @@ int rproc_add_virtio_dev(struct rproc_vdev
> >>> *rvdev, int id)
> >>>>> struct rproc_mem_entry *mem;
> >>>>> int ret;
> >>>>>
> >>>>> + if (rproc->ops->kick == NULL) {
> >>>>> + ret = -EINVAL;
> >>>>> + dev_err(dev, ".kick method not defined for %s",
> >>>>> + rproc->name);
> >>>>> + goto out;
> >>>>> + }
> >>>>> +
> >>>> Should the kick ops be mandatory for all the platforms? How about making
> >>> it optional instead?
> >>>
> >>> Hi, Arnaud.
> >>>
> >>> It is not mandatory, currently it must be provided if specified vdev entry is in
> >>> resourse table. Otherwise it looks like there is no point in creating vdev.
> >>
> >> Yes, my question was about having it optional for vdev also. A platform could implement the vdev
> >> without kick mechanism but by polling depending due to hardware capability...
> >> This could be an alternative avoiding to implement a dummy function in platform driver.
> >>
> >
> > Is this a real thing or a theoretical suggestion?
> Only a theoretical suggestion, trigged by the IMX platform patchset which implement a "temporary" dummy kick.
> and based on OpenAMP lib implementation which does not request a doorbell.
> Anyway no issue to keep it mandatory here.
>
Thanks for confirming. I've applied the patch, with Mathieu's ack, and
we can loosen up this requirement when we need it in the future.
Regards,
Bjorn
Powered by blists - more mailing lists