linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* linux-next: build failure after merge of the rpmsg tree
@ 2023-01-27  7:02 Stephen Rothwell
  2023-01-30  8:51 ` Joerg Roedel
  0 siblings, 1 reply; 10+ messages in thread
From: Stephen Rothwell @ 2023-01-27  7:02 UTC (permalink / raw)
  To: Bjorn Andersson, Mathieu Poirier, Joerg Roedel
  Cc: Jason Gunthorpe, Jason Gunthorpe, Joerg Roedel,
	Srinivasa Rao Mandadapu, Linux Kernel Mailing List,
	Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 1822 bytes --]

Hi all,

After merging the rpmsg tree, today's linux-next build (arm64 defconfig)
failed like this:

drivers/remoteproc/qcom_q6v5_adsp.c: In function 'adsp_map_carveout':
drivers/remoteproc/qcom_q6v5_adsp.c:369:15: error: too few arguments to function 'iommu_map'
  369 |         ret = iommu_map(rproc->domain, iova, adsp->mem_phys,
      |               ^~~~~~~~~
In file included from drivers/remoteproc/qcom_q6v5_adsp.c:12:
include/linux/iommu.h:473:12: note: declared here
  473 | extern int iommu_map(struct iommu_domain *domain, unsigned long iova,
      |            ^~~~~~~~~

Caused by commit

  f22eedff28af ("remoteproc: qcom: Add support for memory sandbox")

interacting with commit

  1369459b2e21 ("iommu: Add a gfp parameter to iommu_map()")

from the iommu tree.

I have applied the following merge fix patch.

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Fri, 27 Jan 2023 17:58:15 +1100
Subject: [PATCH] remoteproc: fix for "iommu: Add a gfp parameter to iommu_map()"

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 drivers/remoteproc/qcom_q6v5_adsp.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/remoteproc/qcom_q6v5_adsp.c b/drivers/remoteproc/qcom_q6v5_adsp.c
index 2dc850f48f00..08d8dad22ca7 100644
--- a/drivers/remoteproc/qcom_q6v5_adsp.c
+++ b/drivers/remoteproc/qcom_q6v5_adsp.c
@@ -367,7 +367,8 @@ static int adsp_map_carveout(struct rproc *rproc)
 	iova =  adsp->mem_phys | (sid << 32);
 
 	ret = iommu_map(rproc->domain, iova, adsp->mem_phys,
-			adsp->mem_size,	IOMMU_READ | IOMMU_WRITE);
+			adsp->mem_size,	IOMMU_READ | IOMMU_WRITE,
+			GFP_KERNEL);
 	if (ret) {
 		dev_err(adsp->dev, "Unable to map ADSP Physical Memory\n");
 		return ret;
-- 
2.35.1

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: linux-next: build failure after merge of the rpmsg tree
  2023-01-27  7:02 linux-next: build failure after merge of the rpmsg tree Stephen Rothwell
@ 2023-01-30  8:51 ` Joerg Roedel
  0 siblings, 0 replies; 10+ messages in thread
From: Joerg Roedel @ 2023-01-30  8:51 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: Bjorn Andersson, Mathieu Poirier, Joerg Roedel, Jason Gunthorpe,
	Jason Gunthorpe, Srinivasa Rao Mandadapu,
	Linux Kernel Mailing List, Linux Next Mailing List

Thanks for the report, Stephen.

Bjorn, Mathieu,

On Fri, Jan 27, 2023 at 06:02:26PM +1100, Stephen Rothwell wrote:
> After merging the rpmsg tree, today's linux-next build (arm64 defconfig)
> failed like this:
> 
> drivers/remoteproc/qcom_q6v5_adsp.c: In function 'adsp_map_carveout':
> drivers/remoteproc/qcom_q6v5_adsp.c:369:15: error: too few arguments to function 'iommu_map'
>   369 |         ret = iommu_map(rproc->domain, iova, adsp->mem_phys,
>       |               ^~~~~~~~~
> In file included from drivers/remoteproc/qcom_q6v5_adsp.c:12:
> include/linux/iommu.h:473:12: note: declared here
>   473 | extern int iommu_map(struct iommu_domain *domain, unsigned long iova,
>       |            ^~~~~~~~~
> 
> Caused by commit
> 
>   f22eedff28af ("remoteproc: qcom: Add support for memory sandbox")
> 
> interacting with commit
> 
>   1369459b2e21 ("iommu: Add a gfp parameter to iommu_map()")
> 
> from the iommu tree.

The patch-set causing this is in a separate branch in the IOMMU tree
which you can be merged into the rpmsg tree for a fixup there:

	git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu.git iommu-memory-accounting

Regards,

-- 
Jörg Rödel
jroedel@suse.de

SUSE Software Solutions Germany GmbH
Frankenstraße 146
90461 Nürnberg
Germany

(HRB 36809, AG Nürnberg)
Geschäftsführer: Ivo Totev, Andrew Myers, Andrew McDonald, Boudien Moerman


^ permalink raw reply	[flat|nested] 10+ messages in thread

* linux-next: build failure after merge of the rpmsg tree
@ 2020-10-15  4:55 Stephen Rothwell
  0 siblings, 0 replies; 10+ messages in thread
From: Stephen Rothwell @ 2020-10-15  4:55 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Pi-Hsun Shih, Linux Kernel Mailing List, Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 663 bytes --]

Hi all,

After merging the rpmsg tree, today's linux-next build (x86_64
allmodconfig) failed like this:

drivers/remoteproc/mtk_scp.c: In function 'mt8192_scp_before_load':
drivers/remoteproc/mtk_scp.c:326:2: error: implicit declaration of function 'dsb' [-Werror=implicit-function-declaration]
  326 |  dsb(sy);
      |  ^~~
drivers/remoteproc/mtk_scp.c:326:6: error: 'sy' undeclared (first use in this function); did you mean 's8'?
  326 |  dsb(sy);
      |      ^~
      |      s8

Caused by commit

  fd0b6c1ff85a ("remoteproc/mediatek: Add support for mt8192 SCP")

I have reverted that commit for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* RE: linux-next: build failure after merge of the rpmsg tree
  2019-02-22 12:50 ` Christoph Hellwig
@ 2019-02-22 14:02   ` Loic PALLARDY
  0 siblings, 0 replies; 10+ messages in thread
From: Loic PALLARDY @ 2019-02-22 14:02 UTC (permalink / raw)
  To: Christoph Hellwig, Stephen Rothwell
  Cc: Bjorn Andersson, Linux Next Mailing List, Linux Kernel Mailing List

Hi,

Changes in remoteproc have been introduced to associate dedicated dma coherent memory pool to each virtio device.
It is needed when we have several virtio devices for which buffers can't be allocated from the same memory region.
Patch introduces support in both ways:
- memory region declared thanks to reserved memory and associated thanks to of_reserved_mem_device_init_by_idx(): mainly used for regions located in DDR.
- memory region specified in rproc driver itself and defined as dma coherent thanks to dma_declare_coherent_memory(): These regions are generally located in coprocessor/SoC internal memories and declared in different ways by the different rproc drivers (regs in DT, hard coded values in drivers...).

For me, dma_declare_coherent_memory based solution is there to allow a smooth transition from current rproc drivers implementations to a cleaner and unified one based on reserved memory declaration.

Regards,
Loic

> -----Original Message-----
> From: Christoph Hellwig <hch@lst.de>
> Sent: vendredi 22 février 2019 13:51
> To: Stephen Rothwell <sfr@canb.auug.org.au>
> Cc: Bjorn Andersson <bjorn.andersson@linaro.org>; Christoph Hellwig
> <hch@lst.de>; Linux Next Mailing List <linux-next@vger.kernel.org>; Linux
> Kernel Mailing List <linux-kernel@vger.kernel.org>; Loic PALLARDY
> <loic.pallardy@st.com>
> Subject: Re: linux-next: build failure after merge of the rpmsg tree
> 
> FYI, can I please get an explanation for the remoteproc changes?
> 
> We really should avoid adding new callers of
> dma_declare_coherent_memory,
> which is a rather badly designed interface.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: linux-next: build failure after merge of the rpmsg tree
  2019-02-22  5:18 Stephen Rothwell
@ 2019-02-22 12:50 ` Christoph Hellwig
  2019-02-22 14:02   ` Loic PALLARDY
  0 siblings, 1 reply; 10+ messages in thread
From: Christoph Hellwig @ 2019-02-22 12:50 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: Bjorn Andersson, Christoph Hellwig, Linux Next Mailing List,
	Linux Kernel Mailing List, Loic Pallardy

FYI, can I please get an explanation for the remoteproc changes?

