aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/base/firmware_class.c
diff options
context:
space:
mode:
authorKees Cook <keescook@chromium.org>2016-02-04 16:15:02 -0500
committerMimi Zohar <zohar@linux.vnet.ibm.com>2016-02-18 17:14:01 -0500
commit4b2530d819e179ae3352c38a1ceff929a922d070 (patch)
tree5a2418b846be2d02fd3741047aaabec9c9d932e9 /drivers/base/firmware_class.c
parent5275d194e0e56db2bdc43e58f5e54b8e36d6fb03 (diff)
firmware: clean up filesystem load exit path
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>
Diffstat (limited to 'drivers/base/firmware_class.c')
-rw-r--r--drivers/base/firmware_class.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/drivers/base/firmware_class.c b/drivers/base/firmware_class.c
index 7bc4ad0f36d5..c743a2f18c33 100644
--- a/drivers/base/firmware_class.c
+++ b/drivers/base/firmware_class.c
@@ -361,19 +361,17 @@ static int fw_get_filesystem_firmware(struct device *device,
361 continue; 361 continue;
362 rc = fw_read_file_contents(file, buf); 362 rc = fw_read_file_contents(file, buf);
363 fput(file); 363 fput(file);
364 if (rc) 364 if (rc) {
365 dev_warn(device, "loading %s failed with error %d\n", 365 dev_warn(device, "loading %s failed with error %d\n",
366 path, rc); 366 path, rc);
367 else 367 continue;
368 break; 368 }
369 }
370 __putname(path);
371
372 if (!rc) {
373 dev_dbg(device, "direct-loading %s\n", 369 dev_dbg(device, "direct-loading %s\n",
374 buf->fw_id); 370 buf->fw_id);
375 fw_finish_direct_load(device, buf); 371 fw_finish_direct_load(device, buf);
372 break;
376 } 373 }
374 __putname(path);
377 375
378 return rc; 376 return rc;
379} 377}