Re: [PATCH] tty/n_gsm.c: do not clear gsm_mux entry when the gsm is not closed

From: Greg Kroah-Hartman
Date: Mon Jul 28 2014 - 11:14:22 EST


On Mon, Jul 28, 2014 at 03:16:25PM +0800, xinhui.pan wrote:
> > Why can't you do dynamic reference counting of your structure, that
> > would allow you to get rid of your global array, right?
> >
>
> Thanks for your nice comments.
> Struct gsm has a ref-count already. :)

Then you should be fine, no need to keep it in an array.

> And also adding a ref-count is a little hard to me. :(
> This global array is used to keep tracking the gsms that stands for the gsmttyXX.

You shouldn't need that at all, just use a list, you don't care what the
XX number is within the driver, just allocate a new one with the next
available number and you should be fine.

> and it can tell us if we can create a new gsm. :)

You should always be able to create a new gsm if you need to :)

> In gsm_init we set *gsm_tty_driver = alloc_tty_driver(256);*

Why limit to 256? Just use a list, and a idr structure to allocate the
minor number, and all should be good.

thanks,

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/