If we somehow get a hotplug event for a module id that we already have
created[1], don't try to create it again, or sysfs will complain loudly.
Instead, abort the creation properly.
[1] If, for example, you happened to run a script on a greybus emulator
twice in a row...
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
Reviewed-by: Alex Elder <elder@linaro.org>
struct gb_module *gmod;
int retval;
+ gmod = gb_module_find(hd, module_id);
+ if (gmod) {
+ dev_err(hd->parent, "Duplicate module id %d will not be created\n",
+ module_id);
+ return NULL;
+ }
+
gmod = kzalloc(sizeof(*gmod), GFP_KERNEL);
if (!gmod)
return NULL;