Date: Mon, 9 Feb 2009 11:33:48 -0500 From: John Baldwin <jhb@freebsd.org> To: freebsd-current@freebsd.org, akbeech@gmail.com Subject: Re: lpt stopped working Message-ID: <200902091133.48838.jhb@freebsd.org> In-Reply-To: <200902061231.46516.beech@freebsd.org> References: <200902021643.39862.c47g@gmx.at> <200902052203.37792.beech@freebsd.org> <200902061231.46516.beech@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Friday 06 February 2009 4:31:46 pm Beech Rintoul wrote: > On Thursday 05 February 2009 22:03:37 Beech Rintoul wrote: > > On Wednesday 04 February 2009 05:14:10 John Baldwin wrote: > > > On Monday 02 February 2009 10:43:39 am Christian Gusenbauer wrote: > > > > Hi! > > > > > > > > Since the recent update (svn r187576) to the ppbus/ppc code my printer > > > > > > stopped > > > > > > > working. Every request seems to hang forever in ppb_request_bus waiting > > > > for ppb->ppc_lock (at least 'top' tells me that it's hanging in state > > > > 'ppbreq'). > > > > > > Can you use procstat to get a stack trace of the hung thread? > > > > My printer is still showing "device busy" for lpt0 does anyone know offhand > > when the changes were committed? I need to revert. > > There is regression somewhere in the ppbus code committed two weeks ago. I > reverted back to previous code and lpt0 no longer reports "device busy" and > printing is working again. Please help to debug this so we can have working lpt0 in 8.0. No one tested the patches months ago when I first posted them, and if folks do not test them now I will simply remove the driver before 8.0 ships. I no longer have any hardware such that I can test this directly, so I am depending on folks to test things I have asked for and report back. I believe the last thing I asked for was for someone to do this when they lpt was hung: Ok, can you run kgdb against your running kernel (Just run 'kgdb' without any arguments) and do the following: (kgdb) p *(struct ppb_data *)ppbus_devclass->devices[0]->softc Assuming the ppb_owner is not 0, can you then do this: (kgdb) p *(device_t)((struct ppb_data *)ppbus_devclass->devices[0]->softc)->ppb_owner -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200902091133.48838.jhb>