Skip to contentSkip to conversation

FAILED: patch "[PATCH] test_firmware: fix setting old custom fw path back on exit," failed to apply to 4.16-stable tree

PATCH [email protected] 2 participants 4 messages Apr 29, 2018 – May 11, 2018

Subsystems (2)
lore
Share & tools
lore

[email protected]

author maintainer
#0 lore raw

The patch below does not apply to the 4.16-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.

thanks,

greg k-h

------------------ original commit in Linus's tree ------------------

Quoted 1 line

From e538409257d0217a9bc715686100a5328db75a15 Mon Sep 17 00:00:00 2001

From: Ben Hutchings <[email protected]>
Date: Wed, 4 Apr 2018 22:38:49 +0200
Subject: [PATCH] test_firmware: fix setting old custom fw path back on exit,
second try

Commit 65c79230576 tried to clear the custom firmware path on exit by writing a single space to the firmware_class.path parameter. This doesn't work because nothing strips this space from the value stored and fw_get_filesystem_firmware() only ignores zero-length paths.

Instead, write a null byte.

Fixes 0a8adf58475 ("test: add firmware_class loader test")
Fixes 65c79230576 ("test_firmware: fix setting old custom fw path back on exit")
Cc stable <[email protected]>
tools/testing/selftests/firmware/fw_lib.sh +6 -4
index 9ea31b57d71a..962d7f4ac627 100755
@@ -154,11 +154,13 @@ test_finish()
 	if [ "$HAS_FW_LOADER_USER_HELPER" = "yes" ]; then
 		echo "$OLD_TIMEOUT" >/sys/class/firmware/timeout
 	fi
-	if [ "$OLD_FWPATH" = "" ]; then
-		OLD_FWPATH=" "
-	fi
 	if [ "$TEST_REQS_FW_SET_CUSTOM_PATH" = "yes" ]; then
-		echo -n "$OLD_FWPATH" >/sys/module/firmware_class/parameters/path
+		if [ "$OLD_FWPATH" = "" ]; then
+			# A zero-length write won't work; write a null byte
+			printf '\000' >/sys/module/firmware_class/parameters/path
+		else
+			echo -n "$OLD_FWPATH" >/sys/module/firmware_class/parameters/path
+		fi
 	fi
 	if [ -f $FW ]; then
 		rm -f "$FW"
#1 lore raw
Quoted 4 lines · On Sun, 2018-04-29 at 14:36 +0200, [email protected] wrote:

The patch below does not apply to the 4.16-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.

[...]

The attached version should work for 4.4, 4.9, 4.14 and 4.16.

Ben.

Signature · 2 lines
Ben Hutchings
Software Developer, Codethink Ltd.

From f2bdf7cff21eca4755617bfe01146d0741a8fecf Mon Sep 17 00:00:00 2001
From: Ben Hutchings <[email protected]>
Date: Tue, 3 Apr 2018 20:39:56 +0100
Subject: [PATCH] test_firmware: fix setting old custom fw path back on exit,
second try

commit 1dc54bb7046d90447fc92e982f90df57eb3bce37 upstream.

Commit 65c79230576 tried to clear the custom firmware path on exit by writing a single space to the firmware_class.path parameter. This doesn't work because nothing strips this space from the value stored and fw_get_filesystem_firmware() only ignores zero-length paths.

Instead, write a null byte.

Fixes 0a8adf58475 ("test: add firmware_class loader test")
Fixes 65c79230576 ("test_firmware: fix setting old custom fw path back on exit")
---
 tools/testing/selftests/firmware/fw_filesystem.sh | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)
tools/testing/selftests/firmware/fw_filesystem.sh +4 -2
index f9508e1a4058..6b63b6bf2661 100755
@@ -46,9 +46,11 @@ test_finish()
 		echo "$OLD_TIMEOUT" >/sys/class/firmware/timeout
 	fi
 	if [ "$OLD_FWPATH" = "" ]; then
-		OLD_FWPATH=" "
+		# A zero-length write won't work; write a null byte
+		printf '\000' >/sys/module/firmware_class/parameters/path
+	else
+		echo -n "$OLD_FWPATH" >/sys/module/firmware_class/parameters/path
 	fi
-	echo -n "$OLD_FWPATH" >/sys/module/firmware_class/parameters/path
 	rm -f "$FW"
 	rmdir "$FWPATH"
 }
Signature · 1 line
2.11.0
author maintainer
#2 lore raw
Quoted 8 lines · Ben Hutchings
Quoted 4 lines · On Sun, 2018-04-29 at 14:36 +0200, [email protected] wrote:

The patch below does not apply to the 4.16-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.

[...]

The attached version should work for 4.4, 4.9, 4.14 and 4.16.

Thanks, that worked, but:

Quoted 1 line

commit 1dc54bb7046d90447fc92e982f90df57eb3bce37 upstream.

Wrong git commit id :(

I fixed it and used the correct one.

thanks,

greg k-h

#3 lore raw
Quoted 11 lines · Greg KH
Quoted 9 lines · Ben Hutchings
Quoted 5 lines
Quoted 1 line · On Sun, 2018-04-29 at 14:36 +0200, [email protected] wrote:

The patch below does not apply to the 4.16-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.

[...]

The attached version should work for 4.4, 4.9, 4.14 and 4.16.

Quoted 7 lines

Thanks, that worked, but:

Quoted 1 line

commit 1dc54bb7046d90447fc92e982f90df57eb3bce37 upstream.

Wrong git commit id :(

I fixed it and used the correct one.

Sorry about that.

Ben.

Quoted 4 lines

thanks,

greg k-h

Signature · 2 lines
Ben Hutchings
Software Developer, Codethink Ltd.