lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250226-qcom-nonroot-overlays-v1-0-26c6e7605833@trvn.ru>
Date: Wed, 26 Feb 2025 19:29:54 +0500
From: Nikita Travkin <nikita@...n.ru>
To: Bjorn Andersson <andersson@...nel.org>, 
 Konrad Dybcio <konradybcio@...nel.org>, Rob Herring <robh@...nel.org>, 
 Krzysztof Kozlowski <krzk+dt@...nel.org>, 
 Conor Dooley <conor+dt@...nel.org>, 
 Bryan O'Donoghue <bryan.odonoghue@...aro.org>
Cc: Konrad Dybcio <konrad.dybcio@....qualcomm.com>, 
 linux-arm-msm@...r.kernel.org, devicetree@...r.kernel.org, 
 linux-kernel@...r.kernel.org, Nikita Travkin <nikita@...n.ru>
Subject: [PATCH 0/2] {vision/navigation}-mezzanine: Fix overlay root node

While considering to propose WoA EL2 dt overlays upstream I was looking
at existing overlays and noticed that some of them are broken: they put
seemingly meaningful fixups into the overlay's "/" node, which places
them into the overlay "metadata" itself, not into a fixup fragment to be
applied to the actual dtb. This series fixes those two by changing to
full path "&{/}" which should work as it was initially intended.

See demonstration of the problem below:

$ cat base.dts
/dts-v1/;
/ {
	compatible = "fake,board";
	fake,value = <42>;
};

$ cat extra.dtso
/dts-v1/;
/plugin/;

/ {
	foo;
	bar { baz; };
};
&{/} { whatever-comes-next-after-baz; };

$ dtc base.dts -o base.dtb
$ dtc extra.dtso -o extra.dtbo
$ fdtoverlay -i base.dtb -o combine.dtb extra.dtbo
$ dtc base.dtb
/dts-v1/;

/ {
	compatible = "fake,board";
	fake,value = <0x2a>;
};

$ dtc extra.dtbo
/dts-v1/;

/ {
	foo;

	bar {
		baz;
	};

	fragment@0 {
		target-path = "/";

		__overlay__ {
			whatever-comes-next-after-baz;
		};
	};
};

$ dtc combine.dtb
/dts-v1/;

/ {
	whatever-comes-next-after-baz;
	compatible = "fake,board";
	fake,value = <0x2a>;
};

In the resulting dtb foo bar and baz are missing.

Signed-off-by: Nikita Travkin <nikita@...n.ru>
---
Nikita Travkin (2):
      arm64: dts: qcom: qrb5165-rb5-vision-mezzanine: Fix broken overlay root
      arm64: dts: qcom: sdm845-db845c-navigation-mezzanine: Fix the overlay root

 arch/arm64/boot/dts/qcom/qrb5165-rb5-vision-mezzanine.dtso       | 2 +-
 arch/arm64/boot/dts/qcom/sdm845-db845c-navigation-mezzanine.dtso | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
---
base-commit: 8433c776e1eb1371f5cd40b5fd3a61f9c7b7f3ad
change-id: 20250226-qcom-nonroot-overlays-bfe21d33be8c

Best regards,
-- 
Nikita Travkin <nikita@...n.ru>


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