We really should avoid adding new callers of dma_declare_coherent_memory,
which is a rather badly designed interface.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* linux-next: build failure after merge of the rpmsg tree
@ 2019-02-22  5:18 Stephen Rothwell
  2019-02-22 12:50 ` Christoph Hellwig
  0 siblings, 1 reply; 10+ messages in thread
From: Stephen Rothwell @ 2019-02-22  5:18 UTC (permalink / raw)
  To: Bjorn Andersson, Christoph Hellwig
  Cc: Linux Next Mailing List, Linux Kernel Mailing List, Loic Pallardy

[-- Attachment #1: Type: text/plain, Size: 2290 bytes --]

Hi Bjorn,

After merging the rpmsg tree, today's linux-next build (arm
multi_v7_defconfig) failed like this:

drivers/remoteproc/remoteproc_virtio.c: In function 'rproc_add_virtio_dev':
drivers/remoteproc/remoteproc_virtio.c:374:11: error: 'DMA_MEMORY_EXCLUSIVE' undeclared (first use in this function); did you mean 'WQ_FLAG_EXCLUSIVE'?
           DMA_MEMORY_EXCLUSIVE);
           ^~~~~~~~~~~~~~~~~~~~
           WQ_FLAG_EXCLUSIVE
drivers/remoteproc/remoteproc_virtio.c:374:11: note: each undeclared identifier is reported only once for each function it appears in
drivers/remoteproc/remoteproc_virtio.c:371:10: error: too many arguments to function 'dma_declare_coherent_memory'
    ret = dma_declare_coherent_memory(dev, pa,
          ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from drivers/remoteproc/remoteproc_virtio.c:20:
include/linux/dma-mapping.h:748:5: note: declared here
 int dma_declare_coherent_memory(struct device *dev, phys_addr_t phys_addr,
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~

Caused by commit

  086d08725d34 ("remoteproc: create vdev subdevice with specific dma memory pool")

interacting with commit

  82c5de0ab8db ("dma-mapping: remove the DMA_MEMORY_EXCLUSIVE flag")

from the dma-mapping tree.

I have applied the following merge fix patch:

From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Fri, 22 Feb 2019 16:14:45 +1100
Subject: [PATCH] remoteproc: fix for "dma-mapping: remove the DMA_MEMORY_EXCLUSIVE flag"

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 drivers/remoteproc/remoteproc_virtio.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/remoteproc/remoteproc_virtio.c b/drivers/remoteproc/remoteproc_virtio.c
index 337327d21c1c..44774de6f17b 100644
--- a/drivers/remoteproc/remoteproc_virtio.c
+++ b/drivers/remoteproc/remoteproc_virtio.c
@@ -370,8 +370,7 @@ int rproc_add_virtio_dev(struct rproc_vdev *rvdev, int id)
 			/* Associate vdev buffer memory pool to vdev subdev */
 			ret = dma_declare_coherent_memory(dev, pa,
 							   mem->da,
-							   mem->len,
-							   DMA_MEMORY_EXCLUSIVE);
+							   mem->len);
 			if (ret < 0) {
 				dev_err(dev, "Failed to associate buffer\n");
 				goto out;
-- 
2.20.1

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: linux-next: build failure after merge of the rpmsg tree
  2018-04-26  3:33 Stephen Rothwell
@ 2018-04-26  3:46 ` Bjorn Andersson
  0 siblings, 0 replies; 10+ messages in thread
From: Bjorn Andersson @ 2018-04-26  3:46 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: Linux-Next Mailing List, Linux Kernel Mailing List, Joerg Roedel

On Wed 25 Apr 20:33 PDT 2018, Stephen Rothwell wrote:

