Re: [RFC 5/5] i3c: add i3cdev module to expose i3c dev in /dev

From: Greg KH
Date: Thu Dec 12 2019 - 09:46:31 EST


On Tue, Dec 10, 2019 at 04:37:33PM +0100, Vitor Soares wrote:
> +static struct i3cdev_data *i3cdev_get_by_minor(unsigned int minor)

Why? Why not just embed the structure in the cdev if you really need
it?

> +static struct i3cdev_data *get_free_i3cdev(struct i3c_device *i3c)
> +{
> + struct i3cdev_data *i3cdev;
> + unsigned long minor;
> +
> + minor = find_first_zero_bit(minors, N_I3C_MINORS);

No locking, fun!!!

:(

Why not use an idr instead, that is what it is there for. Don't try to
roll your own.

thanks,

greg k-h