rupt might have changed hw_stopped.
If icount changes at all, invalidate the last
reading of the state and do it again. The way
icount is incremented is not changed.
Like I said, it is really ugly. I was just looking
for a way of allowing get_mctrl to sleep if necessary.
--
Paul Fulghum
Mi
On Mon, 2006-06-26 at 15:26 -0700, Greg KH wrote:
> On Fri, Jun 23, 2006 at 02:28:42PM -0300, Luiz Fernando N. Capitulino wrote:
> > On Thu, 22 Jun 2006 09:29:40 +0100
> > Russell King <[EMAIL PROTECTED]> wrote:
> >
> > |
> > | Consider this scenario with what you're proposing:
> > |
> > | thr
On Sat, 2006-06-24 at 13:13 +0200, Guennadi Liakhovetski wrote:
> Without my patch this is the first call to set_termios in pl2303 and the
> termios struct is overwritten with defaults (anybody has an idea why?) and
> the baudrate is set to 9600. AFAIU set_termios is called normally from
> ->ope
On Fri, 2006-06-23 at 19:02 -0700, Greg KH wrote:
> That's all you have done here. Just moved the init to open, but this
> didn't change the logic at all as:
>
> > pl2303_set_termios (port, &tmp_termios);
>
> You then still call pl2303_set_termios(). How did this fix anything?
It i
Guennadi Liakhovetski wrote:
> The patch we are talking about is not pretty, and I am not sure it is
> correct. But if you think it is I would appreciate your "Acked-by" under
> it:-)
The module locking may not be a big deal (if the driver
is used as a console then it is in kernel anyways?), but
st vanilla 2.6.17, the pl2303 would
fail also.
--
As for the initial console rate mismatch on pl2303:
pl2303_set_termios requires a private initialization flag
to be set (priv->termios_initialized) or it will
default to 9600 N81 instead of using the termios
settings supplied by usb_console_setup.
precisely, does console output still appear
after the last open file descriptor is closed?
If you terminate getty/mgetty do you
still see console output?
--
Paul Fulghum
Microgate Systems, Ltd.
---
Using Tomcat but need to do more? Need to
hat no more console output is accepted?
--
Paul Fulghum
Microgate Systems, Ltd.
---
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IB
Guennadi Liakhovetski wrote:
Emn, Paul, correct me if I am wrong. The only (regular) place I found
where console->setup() is called is in kernel/printk.c in
register_console()...
Yes
Anyway, I did check it (I just changed the if() that
follows to if(1), because without ++open_count the test
On Sat, 2006-04-22 at 18:05 +0200, Guennadi Liakhovetski wrote:
> On Sat, 22 Apr 2006, Paul Fulghum wrote:
>
> > As you say, back to looking at the code...
> >
> > Just as a quick hack/test, what happens if you don't
> > increment port->open_count in console
On Sat, 2006-04-22 at 12:14 +0200, Guennadi Liakhovetski wrote:
> Do you mean something like the patch below? If yes, then it doesn't
> help:-( Any idea why?.. I'll try to have a better look too...
That is what I meant, but I was wrong.
My suggestion was pointless as port->tty should
always be N
p, before the usb serial port
is opened for other reasons.
usb_console_setup() should be changed to use the
current tty value if non-NULL, instead of a dummy tty.
--
Paul Fulghum
Microgate Systems, Ltd
---
This SF.Net email is sponsored by xPML, a groundbreak
Guennadi Liakhovetski wrote:
Well, looked through the code again - I think, you are right. An updated
version below. I just used your initial (slightly modified to my
tastes:-)) approach - calling usb_serial_console_exit() from
usb_serial_console_disconnect().
Looks good to me. Have you teste
On Thu, 2006-04-13 at 22:25 +0200, Guennadi Liakhovetski wrote:
> +void usb_serial_console_disconnect(struct usb_serial *serial)
> +{
> + if (serial && serial->port && serial->port[0] && serial->port[0] ==
> usbcons_info.port) {
> + usbcons_info.port->open_count--;
> +
On Wed, 2006-04-12 at 16:59 -0700, Greg KH wrote:
> 2.6.17-rc1 doesn't have a serial8250_console_write() that looks for LF
> characters and replace them like I think your patch did...
For 2.6.16-rc1, that logic moved to drivers/serial/serial_core.c
in the function uart_console_write().
--
Paul
On Wed, 2006-04-12 at 16:59 -0700, Greg KH wrote:
> 2.6.17-rc1 doesn't have a serial8250_console_write() that looks for LF
> characters and replace them like I think your patch did...
I've been working against 2.6.16
I'll take a look at 2.6.17-rc1 and see what changed.
--
Paul
---
On Thu, 2006-04-13 at 00:37 +0200, Guennadi Liakhovetski wrote:
> On Wed, 12 Apr 2006, Greg KH wrote:
>
> > > Problem 3. Recursive error-messages on dongle-unplug, which render the
> > > system unusable. Here again, the proper solution would be to implement
> > > some usb_serial_console_disconne
On Wed, 2006-04-12 at 16:33 -0700, Greg KH wrote:
> On Wed, Apr 12, 2006 at 06:19:59PM -0500, Paul Fulghum wrote:
> > Greg KH wrote:
> > >Does the serial console driver have this logic in it?
> >
> > Yes, that is where I took it from.
> > drivers/serial/8250.
Greg KH wrote:
Does the serial console driver have this logic in it?
Yes, that is where I took it from.
drivers/serial/8250.c
--
Paul
---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications
k, we may use it as a starting
point. It contains some of your fixes, Paul, plus some my hacks:-)
You have the setup to test this.
If it works for you, then submit the patch.
--
Paul Fulghum
Microgate Systems, Ltd.
---
This SF.Net email is
Try this all-in-one patch.
Included:
* usb serial_open fix (fix ENODEV)
* usb_console_write fix (fix CR after LF)
* ftdi patch (fix oops on tty struct == NULL)
* ftdi uninitialized tmp_termios fix
* remove __init from usb_console_setup (oops on late device install)
* add usb_serial_console_disconn
gisters the
USB device as a console when unplugged. These write failures
(ENODEV) are probably from console messages being sent to
ftdi_write (through usb_console_write) after the USB device is gone.
I need to look a little closer at this to understand what
needs to be be done.
--
Paul Fulghum
Micro
On Sat, 2006-04-08 at 23:16 +0200, Guennadi Liakhovetski wrote:
> On Sat, 8 Apr 2006, Paul Fulghum wrote:
> > OK, this one backs out my usb_console_setup change
> > that uses the temp tty structure for the device specific open.
> >
> > Included is:
> > * improve
On Sat, 2006-04-08 at 21:34 +0200, Guennadi Liakhovetski wrote:
> On Fri, 7 Apr 2006, Paul Fulghum wrote:
> It hung exactly as with the previous big one. Don't think it is important,
> I am testing it on a SMP.
OK, this one backs out my usb_console_setup change
that uses the temp
Guennadi Liakhovetski wrote:
Secondly, the kernel hung after:
drivers/usb/serial/usb-serial.c: USB Serial support registered for FTDI USB
Serial Device
ftdi_sio 4-2:1.0: FTDI USB Serial Device converter detected
drivers/usb/serial/ftdi_sio.c: Detected FT232BM
usb 4-2: FTDI USB Serial Device con
On Fri, 2006-04-07 at 22:10 +0200, Guennadi Liakhovetski wrote:
> Yep, that would work, I first didn't look at that code too attentively as
> I didn't want to do any such "intrusive" changes. Would you then remove
> the call to serial->type->set_termios(port, NULL);? Do all usb-serial
> drivers
r the set_termios call. I was thinking of just moving
the device specific open inside the code where these
are allocated.
I'll post a new patch in an hour or so.
--
Paul Fulghum
Microgate Systems, Ltd.
---
This SF.Net email is sponsored
On Thu, 2006-04-06 at 23:48 +0200, Guennadi Liakhovetski wrote:
> The patch below fixes the Oops, and gets some output with
> "console=ttyUSB0". But it is not perfect - newlines are not accompanied by
> carriage returns, and funnily, although in dmesg it says:
>
> usb 4-2: FTDI USB Serial Device
le don't unplug the device during an active session.
Naughty Bob.
--
Paul Fulghum
Microgate Systems, Ltd
---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media.
On Wed, 2006-03-15 at 14:58 -0800, Greg KH wrote:
> > So dev->kobj->dentry should be set to NULL in
> > device_remove_file() and other code should be
> > fixed to check for dev->kobj->dentry == NULL ?
>
> No, the kobject core should do it for us.
>
> Here's a patch that should fix this up. Bob,
Alan Stern wrote:
I don't know. I'm not familiar with the details of how sysfs is supposed
to work. Maybe the existence of the symlink should prevent the dentry
from being freed during sysfs_remove_dir. Or maybe sysfs_remove_dir
should modify the symlink data structure so that the other cod
e_file() and other code should be
fixed to check for dev->kobj->dentry == NULL ?
--
Paul Fulghum
Microgate Systems, Ltd
---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web an
On Wed, 2006-03-15 at 09:34 +0100, Oliver Neukum wrote:
> > hub 1-0:1.0: debounce: port 2: total 100ms stable 100ms status 0x100
> > acm_tty_unregister if=cee8896c dev=cee88980 ref=2
> > class_device_del call sysfs_remove_link class_dev=c9a6aec4 ref=2
> > dentry=c8f7a2b4
> > class_device_del call
output *are* the kobject reference counts.
Look at drivers/core/core.c for put_device/get_device
--
Paul Fulghum
Microgate Systems, Ltd
---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications i
t we are closer.
--
Paul Fulghum
Microgate Systems, Ltd.
---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group
OK, here is another printk patch.
Leave the previous one in place.
--- linux-2.6.16-rc6/drivers/base/class.c 2006-03-14 20:13:59.0
-0600
+++ b/drivers/base/class.c 2006-03-14 20:13:35.0 -0600
@@ -666,7 +666,13 @@ void class_device_del(struct class_devic
if (cl
Bob Copeland wrote:
Here's the long awaited dmesg... if needed I can also recompile with
the acm debugging on -- some of that may be useful in the probe stage
if this doesn't narrow it down.
Please do, as the logging does not show what I thought it would.
I'm going to make another printk patch
for that purpose. It just
may be that some other code does too many puts on acm->control->dev.
We should find out tonight when Bob gives the latest printk patch
a try.
--
Paul Fulghum
Microgate Systems, Ltd
---
This SF.Net email i
everything work if you simply delete the line
>
> acm->dev = NULL;
>
> from acm_disconnect()?
acm->dev == NULL is used in acm_tty_close() which runs
after the disconnect to determine that the device is
unplugged and hence call tty_unregister_device().
e96511c acm=ce24eca0
> acm_tty_close acm->used=1 acm->dev=
atm_tty_close called from tty_io.c:release_dev()
acm->used=1 on entry, decrements to zero == final close
acm->dev is NULL (unplugged) so call tty_unregister_device()
> Unable to handle kernel paging request at virtual add
On Tue, 2006-03-14 at 11:52 -0500, Bob Copeland wrote:
> Will do, though it will probably have to wait until this evening;
Thanks, being able to reproduce it every time is a real plus.
> my kernel tree is fluxxy.
You should probably have a doctor look at that.
--
Paul Fulghum
Mic
ence. The second
call directly accesses acm->control->dev. So if the
reference count gets off by even one, the second call
could oops.
That's my best understanding of it at this point,
but I've been wrong on my last couple of assertions.
It may be worth waiting for Bob to r
virtual address 6b6b6bfb
My last post does ref checking before and after calling
the tty register/unregister functions.
--
Paul Fulghum
Microgate Systems, Ltd
---
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
On Tue, 2006-03-14 at 00:06 +0100, Oliver Neukum wrote:
> > > It does usb_get_intf() before it passes the reference to the tty layer.
> >
> > Yeah, that looks sane, the odd thing is on the disconnect path you
> > disconnect the control interface too.
Bob, this problem has not yet been properly di
Pete Zaitcev wrote:
On Mon, 13 Mar 2006 16:31:35 -0600, Paul Fulghum <[EMAIL PROTECTED]> wrote:
sysfs_remove_link(&class_dev->kobj, "device");
sysfs_remove_link(&class_dev->dev->kobj, class_name);
The second one is probabl
ot;%s%d", driver->devfs_name, index + driver->name_base);
>>> class_device_destroy(tty_class, MKDEV(driver->major,
>>> driver->minor_start) + index);
--
Paul Fulghum
Microgate Systems, Ltd
---
This SF.Net emai
On Mon, 2006-03-13 at 13:48 -0800, Pete Zaitcev wrote:
> On Mon, 13 Mar 2006 15:14:31 -0600, Paul Fulghum <[EMAIL PROTECTED]> wrote:
>
> > A pointer to control_interface->dev is saved in the tty class device
> > object created by tty_register_device(). This reference is
't aware of how all these bits
tied together. But your plan sounds reasonable (doing
the get/put_device in tty_register_device).
I'll put together a patch to do just that
and see if Bob is still in the testing mood.
--
Paul Fulghum
Microgate Systems, Ltd
On Mon, 2006-03-13 at 12:46 +, Greg KH wrote:
> On Mon, Mar 13, 2006 at 10:17:42AM -0600, Paul Fulghum wrote:
> > Clear acm->tty on last close because the tty layer
> > releases the tty object at that point.
>
> Does the oops go away with just this fix?
No, it is
y layer from creating sysfs entries referencing the usb device.
This prevents oops in sysfs_hash_and_remove when tty_unregister_device
is called after usb device is disconnected during use. By the time
tty_unregister_device is called, the usb device has already been released.
Signed-off-by: Paul Ful
On Mon, 2006-03-13 at 10:21 -0800, Pete Zaitcev wrote:
> On Mon, 13 Mar 2006 09:51:20 -0600, Paul Fulghum <[EMAIL PROTECTED]> wrote:
>
> > Signed-off-by: Paul Fulghum <[EMAIL PROTECTED]>
>
> > +++ b/drivers/usb/class/cdc-acm.c 2006-03-13 09:33:23.0 -06
is called after usb device is disconnected during use.
Signed-off-by: Paul Fulghum <[EMAIL PROTECTED]>
--- linux-2.6.16-rc5/drivers/usb/class/cdc-acm.c2006-02-27
14:40:21.0 -0600
+++ b/drivers/usb/class/cdc-acm.c 2006-03-13 10:14:15.0 -0600
@@ -517,6 +517,7 @@ st
Clear acm->tty on last close because the tty layer
releases the tty object at that point.
Signed-off-by: Paul Fulghum <[EMAIL PROTECTED]>
--- linux-2.6.16-rc5/drivers/usb/class/cdc-acm.c2006-02-27
14:40:21.0 -0600
+++ b/drivers/usb/class/cdc-acm.c 2006-03
Use a NULL device when calling tty_register_device to prevent
tty layer from creating sysfs entries that references the device.
This prevents oops in sysfs_hash_and_remove when tty_unregister_device
is called after usb device is disconnected during use.
Signed-off-by: Paul Fulghum <[EM
Bob Copeland wrote:
On 3/12/06, Paul Fulghum <[EMAIL PROTECTED]> wrote:
--- linux-2.6.16-rc5/drivers/usb/class/cdc-acm.c2006-02-27
09:24:29.0 -0600
+++ b/drivers/usb/class/cdc-acm.c 2006-03-12 10:22:21.0 -0600
@@ -980,7 +980,7 @@ skip_normal
On Sun, 2004-11-28 at 08:20 -0600, Paul Fulghum wrote:
> Pete Zaitcev wrote:
> > Not done #1: I asked Paul Fulghum to experiment with dropping a private
> > implementation of write callback from pl2303 and have Oleksy to test it.
Below is a patch that implements Pete's s
Pete Zaitcev wrote:
Not done #1: I asked Paul Fulghum to experiment with dropping a private
implementation of write callback from pl2303 and have Oleksy to test it.
I guess I have to do it myself some time.
When you originally did not respond to my last post of 11/2
(which you did yesterday) I
On Tue, 2004-10-19 at 19:35, David Brownell wrote:
> On Tuesday 19 October 2004 5:05 pm, Paul Fulghum wrote:
> > Or are you suggesting usb in addition to the prefix such as:
> >
> > snprintf(hcd->description, sizeof(hcd->description),
> > &qu
are number.
It is prefixed with "uhci_ucd" (driver->description).
Or are you suggesting usb in addition to the prefix such as:
snprintf(hcd->description, sizeof(hcd->description),
"%s usb%d", driver->description, hcd->self.busnum);
--
se more than just the name to match?
I bet Ingo knows best :-)
--
Paul Fulghum
[EMAIL PROTECTED]
---
This SF.net email is sponsored by: IT Product Guide on ITManagersJournal
Use IT products in your business? Tell us what you think of them.
e generic IRQ code should deal with
duplicates without generating an oops.
--
Paul Fulghum
[EMAIL PROTECTED]
---
This SF.net email is sponsored by: IT Product Guide on ITManagersJournal
Use IT products in your business? Tell us what you think of th
he hcd->description field.
Should it be unique for each device instance instead
of uniform for all device instances on a driver?
--
Paul Fulghum
[EMAIL PROTECTED]
---
This SF.net email is sponsored by: IT Product Guide on ITManagersJourn
ad of the list so the 2nd entry is found 1st.
It looks like the proc entry of the second device is removed
when calling free_irq() for the first device. When the
second device is removed, the action->dir has already
been freed causing the oops.
Comments?
--
Paul Fulghum
[EMAIL PROTECTED]
-
ve the facility for Wake-on-USB. (mine doesn't)
So no loss.
--
Paul Fulghum
[EMAIL PROTECTED]
---
SF.Net is sponsored by: Speed Start Your Linux Apps Now.
Build and deploy apps & Web services for Linux with
a free DVD software kit from
SI are motherboard devices hardwired
to the same PCI IRQ).
The behavior by the patched USB driver is OK
for this system, where all ports of the
controller are tied OC. You get one interrupt for
the bogus RD, then never resume.
--
Paul Fulghum
[EMAIL PRO
lugged in to the other port.
That's what I really wanted to test, but your machine can't do it.
Yup. Aitch-Pee technology at its best.
I'll let you know in a bit about the possible IRQ sharing.
--
Paul Fulghum
[EMAIL PROTECTED]
-
n
being not to put such a controller into suspend mode?
--
Paul Fulghum
[EMAIL PROTECTED]
---
The SF.Net email is sponsored by EclipseCon 2004
Premiere Conference on Open Tools Development and Integration
See the breadth of Eclipse ac
> Below is a patch to the current 2.6 driver that
> implements the other scheme. If you still have the
> computer you were using back then, could you give
> it a try?
I still have the machine. It may take a day
or two to setup the test.
I'll let you know what I find.
--
Pa
68 matches
Mail list logo