> Hi Bjorn,
> 
> After merging the rpmsg tree, today's linux-next build (arm
> multi_v7_defconfig) failed like this:
> 
> drivers/remoteproc/remoteproc_core.c: In function 'rproc_handle_devmem':
> drivers/remoteproc/remoteproc_core.c:557:8: error: implicit declaration of function 'iommu_map_sync'; did you mean 'iommu_map_sg'? [-Werror=implicit-function-declaration]
>   ret = iommu_map_sync(rproc->domain, rsc->da,
>         ^~~~~~~~~~~~~~
>         iommu_map_sg
> drivers/remoteproc/remoteproc_core.c: In function 'rproc_resource_cleanup':
> drivers/remoteproc/remoteproc_core.c:845:14: error: implicit declaration of function 'iommu_unmap_sync'; did you mean 'iommu_unmap_fast'? [-Werror=implicit-function-declaration]
>    unmapped = iommu_unmap_sync(rproc->domain, entry->da,
>               ^~~~~~~~~~~~~~~~
>               iommu_unmap_fast
> 
> Caused by commit
> 
>   aace25b18cbd ("remoteproc: Use sychronized interface of the IOMMU-API")
> 
> I suspect that part of the commit is missing ...
> 

Sorry about that, now I've actually pushed the branch with this commit
removed again.

> I have use the rpmsg tree from next-20180424 for today.
> 

Thanks, should be good tomorrow again!

Regards,
Bjorn

^ permalink raw reply	[flat|nested] 10+ messages in thread

* linux-next: build failure after merge of the rpmsg tree
@ 2018-04-26  3:33 Stephen Rothwell
  2018-04-26  3:46 ` Bjorn Andersson
  0 siblings, 1 reply; 10+ messages in thread
From: Stephen Rothwell @ 2018-04-26  3:33 UTC (permalink / raw)
  To: Bjorn Andersson
  Cc: Linux-Next Mailing List, Linux Kernel Mailing List, Joerg Roedel

[-- Attachment #1: Type: text/plain, Size: 1075 bytes --]

Hi Bjorn,

After merging the rpmsg tree, today's linux-next build (arm
multi_v7_defconfig) failed like this:

drivers/remoteproc/remoteproc_core.c: In function 'rproc_handle_devmem':
drivers/remoteproc/remoteproc_core.c:557:8: error: implicit declaration of function 'iommu_map_sync'; did you mean 'iommu_map_sg'? [-Werror=implicit-function-declaration]
  ret = iommu_map_sync(rproc->domain, rsc->da,
        ^~~~~~~~~~~~~~
        iommu_map_sg
drivers/remoteproc/remoteproc_core.c: In function 'rproc_resource_cleanup':
drivers/remoteproc/remoteproc_core.c:845:14: error: implicit declaration of function 'iommu_unmap_sync'; did you mean 'iommu_unmap_fast'? [-Werror=implicit-function-declaration]
   unmapped = iommu_unmap_sync(rproc->domain, entry->da,
              ^~~~~~~~~~~~~~~~
              iommu_unmap_fast

Caused by commit

  aace25b18cbd ("remoteproc: Use sychronized interface of the IOMMU-API")

I suspect that part of the commit is missing ...

I have use the rpmsg tree from next-20180424 for today.

-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: linux-next: build failure after merge of the rpmsg tree
  2017-08-31  6:54 Stephen Rothwell
@ 2017-08-31 17:47 ` Bjorn Andersson
  0 siblings, 0 replies; 10+ messages in thread
From: Bjorn Andersson @ 2017-08-31 17:47 UTC (permalink / raw)
  To: Stephen Rothwell; +Cc: Linux-Next Mailing List, Linux Kernel Mailing List

On Wed 30 Aug 23:54 PDT 2017, Stephen Rothwell wrote:

> Hi Bjorn,
> 
> After merging the rpmsg tree, today's linux-next build (x86_64
> allmodconfig) failed like this:
> 
> ERROR: "qcom_glink_native_probe" [drivers/rpmsg/qcom_glink_rpm.ko] undefined!
> ERROR: "qcom_glink_native_remove" [drivers/rpmsg/qcom_glink_rpm.ko] undefined!
> 
> Maybe caused by commit
> 
>   6799c434c27b ("rpmsg: glink: Split rpm_probe to reuse the common code")
> 

Thanks for letting me know Stephen, those functions should have been
exported and I've corrected it.

> I have used the rpmsg tree from next-20170829 for today.
> 

Thanks,
Bjorn

^ permalink raw reply	[flat|nested] 10+ messages in thread

* linux-next: build failure after merge of the rpmsg tree
@ 2017-08-31  6:54 Stephen Rothwell
  2017-08-31 17:47 ` Bjorn Andersson
  0 siblings, 1 reply; 10+ messages in thread
From: Stephen Rothwell @ 2017-08-31  6:54 UTC (permalink / raw)
  To: Bjorn Andersson; +Cc: Linux-Next Mailing List, Linux Kernel Mailing List

Hi Bjorn,

After merging the rpmsg tree, today's linux-next build (x86_64
allmodconfig) failed like this:

ERROR: "qcom_glink_native_probe" [drivers/rpmsg/qcom_glink_rpm.ko] undefined!
ERROR: "qcom_glink_native_remove" [drivers/rpmsg/qcom_glink_rpm.ko] undefined!

Maybe caused by commit

  6799c434c27b ("rpmsg: glink: Split rpm_probe to reuse the common code")

I have used the rpmsg tree from next-20170829 for today.

-- 
Cheers,
Stephen Rothwell

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2023-01-30  8:52 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-01-27  7:02 linux-next: build failure after merge of the rpmsg tree Stephen Rothwell
2023-01-30  8:51 ` Joerg Roedel
  -- strict thread matches above, loose matches on Subject: below --
2020-10-15  4:55 Stephen Rothwell
2019-02-22  5:18 Stephen Rothwell
2019-02-22 12:50 ` Christoph Hellwig
2019-02-22 14:02   ` Loic PALLARDY
2018-04-26  3:33 Stephen Rothwell
2018-04-26  3:46 ` Bjorn Andersson
2017-08-31  6:54 Stephen Rothwell
2017-08-31 17:47 ` Bjorn Andersson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).