[PATCH 1/4] usbgadget: autostart: Handle errors in file list gracefully
Sascha Hauer
s.hauer at pengutronix.de
Wed Sep 27 02:12:42 PDT 2017
file_list_parse() can fail and returns an error pointer. Print
an error message when it fails and also set to NULL again so
that usb_multi_register() does not stumble upon the error pointer.
Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
---
drivers/usb/gadget/autostart.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/drivers/usb/gadget/autostart.c b/drivers/usb/gadget/autostart.c
index 465d8fd380..3fa43137fa 100644
--- a/drivers/usb/gadget/autostart.c
+++ b/drivers/usb/gadget/autostart.c
@@ -11,6 +11,8 @@
* GNU General Public License for more details.
*
*/
+#define pr_fmt(fmt) "usbgadget autostart: " fmt
+
#include <common.h>
#include <command.h>
#include <errno.h>
@@ -42,8 +44,14 @@ static int usbgadget_autostart(void)
opts = xzalloc(sizeof(*opts));
opts->release = usb_multi_opts_release;
- if (fastboot_function)
+ if (fastboot_function) {
opts->fastboot_opts.files = file_list_parse(fastboot_function);
+ if (IS_ERR(opts->fastboot_opts.files)) {
+ pr_err("Parsing file list \"%s\" failed: %s\n", fastboot_function,
+ strerrorp(opts->fastboot_opts.files));
+ opts->fastboot_opts.files = NULL;
+ }
+ }
opts->create_acm = acm;
--
2.11.0
More information about the barebox
mailing list