[PATCH v2 1/2] binder: Add default binder devices through binderfs when configured

Dan Carpenter dan.carpenter at oracle.com
Fri Aug 9 09:25:16 UTC 2019


On Wed, Aug 07, 2019 at 09:51:46AM -0700, Hridya Valsaraju wrote:
> On Wed, Aug 7, 2019 at 4:02 AM Dan Carpenter <dan.carpenter at oracle.com> 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.

Yeah.  I meant the binderfs_binder_device_create() from previous
iterations through this loop.

Good to know that it's handled.  Thanks for taking the time to look at
this.

regards,
dan carpenter



More information about the devel mailing list