Messages in this thread | | | Date | Wed, 19 Mar 2014 01:18:37 +0200 | From | Eli Billauer <> | Subject | Re: [PATCH] staging/xillybus: Handle OOM in xillybus_init() |
| |
Hi,
I stand (shamefully) corrected. Thanks.
Eli
On 19/03/14 01:07, Richard Weinberger wrote: > alloc_workqueue() can fail and returns NULL in case of > OOM. > Handle this case and undo class_create(). > > Signed-off-by: Richard Weinberger<richard@nod.at> > --- > drivers/staging/xillybus/xillybus_core.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/drivers/staging/xillybus/xillybus_core.c b/drivers/staging/xillybus/xillybus_core.c > index 2ebaf16..b0a6696 100644 > --- a/drivers/staging/xillybus/xillybus_core.c > +++ b/drivers/staging/xillybus/xillybus_core.c > @@ -2318,8 +2318,12 @@ static int __init xillybus_init(void) > } > > xillybus_wq = alloc_workqueue(xillyname, 0, 0); > + if (!xillybus_wq) { > + class_destroy(xillybus_class); > + rc = -ENOMEM; > + } > > - return 0; /* Success */ > + return rc; > } > > static void __exit xillybus_exit(void) >
| |