Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 8 Aug 2012 18:27:53 +0200
From:      Hans Petter Selasky <hselasky@c2i.net>
To:        freebsd-current@freebsd.org
Cc:        Konstantin Belousov <kostikbel@gmail.com>, Ed Schouten <ed@80386.nl>
Subject:   Re: ttydev_cdevsw has no d_purge
Message-ID:  <201208081827.53824.hselasky@c2i.net>
In-Reply-To: <20120808113133.GO2676@deviant.kiev.zoral.com.ua>
References:  <20120801160323.GN2676@deviant.kiev.zoral.com.ua> <201208071703.13773.hselasky@c2i.net> <20120808113133.GO2676@deviant.kiev.zoral.com.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 08 August 2012 13:31:33 Konstantin Belousov wrote:
> On Tue, Aug 07, 2012 at 05:03:13PM +0200, Hans Petter Selasky wrote:
> > On Sunday 05 August 2012 10:33:13 Hans Petter Selasky wrote:
> > > On Friday 03 August 2012 10:32:47 Ed Schouten wrote:
> > > > 2012/8/1 Hans Petter Selasky <hselasky@c2i.net>:
> > > > > I think the problem is like this, that in order to re-use the unit
> > > > > numbers for USB serial tty devices, the USB stack needs to wait
> > > > > until a TTY is actually freed, right? Else you will have a panic
> > > > > on creating devfs entries having the same name.
> > > > 
> > > > Indeed. So the USB code could simply pick a different unit number.
> > > 
> > > Hi Ed,
> > > 
> > > USB could use a different Unit number. Some questions:
> > > 
> > > When can the previous unit number be re-used? Is there a callback for
> > > this?
> > > 
> > > When can the USB serial code assume that it will not be called again
> > > and that all callbacks are drained?
> > 
> > Hi,
> > 
> > Can you try the attached patch and report back?
> 
> I applied the patch and reloaded ucom and uplcom. So far there were no
> power glitches so UPS did not dropped off the bus yet.
> 
> I have a question regarding the changed fragment of code. Why don't you use
> unr(9) KPI to manage unit numbers ?

Probably I could, but right now the unr interface doesn't support pending unit 
free which I need for other reasons, see below.

Ed: I would really like to see a custom argument for the tsw_free(), because 
it only needs to know the unit number, and the xsc for UCOM is freed when this 
is called and cannot be referred. Is it possible to have a separate "void *" 
for the tsw_free() function? Is this something which you can implement?

--HPS



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201208081827.53824.hselasky>