public inbox for linux-next@vger.kernel.org 
 help / color / mirror / Atom feed
* linux-next: manual merge of the coresight tree with the arm-perf, arm64 trees
@ 2023-08-21  4:40 Stephen Rothwell
  2023-08-21 11:33 ` Will Deacon
  0 siblings, 1 reply; 2+ messages in thread
From: Stephen Rothwell @ 2023-08-21  4:40 UTC (permalink / raw)
  To: Mathieu Poirier, Catalin Marinas, Will Deacon
  Cc: Anshuman Khandual, Linux Kernel Mailing List,
	Linux Next Mailing List, Suzuki K Poulose

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

Hi all,

Today's linux-next merge of the coresight tree got a conflict in:

  drivers/hwtracing/coresight/coresight-trbe.c

between commit:

  e926b8e9eb40 ("coresight: trbe: Add a representative coresight_platform_data for TRBE")

from the arm-perf, arm64 trees and commit:

  39744738a67d ("coresight: trbe: Allocate platform data per device")

from the coresight tree.

I fixed it up (I think - see below) and can carry the fix as necessary.
This is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging.  You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.

-- 
Cheers,
Stephen Rothwell

diff --cc drivers/hwtracing/coresight/coresight-trbe.c
index 9c59e2652b20,e20c1c6acc73..000000000000
--- a/drivers/hwtracing/coresight/coresight-trbe.c
+++ b/drivers/hwtracing/coresight/coresight-trbe.c
@@@ -1244,6 -1254,10 +1254,21 @@@ static void arm_trbe_register_coresight
  	if (!desc.name)
  		goto cpu_clear;
  
 -	desc.pdata = coresight_get_platform_data(dev);
++	/*
++	 * TRBE coresight devices do not need regular connections
++	 * information, as the paths get built between all percpu
++	 * source and their respective percpu sink devices. Though
++	 * coresight_register() expect device connections via the
++	 * platform_data, which TRBE devices do not have. As they
++	 * are not real ACPI devices, coresight_get_platform_data()
++	 * ends up failing. Instead let's allocate a dummy zeroed
++	 * coresight_platform_data structure and assign that back
++	 * into the device for that purpose.
++	 */
++	desc.pdata = devm_kzalloc(dev, sizeof(*desc.pdata), GFP_KERNEL);
+ 	if (IS_ERR(desc.pdata))
+ 		goto cpu_clear;
+ 
  	desc.type = CORESIGHT_DEV_TYPE_SINK;
  	desc.subtype.sink_subtype = CORESIGHT_DEV_SUBTYPE_SINK_PERCPU_SYSMEM;
  	desc.ops = &arm_trbe_cs_ops;

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

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

* Re: linux-next: manual merge of the coresight tree with the arm-perf, arm64 trees
  2023-08-21  4:40 linux-next: manual merge of the coresight tree with the arm-perf, arm64 trees Stephen Rothwell
@ 2023-08-21 11:33 ` Will Deacon
  0 siblings, 0 replies; 2+ messages in thread
From: Will Deacon @ 2023-08-21 11:33 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: Mathieu Poirier, Catalin Marinas, Anshuman Khandual,
	Linux Kernel Mailing List, Linux Next Mailing List,
	Suzuki K Poulose

Hi Stephen,

On Mon, Aug 21, 2023 at 02:40:30PM +1000, Stephen Rothwell wrote:
> Today's linux-next merge of the coresight tree got a conflict in:
> 
>   drivers/hwtracing/coresight/coresight-trbe.c
> 
> between commit:
> 
>   e926b8e9eb40 ("coresight: trbe: Add a representative coresight_platform_data for TRBE")
> 
> from the arm-perf, arm64 trees and commit:
> 
>   39744738a67d ("coresight: trbe: Allocate platform data per device")
> 
> from the coresight tree.
> 
> I fixed it up (I think - see below) and can carry the fix as necessary.
> This is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging.  You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
> 
> -- 
> Cheers,
> Stephen Rothwell
> 
> diff --cc drivers/hwtracing/coresight/coresight-trbe.c
> index 9c59e2652b20,e20c1c6acc73..000000000000
> --- a/drivers/hwtracing/coresight/coresight-trbe.c
> +++ b/drivers/hwtracing/coresight/coresight-trbe.c
> @@@ -1244,6 -1254,10 +1254,21 @@@ static void arm_trbe_register_coresight
>   	if (!desc.name)
>   		goto cpu_clear;
>   
>  -	desc.pdata = coresight_get_platform_data(dev);
> ++	/*
> ++	 * TRBE coresight devices do not need regular connections
> ++	 * information, as the paths get built between all percpu
> ++	 * source and their respective percpu sink devices. Though
> ++	 * coresight_register() expect device connections via the
> ++	 * platform_data, which TRBE devices do not have. As they
> ++	 * are not real ACPI devices, coresight_get_platform_data()
> ++	 * ends up failing. Instead let's allocate a dummy zeroed
> ++	 * coresight_platform_data structure and assign that back
> ++	 * into the device for that purpose.
> ++	 */
> ++	desc.pdata = devm_kzalloc(dev, sizeof(*desc.pdata), GFP_KERNEL);
> + 	if (IS_ERR(desc.pdata))
> + 		goto cpu_clear;

Although this is what I would've done too, I think there's a deeper
question as to whether the per-device pdata allocation is even needed [1].
So I'll drop the coresight/ changes from my tree(s) while this is worked
out.

Cheers,

Will

[1] https://lore.kernel.org/lkml/20230821112851.GC19469@willie-the-truck/T/#mc78e19ae31612a6b5947b83180ca64fd223c351e

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

end of thread, other threads:[~2023-08-21 11:33 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-08-21  4:40 linux-next: manual merge of the coresight tree with the arm-perf, arm64 trees Stephen Rothwell
2023-08-21 11:33 ` Will Deacon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox