firmware: clean up filesystem load exit path
authorKees Cook <keescook@chromium.org>
Thu, 4 Feb 2016 21:15:02 +0000 (13:15 -0800)
committerMimi Zohar <zohar@linux.vnet.ibm.com>
Thu, 18 Feb 2016 22:14:01 +0000 (17:14 -0500)
This makes the error and success paths more readable while trying to
load firmware from the filesystem.

Signed-off-by: Kees Cook <keescook@chromium.org>
Cc: Josh Boyer <jwboyer@fedoraproject.org>
Cc: David Howells <dhowells@redhat.com>
Acked-by: Luis R. Rodriguez <mcgrof@kernel.org>
Signed-off-by: Mimi Zohar <zohar@linux.vnet.ibm.com>
drivers/base/firmware_class.c

index 7bc4ad0..c743a2f 100644 (file)
@@ -361,19 +361,17 @@ static int fw_get_filesystem_firmware(struct device *device,
                        continue;
                rc = fw_read_file_contents(file, buf);
                fput(file);
-               if (rc)
+               if (rc) {
                        dev_warn(device, "loading %s failed with error %d\n",
                                 path, rc);
-               else
-                       break;
-       }
-       __putname(path);
-
-       if (!rc) {
+                       continue;
+               }
                dev_dbg(device, "direct-loading %s\n",
                        buf->fw_id);
                fw_finish_direct_load(device, buf);
+               break;
        }
+       __putname(path);
 
        return rc;
 }