On Wed, Aug 7, 2019 at 4:02 AM Dan Carpenter <dan.carpenter@xxxxxxxxxx> wrote: > > On Tue, Aug 06, 2019 at 11:40:05AM -0700, Hridya Valsaraju wrote: > > @@ -467,6 +466,9 @@ static int binderfs_fill_super(struct super_block *sb, void *data, int silent) > > int ret; > > struct binderfs_info *info; > > struct inode *inode = NULL; > > + struct binderfs_device device_info = { 0 }; > > + const char *name; > > + size_t len; > > > > sb->s_blocksize = PAGE_SIZE; > > sb->s_blocksize_bits = PAGE_SHIFT; > > @@ -521,7 +523,24 @@ static int binderfs_fill_super(struct super_block *sb, void *data, int silent) > > if (!sb->s_root) > > return -ENOMEM; > > > > - return binderfs_binder_ctl_create(sb); > > + ret = binderfs_binder_ctl_create(sb); > > + if (ret) > > + return ret; > > + > > + name = binder_devices_param; > > + for (len = strcspn(name, ","); len > 0; len = strcspn(name, ",")) { > > + strscpy(device_info.name, name, len + 1); > > + ret = binderfs_binder_device_create(inode, NULL, &device_info); > > + if (ret) > > + return ret; > > We should probably clean up before returning... The error handling code > would probably be tricky to write though and it's not super common. Thank you for taking a look Dan. Did you mean cleaning up the default devices that were already created? They will actually be cleaned up by binderfs_evict_inode() during the super block's cleanup since the mount operation will fail due to an error here. > > > + name += len; > > + if (*name == ',') > > + name++; > > + > > + } > > + > > + return 0; > > + > > Remove this extra blank line. Will do in v3, thanks for catching this Dan! > > > } > > regards, > dan carpenter > > -- > To unsubscribe from this group and stop receiving emails from it, send an email to kernel-team+unsubscribe@xxxxxxxxxxx. > _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel