| From foo@baz Fri Mar 16 15:43:17 CET 2018 |
| From: "Luis R. Rodriguez" <mcgrof@kernel.org> |
| Date: Mon, 20 Nov 2017 09:45:35 -0800 |
| Subject: test_firmware: fix setting old custom fw path back on exit |
| |
| From: "Luis R. Rodriguez" <mcgrof@kernel.org> |
| |
| |
| [ Upstream commit 65c79230576873b312c3599479c1e42355c9f349 ] |
| |
| The file /sys/module/firmware_class/parameters/path can be used |
| to set a custom firmware path. The fw_filesystem.sh script creates |
| a temporary directory to add a test firmware file to be used during |
| testing, in order for this to work it uses the custom path syfs file |
| and it was supposed to reset back the file on execution exit. The |
| script failed to do this due to a typo, it was using OLD_PATH instead |
| of OLD_FWPATH, since its inception since v3.17. |
| |
| Its not as easy to just keep the old setting, it turns out that |
| resetting an empty setting won't actually do what we want, we need |
| to check if it was empty and set an empty space. |
| |
| Without this we end up having the temporary path always set after |
| we run these tests. |
| |
| Fixes: 0a8adf58475 ("test: add firmware_class loader test") |
| Signed-off-by: Luis R. Rodriguez <mcgrof@kernel.org> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| Signed-off-by: Sasha Levin <alexander.levin@microsoft.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| tools/testing/selftests/firmware/fw_filesystem.sh | 5 ++++- |
| 1 file changed, 4 insertions(+), 1 deletion(-) |
| |
| --- a/tools/testing/selftests/firmware/fw_filesystem.sh |
| +++ b/tools/testing/selftests/firmware/fw_filesystem.sh |
| @@ -45,7 +45,10 @@ test_finish() |
| if [ "$HAS_FW_LOADER_USER_HELPER" = "yes" ]; then |
| echo "$OLD_TIMEOUT" >/sys/class/firmware/timeout |
| fi |
| - echo -n "$OLD_PATH" >/sys/module/firmware_class/parameters/path |
| + if [ "$OLD_FWPATH" = "" ]; then |
| + OLD_FWPATH=" " |
| + fi |
| + echo -n "$OLD_FWPATH" >/sys/module/firmware_class/parameters/path |
| rm -f "$FW" |
| rmdir "$FWPATH" |
| } |