Received: by 2002:a25:e7d8:0:0:0:0:0 with SMTP id e207csp4041573ybh; Tue, 17 Mar 2020 11:06:58 -0700 (PDT) X-Google-Smtp-Source: ADFU+vtD6nH3QeoI4lQyjpz+gAdcRUCcR99g09tR/OX/KxJXG4dOPMpFeCz9SkZq5ot8iQG7KUXG X-Received: by 2002:a9d:5e8b:: with SMTP id f11mr468574otl.110.1584468418108; Tue, 17 Mar 2020 11:06:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1584468418; cv=none; d=google.com; s=arc-20160816; b=BbGU1a7z6G5anlnXv8EGEFyObk8yQJgJlBjILvCi41x1kQnJwZULN0favX2jtJ2Qnz sg7Qg7mVTXgE8EnjwNL7jJeWualAO5/++zykDF0TeFiL93WD/s8985mpKO3MMpOz7aso kplDXgqbxE6RmRpb/WUTUmGewnXeDrvLWoyukMHs6Ur2ENlu53+iUIhqMsC1KQV+g4yc jjodq4NSPT7ltwOeoIJwVuI+8kWyxWJWeAvo4SOsQeob7au2sMriCeEpMb774BwMWe5Z Mm2pBivAXYJOZ7xnPl+QA5V3eHB3zZwx6+ZTxtUiy+PuMYdMLrZc18+Z0lAQhVbxnT4n y1gA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature; bh=ZpBI1BoqE+w5cxYT1XTfEOOzyE5/sXCLbJVrVnxa0bU=; b=uItLmOeDzaUZcJ4bZCyBtR6eolmAuw/WKyg9wuK60Yu+QfcjGobzOUsm9oTgmQI1AT I0I5W5o9WBrE4tQI9IZu86pCjCw8CDDJbmxn2JPeH7jJVcMtahf6XxpIKRgHY0OEOe6C gVy1srAERht24SzePL4WQ0cGhMOpj8cnHQWjdux/8edl8m+utYKyfzuT7/ZFtaG46lpU bFpuBymRJyDWqqtZNTj1yVIBQToIo4qPTs6Bz9KIZgy8trg7ZBePTZkuyygjrCp3YgbD Kl7aRjWNOj+7JJK3cyNeRPj3Qh0N8Dq/6YKIMwBEJh0EzlZWi2a07Q3OOH8gd6TS/B8G qlYQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="zAOgX/YW"; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e6si2049656oiy.229.2020.03.17.11.06.45; Tue, 17 Mar 2020 11:06:58 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="zAOgX/YW"; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726757AbgCQSFe (ORCPT + 99 others); Tue, 17 Mar 2020 14:05:34 -0400 Received: from mail-pg1-f194.google.com ([209.85.215.194]:34789 "EHLO mail-pg1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726726AbgCQSFd (ORCPT ); Tue, 17 Mar 2020 14:05:33 -0400 Received: by mail-pg1-f194.google.com with SMTP id t3so12158045pgn.1 for ; Tue, 17 Mar 2020 11:05:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=ZpBI1BoqE+w5cxYT1XTfEOOzyE5/sXCLbJVrVnxa0bU=; b=zAOgX/YW1JHp0BQ3g1QZOFrbUaFOok3bRVGL2Az4K2WsvGKX2Mnj9QAeyD/z9z8B4d 2Sfd0+6dpprpH3SayPdbEBXyo2AXQ+X3Y39ejRGCTC9QtYFNzJaYWypBzaKpv5s+tPRa FCE/pJ7aqyhonBT+3b/WWWVuaYt9nN5/Oz4K4gAWl75u6VN2GfbzE+SLqOqMPonAw91Z ckCTOicVgUBRcWje7Ck4n9OGHOixomSAE0d+gsFTveVYDdwIwnmQWAcapwn9pbKGxawL xyutL+Qo+FV3++LGd1GwKNeJBwudPCISmNcTz9oVO0Eujt79A0YAODgCi8cJdwtOIspk V8gA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=ZpBI1BoqE+w5cxYT1XTfEOOzyE5/sXCLbJVrVnxa0bU=; b=YcN90RMkf3LphzjnHCi+xddx8iwtS4B086wUQQaqVR/0NamlucQmA7ClDyXZKSHMgf Kq6jD6gUGZRU37vx7+Wsmd1Xn8B5gJyU3PWsPUZ8QKWFZxY2ljalBjXixXwhRMfPZJs1 MFyiuJVoxELaWxp+DBeDEHMKySYz/rkcKDo36lzQvhk097gyB9DIKuHrd6Vu+uLSxaGC oS6DhHgRyaplSJHrfBpozOACMG+x/9162xWgWJkI0BQeINolytmsuV3Y49h8fmQ1b0PW Get8e8ggue8ukUSy89iUxjTJo+x40bM6t4H4dSrmPXe/ThS3iSBpu+gYdcJTX725d3Ue 5DFw== X-Gm-Message-State: ANhLgQ0SS2DGroQmBpG+2jMyQneItz7PyrRn2RHT5pF98YaNfQNNo5RJ iZrU3hkmltsrjpIq81NejTii9w== X-Received: by 2002:a63:3142:: with SMTP id x63mr458054pgx.138.1584468332497; Tue, 17 Mar 2020 11:05:32 -0700 (PDT) Received: from xps15 (S0106002369de4dac.cg.shawcable.net. [68.147.8.254]) by smtp.gmail.com with ESMTPSA id 136sm3335134pgh.26.2020.03.17.11.05.31 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 17 Mar 2020 11:05:31 -0700 (PDT) Date: Tue, 17 Mar 2020 12:05:30 -0600 From: Mathieu Poirier To: Suman Anna Cc: Bjorn Andersson , Loic Pallardy , Arnaud Pouliquen , Tero Kristo , linux-remoteproc@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 2/2] remoteproc: Fix and restore the parenting hierarchy for vdev Message-ID: <20200317180530.GA1801@xps15> References: <20200305224108.21351-1-s-anna@ti.com> <20200305224108.21351-3-s-anna@ti.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200305224108.21351-3-s-anna@ti.com> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Suman, On Thu, Mar 05, 2020 at 04:41:08PM -0600, Suman Anna wrote: > The commit 086d08725d34 ("remoteproc: create vdev subdevice with specific > dma memory pool") has introduced a new vdev subdevice for each vdev > declared in the firmware resource table and made it as the parent for the > created virtio rpmsg devices instead of the previous remoteproc device. > This changed the overall parenting hierarchy for the rpmsg devices, which > were children of virtio devices, and does not allow the corresponding > rpmsg drivers to retrieve the parent rproc device through the > rproc_get_by_child() API. > > Fix this by restoring the remoteproc device as the parent. The new vdev > subdevice can continue to inherit the DMA attributes from the remoteproc's > parent device (actual platform device). > > Fixes: 086d08725d34 ("remoteproc: create vdev subdevice with specific dma memory pool") > Signed-off-by: Suman Anna > --- > drivers/remoteproc/remoteproc_core.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/remoteproc/remoteproc_core.c b/drivers/remoteproc/remoteproc_core.c > index 097f33e4f1f3..ba18f32bd0c4 100644 > --- a/drivers/remoteproc/remoteproc_core.c > +++ b/drivers/remoteproc/remoteproc_core.c > @@ -510,7 +510,7 @@ static int rproc_handle_vdev(struct rproc *rproc, struct fw_rsc_vdev *rsc, > > /* Initialise vdev subdevice */ > snprintf(name, sizeof(name), "vdev%dbuffer", rvdev->index); > - rvdev->dev.parent = rproc->dev.parent; > + rvdev->dev.parent = &rproc->dev; I can see how it would not be possible to retrieve the parent rproc device since rvdev->dev.parent was set to be platform device... I wonder how the original change didn't blow up sysmon_probe() and potentially other out-of-tree users of rproc_get_by_child(). It would be nice to have someone from the QCOM team test your patch. > rvdev->dev.dma_pfn_offset = rproc->dev.parent->dma_pfn_offset; > rvdev->dev.release = rproc_rvdev_release; > dev_set_name(&rvdev->dev, "%s#%s", dev_name(rvdev->dev.parent), name); Be mindful there might be fallouts from applying this patch since it does change the location of the vdev under /sys/device/platform/ . Reviewed-by: Mathieu Poirier > -- > 2.23.0 >