From: David Howells <dhowe...@redhat.com>

We'll be folding in some more checks on fw_read_file_contents(),
this will make the success case easier to follow.

Signed-off-by: David Howells <dhowe...@redhat.com>
Signed-off-by: Luis R. Rodriguez <mcg...@suse.com>
---
 drivers/base/firmware_class.c | 16 +++++++---------
 1 file changed, 7 insertions(+), 9 deletions(-)

diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c
index d8148aa89b01..e10a5349aa61 100644
--- a/drivers/base/firmware_class.c
+++ b/drivers/base/firmware_class.c
@@ -361,20 +361,18 @@ static int fw_get_filesystem_firmware(struct device 
*device,
                        continue;
                rc = fw_read_file_contents(file, buf);
                fput(file);
-               if (rc)
+               if (rc == 0) {
+                       dev_dbg(device, "system data: direct-loading firmware 
%s\n",
+                               buf->fw_id);
+                       fw_finish_direct_load(device, buf);
+                       goto out;
+               } else
                        dev_warn(device, "system data, attempted to load %s, 
but failed with error %d\n",
                                 path, rc);
-               else
-                       break;
        }
+out:
        __putname(path);
 
-       if (!rc) {
-               dev_dbg(device, "system data: direct-loading firmware %s\n",
-                       buf->fw_id);
-               fw_finish_direct_load(device, buf);
-       }
-
        return rc;
 }
 
-- 
2.6.2

--
To unsubscribe from this list: send the line "unsubscribe 
linux-security-module" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to