Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Oliver Neukum
Am Montag, 12. März 2007 17:50 schrieb Mark Lord:
> Mark Lord wrote:
> >
> > Okay, from that part (above), the problem is obvious:
> > in that the "MCT U232 converter now disconnected" appears,
> > and then we continue to try and call the driver's method.. Oops!
> > 
> > The hack patch below "fixes" this, but it really just hides whatever
> > the real problem underneath was:

static void destroy_serial(struct kref *kref):

/* the ports are cleaned up and released in port_release() */
for (i = 0; i < serial->num_ports; ++i)
if (serial->port[i]->dev.parent != NULL) {
device_unregister(>port[i]->dev);
serial->port[i] = NULL;
}

if (serial->type->shutdown)
serial->type->shutdown(serial);

IMHO shutdown() is using serial->port[] and bombs.
Could you reverse the order here?

Regards
Oliver
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Mark Lord

Mark Lord wrote:


Okay, from that part (above), the problem is obvious:
in that the "MCT U232 converter now disconnected" appears,
and then we continue to try and call the driver's method.. Oops!

The hack patch below "fixes" this, but it really just hides whatever
the real problem underneath was:

Signed-off-by:  Mark Lord <[EMAIL PROTECTED]>
---
--- linux/include/linux/usb/serial.h.orig2007-03-12 
12:18:48.0 -0400

+++ linux/include/linux/usb/serial.h2007-03-12 12:18:23.0 -0400
@@ -99,11 +99,19 @@
/* get and set the port private data pointer helper functions */
static inline void *usb_get_serial_port_data (struct usb_serial_port *port)
{
+if (!port) {
+WARN_ON(1);
+return NULL;
+}
return dev_get_drvdata(>dev);
}

static inline void usb_set_serial_port_data (struct usb_serial_port 
*port, void *data)

{
+if (!port) {
+WARN_ON(1);
+return;
+}
dev_set_drvdata(>dev, data);
}



Mmmm.. and that same hack also prevents the Oops seen
when I leave ckermit running during suspend/resume(RAM),
giving me this BUG() report now instead:

12:29:51 kernel: pl2303 ttyUSB0: pl2303 converter now disconnected from ttyUSB0
12:29:51 kernel: BUG: at include/linux/usb/serial.h:103 
usb_get_serial_port_data()
12:29:51 kernel:  [] pl2303_shutdown+0x95/0xb5 [pl2303]
12:29:51 kernel:  [] destroy_serial+0x89/0x122 [usbserial]
12:29:51 kernel:  [] destroy_serial+0x0/0x122 [usbserial]
12:29:51 kernel:  [kref_put+95/110] kref_put+0x5f/0x6e
12:29:51 kernel:  [tty_fasync+60/180] tty_fasync+0x3c/0xb4
12:29:51 kernel:  [release_dev+484/1496] release_dev+0x1e4/0x5d8
12:29:51 kernel:  [find_get_page+21/69] find_get_page+0x15/0x45
12:29:51 kernel:  [filemap_nopage+385/726] filemap_nopage+0x181/0x2d6
12:29:51 kernel:  [pty_write+43/53] pty_write+0x2b/0x35
12:29:51 kernel:  [getnstimeofday+48/216] getnstimeofday+0x30/0xd8
12:29:51 kernel:  [rb_insert_color+74/173] rb_insert_color+0x4a/0xad
12:29:51 kernel:  [enqueue_hrtimer+256/268] enqueue_hrtimer+0x100/0x10c
12:29:51 kernel:  [tty_release+15/24] tty_release+0xf/0x18
12:29:51 kernel:  [__fput+150/336] __fput+0x96/0x150
12:29:51 kernel:  [filp_close+79/86] filp_close+0x4f/0x56
12:29:51 kernel:  [sys_close+117/183] sys_close+0x75/0xb7
12:29:51 kernel:  [sysenter_past_esp+95/133] sysenter_past_esp+0x5f/0x85
12:29:51 kernel:  ===
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Mark Lord

Mark Lord wrote:

..and here is a retest with linux-2.6.21-rc3-git7
of simply plug/wait/unplug a USB hub/serial/parallel/PS2 gizmo.

I have two of these, with different serial port hardware in each,
and doing this with either of them produces an ooops.


...
12:12:06 kernel: mct_u232 ttyUSB2: MCT U232 converter now disconnected 
from ttyUSB2
12:12:06 kernel: BUG: unable to handle kernel NULL pointer dereference 
at virtual address 0168

12:12:06 kernel:  printing eip:
12:12:06 kernel: f8ca6542
12:12:06 kernel: *pde = 
12:12:06 kernel: Oops:  [#2]


Okay, from that part (above), the problem is obvious:
in that the "MCT U232 converter now disconnected" appears,
and then we continue to try and call the driver's method.. Oops!

The hack patch below "fixes" this, but it really just hides whatever
the real problem underneath was:

Signed-off-by:  Mark Lord <[EMAIL PROTECTED]>
---
--- linux/include/linux/usb/serial.h.orig   2007-03-12 12:18:48.0 
-0400
+++ linux/include/linux/usb/serial.h2007-03-12 12:18:23.0 -0400
@@ -99,11 +99,19 @@
/* get and set the port private data pointer helper functions */
static inline void *usb_get_serial_port_data (struct usb_serial_port *port)
{
+   if (!port) {
+   WARN_ON(1);
+   return NULL;
+   }
return dev_get_drvdata(>dev);
}

static inline void usb_set_serial_port_data (struct usb_serial_port *port, void 
*data)
{
+   if (!port) {
+   WARN_ON(1);
+   return;
+   }
dev_set_drvdata(>dev, data);
}

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Oliver Neukum
Am Montag, 12. März 2007 17:11 schrieb Mark Lord:
> Mark Lord wrote:
> > Greg KH wrote:
> >> Does userspace have it open when you suspend/resume?
> > 
> > For the ooops I just posted, yes, I may have left Linux ckermit
> > running on the serial port before the suspend.
> 
> Here's a retest under linux-2.6.21-rc3-git7,
> doing suspend/resume (RAM) with ckermit open on the serial port.

I am looking at it.

Regards
Oliver
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Mark Lord

Greg KH wrote:


thanks, but again, which usb-serial device do you have running here?


That's in the oops log:  pl2303 for the ckermit test.

For the other oops (plug/wait/unplug a multi-func hub), one of the hubs
also has a pl2303, the other has an mct_u232.

Cheers

-ml
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Greg KH
On Mon, Mar 12, 2007 at 12:03:27PM -0400, Mark Lord wrote:
> Greg KH wrote:
> >..
> >And all of those fixes Oliver is referring to should be in anything
> >older than 2.6.21-rc3-git6.
> 
> Did you mean, "anything *newer* than -git6" ??

Oops, yes, I ment "newer", sorry.

> This last crash was with -git4.  I'm building -git7 now.

Ah, ok, there's still hope, Oliver's patches didn't go into -git4.

> >Does userspace have it open when you suspend/resume?
> 
> For the ooops I just posted, yes, I may have left Linux ckermit
> running on the serial port before the suspend.
> 
> We shouldn't be oopsing regardless, but perhaps that could help
> narrow things down a bit.
> 
> I'll also retest the simple plug-unplug-oops crash reported earlier,
> once I have rc3-git7 up and running.

thanks, but again, which usb-serial device do you have running here?

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


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Mark Lord

..and here is a retest with linux-2.6.21-rc3-git7
of simply plug/wait/unplug a USB hub/serial/parallel/PS2 gizmo.

I have two of these, with different serial port hardware in each,
and doing this with either of them produces an ooops.

12:12:02 kernel: usb 4-2: new full speed USB device using uhci_hcd and address 2
12:12:02 kernel: usb 4-2: configuration #1 chosen from 1 choice
12:12:02 kernel: hub 4-2:1.0: USB hub found
12:12:02 kernel: hub 4-2:1.0: 5 ports detected
12:12:02 kernel: usb 4-2.3: new full speed USB device using uhci_hcd and 
address 3
12:12:02 kernel: usb 4-2.3: configuration #1 chosen from 1 choice
12:12:02 kernel: input: MTC PS/2 to USB converter as /class/input/input9
12:12:02 kernel: input: USB HID v1.10 Keyboard [MTC PS/2 to USB converter] on 
usb-:00:1d.3-2.3
12:12:02 kernel: input: MTC PS/2 to USB converter as /class/input/input10
12:12:02 kernel: input: USB HID v1.10 Mouse [MTC PS/2 to USB converter] on 
usb-:00:1d.3-2.3
12:12:02 kernel: usb 4-2.4: new full speed USB device using uhci_hcd and 
address 4
12:12:03 kernel: usb 4-2.4: configuration #1 chosen from 1 choice
12:12:03 kernel: drivers/usb/serial/usb-serial.c: USB Serial support registered 
for MCT U232
12:12:03 kernel: usb 4-2.5: new full speed USB device using uhci_hcd and 
address 5
12:12:03 kernel: usb 4-2.5: configuration #1 chosen from 1 choice
12:12:03 kernel: mct_u232 4-2.4:1.0: MCT U232 converter detected
12:12:03 kernel: usb 4-2.4: MCT U232 converter now attached to ttyUSB2
12:12:03 kernel: usbcore: registered new interface driver mct_u232
12:12:03 kernel: drivers/usb/serial/mct_u232.c: Magic Control Technology 
USB-RS232 converter driver z2.0
12:12:03 kernel: drivers/usb/class/usblp.c: usblp0: USB Bidirectional printer 
dev 5 if 0 alt 1 proto 2 vid 0x0711 pid 0x0300
12:12:03 kernel: usbcore: registered new interface driver usblp
12:12:03 kernel: drivers/usb/class/usblp.c: v0.13: USB Printer Device Class 
driver
12:12:06 kernel: usb 4-2: USB disconnect, address 2
12:12:06 kernel: usb 4-2.3: USB disconnect, address 3
12:12:06 kernel: usb 4-2.4: USB disconnect, address 4
12:12:06 kernel: mct_u232 ttyUSB2: MCT U232 converter now disconnected from 
ttyUSB2
12:12:06 kernel: BUG: unable to handle kernel NULL pointer dereference at 
virtual address 0168
12:12:06 kernel:  printing eip:
12:12:06 kernel: f8ca6542
12:12:06 kernel: *pde = 
12:12:06 kernel: Oops:  [#2]
12:12:06 kernel: PREEMPT 
12:12:06 kernel: Modules linked in: usblp mct_u232 radeon drm nfsd exportfs lockd nfs_acl sunrpc acpi_cpufreq cpufreq_ondemand cpufreq_powersave cpufreq_userspace cpufreq_stats freq_table cpufreq_conservative ac fan button thermal video battery container processor rfcomm l2cap bluetooth cfq_iosched deflate zlib_deflate twofish twofish_common serpent blowfish des cbc ecb blkcipher aes xcbc sha256 sha1 crypto_null af_key af_packet sbp2 usbhid hid pl2303 usbserial mousedev pcmcia snd_intel8x0 snd_ac97_codec ac97_bus snd_pcm_oss snd_mixer_oss snd_pcm snd_timer ipw2200 snd ieee80211 ieee80211_crypt ohci1394 serio_raw psmouse soundcore snd_page_alloc pcspkr sdhci firmware_class ahci ieee1394 yenta_socket rsrc_nonstatic pcmcia_core ehci_hcd mmc_core b44 mii uhci_hcd usbcore intel_agp agpgart sg sr_mod cdrom unix

12:12:06 kernel: CPU:0
12:12:06 kernel: EIP:0060:[]Not tainted VLI
12:12:06 kernel: EFLAGS: 00010206   (2.6.21-rc3-git7 #7)
12:12:06 kernel: EIP is at mct_u232_shutdown+0x39/0x65 [mct_u232]
12:12:06 kernel: eax: 0001   ebx: f7649cc0   ecx: c20df5c0   edx: 0078
12:12:06 kernel: esi:    edi: f7649cc0   ebp: f5c45c18   esp: f7437e38
12:12:06 kernel: ds: 007b   es: 007b   fs: 00d8  gs:   ss: 0068
12:12:06 kernel: Process khubd (pid: 1949, ti=f7436000 task=f7d8da10 
task.ti=f7436000)
12:12:06 kernel: Stack: f6c2c478  f6c2c478 f7649cc0 0001 f7649cc0 f8a29ca1 f7649cc0 
12:12:06 kernel:f7649cc0 f5c45c18 f88c5a43 f7649cf4 f8a29c18 c01ab1b5 0202  
12:12:06 kernel:f6c2c400 f7649cc0 f6c2c400 f7649cc4 f8a297f7 c01ab1b5 0001 f5abec67 
12:12:06 kernel: Call Trace:

12:12:06 kernel:  [] destroy_serial+0x89/0x122 [usbserial]
12:12:06 kernel:  [] usb_kill_urb+0x4e/0xcb [usbcore]
12:12:06 kernel:  [] destroy_serial+0x0/0x122 [usbserial]
12:12:06 kernel:  [kref_put+95/110] kref_put+0x5f/0x6e
12:12:06 kernel:  [] usb_serial_disconnect+0x81/0xaa [usbserial]
12:12:06 kernel:  [kref_put+95/110] kref_put+0x5f/0x6e
12:12:06 kernel:  [] usb_unbind_interface+0x2a/0x59 [usbcore]
12:12:06 kernel:  [__device_release_driver+110/139] 
__device_release_driver+0x6e/0x8b
12:12:06 kernel:  [device_release_driver+29/50] device_release_driver+0x1d/0x32
12:12:06 kernel:  [bus_remove_device+113/129] bus_remove_device+0x71/0x81
12:12:06 kernel:  [device_del+308/405] device_del+0x134/0x195
12:12:06 kernel:  [] usb_disable_device+0x5c/0xbb [usbcore]
12:12:06 kernel:  [] usb_disconnect+0x82/0x104 [usbcore]
12:12:06 kernel:  [] usb_disconnect+0x70/0x104 [usbcore]
12:12:06 kernel:  

Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Mark Lord

Mark Lord wrote:

Greg KH wrote:

Does userspace have it open when you suspend/resume?


For the ooops I just posted, yes, I may have left Linux ckermit
running on the serial port before the suspend.


Here's a retest under linux-2.6.21-rc3-git7,
doing suspend/resume (RAM) with ckermit open on the serial port.

(LONG, Ooops at the bottom).

12:06:54 kernel: Stopping tasks ... done.
12:06:54 kernel: Suspending console(s)
12:06:54 kernel: pl2303 5-5.3:1.0: no suspend for driver pl2303?
12:06:54 kernel: ACPI: PCI interrupt for device :03:01.2 disabled
12:06:54 kernel: ACPI: PCI interrupt for device :03:00.0 disabled
12:06:54 kernel: ACPI: PCI interrupt for device :00:1f.2 disabled
12:06:54 kernel: ACPI: PCI interrupt for device :00:1e.2 disabled
12:06:54 kernel: ACPI: PCI interrupt for device :00:1d.7 disabled
12:06:54 kernel: ACPI: PCI interrupt for device :00:1d.3 disabled
12:06:54 kernel: ACPI: PCI interrupt for device :00:1d.2 disabled
12:06:54 kernel: ACPI: PCI interrupt for device :00:1d.1 disabled
12:06:54 kernel: ACPI: PCI interrupt for device :00:1d.0 disabled
12:06:54 kernel: Intel machine check architecture supported.
12:06:54 kernel: Intel machine check reporting enabled on CPU#0.
12:06:54 kernel: Back to C!
12:06:54 kernel: PM: Writing back config space on device :00:01.0 at offset 
7 (was 2000d0d0, writing d0d0)
12:06:54 kernel: PM: Writing back config space on device :00:01.0 at offset 
3 (was 1, writing 10010)
12:06:54 kernel: PCI: Setting latency timer of device :00:01.0 to 64
12:06:54 kernel: ACPI: PCI Interrupt :00:1d.0[A] -> GSI 16 (level, low) -> 
IRQ 16
12:06:54 kernel: PCI: Setting latency timer of device :00:1d.0 to 64
12:06:54 kernel: usb usb1: root hub lost power or was reset
12:06:54 kernel: PCI: Enabling device :00:1d.1 ( -> 0001)
12:06:54 kernel: ACPI: PCI Interrupt :00:1d.1[B] -> GSI 17 (level, low) -> 
IRQ 18
12:06:54 kernel: PCI: Setting latency timer of device :00:1d.1 to 64
12:06:54 kernel: PM: Writing back config space on device :00:1d.1 at offset 
f (was 200, writing 20a)
12:06:54 kernel: PM: Writing back config space on device :00:1d.1 at offset 
8 (was 1, writing bf61)
12:06:54 kernel: usb usb2: root hub lost power or was reset
12:06:54 kernel: PCI: Enabling device :00:1d.2 ( -> 0001)
12:06:54 kernel: ACPI: PCI Interrupt :00:1d.2[C] -> GSI 18 (level, low) -> 
IRQ 19
12:06:54 kernel: PCI: Setting latency timer of device :00:1d.2 to 64
12:06:54 kernel: PM: Writing back config space on device :00:1d.2 at offset 
f (was 300, writing 309)
12:06:54 kernel: PM: Writing back config space on device :00:1d.2 at offset 
8 (was 1, writing bf41)
12:06:54 kernel: usb usb3: root hub lost power or was reset
12:06:54 kernel: PCI: Enabling device :00:1d.3 ( -> 0001)
12:06:54 kernel: ACPI: PCI Interrupt :00:1d.3[D] -> GSI 19 (level, low) -> 
IRQ 17
12:06:54 kernel: PCI: Setting latency timer of device :00:1d.3 to 64
12:06:54 kernel: PM: Writing back config space on device :00:1d.3 at offset 
f (was 400, writing 407)
12:06:54 kernel: PM: Writing back config space on device :00:1d.3 at offset 
8 (was 1, writing bf21)
12:06:54 kernel: usb usb4: root hub lost power or was reset
12:06:54 kernel: ACPI: PCI Interrupt :00:1d.7[A] -> GSI 16 (level, low) -> 
IRQ 16
12:06:54 kernel: PCI: Setting latency timer of device :00:1d.7 to 64
12:06:54 kernel: usb usb5: root hub lost power or was reset
12:06:54 kernel: ehci_hcd :00:1d.7: debug port 1
12:06:54 kernel: PCI: cache line size of 32 is not supported by device 
:00:1d.7
12:06:54 kernel: PM: Writing back config space on device :00:1e.0 at offset 
9 (was 10001, writing 8bf18801)
12:06:54 NetworkManager: ^ISWITCH: terminating current connection 'eth0' because it's no longer valid. 
12:06:54 NetworkManager: ^IDeactivating device eth0. 
12:06:54 kernel: PM: Writing back config space on device :00:1e.0 at offset 8 (was 0, writing dfc0dfc0)

12:06:54 kernel: PM: Writing back config space on device :00:1e.0 at offset 
7 (was 2280e0f0, writing 22802020)
12:06:54 kernel: PM: Writing back config space on device :00:1e.0 at offset 
6 (was 20030300, writing 20070300)
12:06:54 kernel: PM: Writing back config space on device :00:1e.0 at offset 
1 (was 15, writing 100107)
12:06:54 kernel: PCI: Setting latency timer of device :00:1e.0 to 64
12:06:54 kernel: PM: Writing back config space on device :00:1e.2 at offset 
f (was 100, writing 10b)
12:06:54 kernel: PM: Writing back config space on device :00:1e.2 at offset 
7 (was 0, writing dd00)
12:06:54 kernel: PM: Writing back config space on device :00:1e.2 at offset 
6 (was 0, writing de00)
12:06:54 kernel: PM: Writing back config space on device :00:1e.2 at offset 
5 (was 1, writing ec41)
12:06:54 kernel: PM: Writing back config space on device :00:1e.2 at offset 
4 (was 1, writing ed01)
12:06:54 kernel: PM: Writing 

Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Mark Lord

Greg KH wrote:

..
And all of those fixes Oliver is referring to should be in anything
older than 2.6.21-rc3-git6.


Did you mean, "anything *newer* than -git6" ??

This last crash was with -git4.  I'm building -git7 now.


Does userspace have it open when you suspend/resume?


For the ooops I just posted, yes, I may have left Linux ckermit
running on the serial port before the suspend.

We shouldn't be oopsing regardless, but perhaps that could help
narrow things down a bit.

I'll also retest the simple plug-unplug-oops crash reported earlier,
once I have rc3-git7 up and running.

Cheers
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Oliver Neukum
Am Montag, 12. März 2007 16:29 schrieb Greg KH:
> On Mon, Mar 12, 2007 at 11:13:59AM -0400, Mark Lord wrote:
> > Oliver Neukum wrote:
> > >Am Montag, 12. M??rz 2007 15:56 schrieb Mark Lord:
> > >>Still no improvement on the b0rken usb-serial resume support in -rc*.
> > >
> > >Have you applied the fixes in Greg's current tree?
> > 
> > I don't know anything about any "current tree"
> > other than the 2.6.21-rc3-git* on kernel.org.
> 
> And all of those fixes Oliver is referring to should be in anything
> older than 2.6.21-rc3-git6.  So we have a different problem here than
> what people were seeing before.

Older than 2.6.21-rc3-git6? Did you throw them out? Why?

Regards
Oliver
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Greg KH
On Mon, Mar 12, 2007 at 10:56:45AM -0400, Mark Lord wrote:
> Still no improvement on the b0rken usb-serial resume support in -rc*.
> 
> Today I got this ooops on resume from RAM.
> Slightly tainted kernel this time (vmware), but not previously
> on similar crashes.  I cannot yet get it to "crash on demaind",
> so you'll just have to live with it this time.
> 
> All USB was dead until after a reboot this time.

What type of usb-serial device do you have plugged in?
Does userspace have it open when you suspend/resume?
Is vmware accessing the device?

thanks,

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


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Greg KH
On Mon, Mar 12, 2007 at 11:13:59AM -0400, Mark Lord wrote:
> Oliver Neukum wrote:
> >Am Montag, 12. M??rz 2007 15:56 schrieb Mark Lord:
> >>Still no improvement on the b0rken usb-serial resume support in -rc*.
> >
> >Have you applied the fixes in Greg's current tree?
> 
> I don't know anything about any "current tree"
> other than the 2.6.21-rc3-git* on kernel.org.

And all of those fixes Oliver is referring to should be in anything
older than 2.6.21-rc3-git6.  So we have a different problem here than
what people were seeing before.

> Greg hasn't suggested anything for this yet,
> mostly because he's been busy keeping the 2.6.20.xx
> point releases sane.

No, I didn't suggest anything because I thought it was going to be fixed
with Oliver's patches :(

thanks,

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


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Oliver Neukum
Am Montag, 12. März 2007 16:13 schrieb Mark Lord:
> Oliver Neukum wrote:
> > Am Montag, 12. März 2007 15:56 schrieb Mark Lord:
> >> Still no improvement on the b0rken usb-serial resume support in -rc*.
> > 
> > Have you applied the fixes in Greg's current tree?
> 
> I don't know anything about any "current tree"
> other than the 2.6.21-rc3-git* on kernel.org.
> 
> Greg hasn't suggested anything for this yet,
> mostly because he's been busy keeping the 2.6.20.xx
> point releases sane.

Sorry, try these in the chronological order the names imply.
If it still happens, let me know.

Regards
Oliver
--- a/drivers/usb/serial/usb-serial.c	2007-03-05 14:43:20.0 +0100
+++ b/drivers/usb/serial/usb-serial.c	2007-03-05 15:18:53.0 +0100
@@ -99,9 +99,12 @@
 			continue;
 
 		*minor = i;
+		j = 0;
 		dbg("%s - minor base = %d", __FUNCTION__, *minor);
-		for (i = *minor; (i < (*minor + num_ports)) && (i < SERIAL_TTY_MINORS); ++i)
+		for (i = *minor; (i < (*minor + num_ports)) && (i < SERIAL_TTY_MINORS); ++i) {
 			serial_table[i] = serial;
+			serial->port[j++]->number = i;
+		}
 		spin_unlock(_lock);
 		return serial;
 	}
@@ -848,7 +851,6 @@
 		port = kzalloc(sizeof(struct usb_serial_port), GFP_KERNEL);
 		if (!port)
 			goto probe_error;
-		port->number = i + serial->minor;
 		port->serial = serial;
 		spin_lock_init(>lock);
 		mutex_init(>mutex);
@@ -1035,9 +1037,6 @@
 		kfree(port->interrupt_out_buffer);
 	}
 
-	/* return the minor range that this device had */
-	return_serial (serial);
-
 	/* free up any memory that we allocated */
 	for (i = 0; i < serial->num_port_pointers; ++i)
 		kfree(serial->port[i]);
--- linux-2.6.21-rc1/drivers/usb/serial/usb-serial.c.alt	2007-02-21 05:32:30.0 +0100
+++ linux-2.6.21-rc1/drivers/usb/serial/usb-serial.c	2007-02-26 15:32:50.0 +0100
@@ -826,7 +826,6 @@
 			num_ports = type->num_ports;
 	}
 
-	serial->minor = minor;
 	serial->num_ports = num_ports;
 	serial->num_bulk_in = num_bulk_in;
 	serial->num_bulk_out = num_bulk_out;
@@ -980,6 +979,7 @@
 		dev_err(>dev, "No more free serial devices\n");
 		goto probe_error;
 	}
+	serial->minor = minor;
 
 	/* register all of the individual ports with the driver core */
 	for (i = 0; i < num_ports; ++i) {


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Mark Lord

Oliver Neukum wrote:

Am Montag, 12. März 2007 15:56 schrieb Mark Lord:

Still no improvement on the b0rken usb-serial resume support in -rc*.


Have you applied the fixes in Greg's current tree?


I don't know anything about any "current tree"
other than the 2.6.21-rc3-git* on kernel.org.

Greg hasn't suggested anything for this yet,
mostly because he's been busy keeping the 2.6.20.xx
point releases sane.

Cheers
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Oliver Neukum
Am Montag, 12. März 2007 15:56 schrieb Mark Lord:
> Still no improvement on the b0rken usb-serial resume support in -rc*.

Have you applied the fixes in Greg's current tree?

Regards
Oliver

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Mark Lord

Still no improvement on the b0rken usb-serial resume support in -rc*.

Today I got this ooops on resume from RAM.
Slightly tainted kernel this time (vmware), but not previously
on similar crashes.  I cannot yet get it to "crash on demaind",
so you'll just have to live with it this time.

All USB was dead until after a reboot this time.

pl2303 5-6.3:1.0: PM: resume from 2, parent 5-6.3 still 2
usbdev5.23_ep81: PM: resume from 0, parent 5-6.3:1.0 still 2
usbdev5.23_ep02: PM: resume from 0, parent 5-6.3:1.0 still 2
usbdev5.23_ep83: PM: resume from 0, parent 5-6.3:1.0 still 2
usbdev5.23: PM: resume from 0, parent 5-6.3 still 2
usb 5-6.4: PM: resume from 2, parent 5-6 still 2
usbdev5.24_ep00: PM: resume from 0, parent 5-6.4 still 2
usbhid 5-6.4:1.0: PM: resume from 2, parent 5-6.4 still 2
usbdev5.24_ep81: PM: resume from 0, parent 5-6.4:1.0 still 2
usbdev5.24: PM: resume from 0, parent 5-6.4 still 2
Restarting tasks ... done.
ata1.00: configured for UDMA/100
SCSI device sda: 312581808 512-byte hdwr sectors (160042 MB)
sda: Write Protect is off
sda: Mode Sense: 00 3a 00 00
SCSI device sda: write cache: enabled, read cache: enabled, doesn't support DPO 
or FUA
usb 5-6: USB disconnect, address 22
usb 5-6.3: USB disconnect, address 23
BUG: unable to handle kernel paging request at virtual address fffb
printing eip:
c01823cb
*pde = 2067
*pte = 
Oops:  [#1]
PREEMPT 
Modules linked in: hci_usb radeon drm vmnet(P) vmmon(P) nfsd exportfs lockd nfs_acl sunrpc acpi_cpufreq cpufreq_ondemand cpufreq_powersave cpufreq_userspace cpufreq_stats freq_table cpufreq_conservative ac fan button thermal video battery container processor rfcomm l2cap bluetooth cfq_iosched deflate zlib_deflate twofish twofish_common serpent blowfish des cbc ecb blkcipher aes xcbc sha256 sha1 crypto_null af_key af_packet sbp2 usbhid hid pl2303 usbserial pcmcia mousedev snd_intel8x0 snd_ac97_codec ac97_bus snd_pcm_oss snd_mixer_oss ipw2200 snd_pcm ieee80211 ieee80211_crypt snd_timer ohci1394 psmouse firmware_class sdhci mmc_core yenta_socket rsrc_nonstatic ieee1394 serio_raw b44 mii pcmcia_core snd pcspkr soundcore ehci_hcd snd_page_alloc uhci_hcd ahci usbcore intel_agp agpgart sg sr_mod cdrom unix

CPU:0
EIP:0060:[]Tainted: P   VLI
EFLAGS: 00010286   (2.6.21-rc3-git4 #5)
EIP is at sysfs_hash_and_remove+0x18/0x111
eax: fff3   ebx: c030b3d4   ecx:    edx: fff3
esi: fff3   edi: fff3   ebp: f62af618   esp: f74e5dec
ds: 007b   es: 007b   fs: 00d8  gs:   ss: 0068
Process khubd (pid: 1955, ti=f74e4000 task=f74d6a50 task.ti=f74e4000)
Stack: c02d15d8 fff3 c0158595 c030b3d4 fff3 fff3 f62af618 c01843d9 
  c030b3c8 f411f8e0 c0184422 f411f878 0001 f2ca4880 c02005ca f411f8e0 
  c01fba1f f411f878 0001 f2ca4880  c01fba4e f2ca4880 f8a15d0e 
Call Trace:

[] lookup_one_len+0x4d/0x5c
[] remove_files+0x15/0x1e
[] sysfs_remove_group+0x40/0x56
[] device_pm_remove+0x1d/0x5a
[] device_del+0x167/0x18e
[] device_unregister+0x8/0x10
[] destroy_serial+0x80/0xcc [usbserial]
[] destroy_serial+0x0/0xcc [usbserial]
[] kref_put+0x5f/0x6e
[] usb_serial_disconnect+0x81/0xaa [usbserial]
[] kref_put+0x5f/0x6e
[] usb_unbind_interface+0x2a/0x59 [usbcore]
[] __device_release_driver+0x6e/0x8b
[] device_release_driver+0x1d/0x32
[] bus_remove_device+0x71/0x81
[] device_del+0x134/0x18e
[] usb_disable_device+0x5c/0xbb [usbcore]
[] usb_disconnect+0x82/0x104 [usbcore]
[] usb_disconnect+0x70/0x104 [usbcore]
[] hub_thread+0x30b/0x9db [usbcore]
[] schedule+0x47c/0x51f
[] autoremove_wake_function+0x0/0x33
[] hub_thread+0x0/0x9db [usbcore]
[] kthread+0x9b/0xbf
[] kthread+0x0/0xbf
[] kernel_thread_helper+0x7/0x10
===
Code: 8b 40 08 a8 08 74 08 5b 5e 5f e9 6c ac 0f 00 5b 5e 5f c3 55 57 56 53 83 ec 0c 85 c0 89 44 24 04 89 14 24 0f 84 ed 00 00 00 89 c2 <8b> 40 08 85 c0 0f 84 e0 00 00 00 8b 52 50 83 c0 68 89 54 24 08 
EIP: [] sysfs_hash_and_remove+0x18/0x111 SS:ESP 0068:f74e5dec

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Mark Lord

Still no improvement on the b0rken usb-serial resume support in -rc*.

Today I got this ooops on resume from RAM.
Slightly tainted kernel this time (vmware), but not previously
on similar crashes.  I cannot yet get it to crash on demaind,
so you'll just have to live with it this time.

All USB was dead until after a reboot this time.

pl2303 5-6.3:1.0: PM: resume from 2, parent 5-6.3 still 2
usbdev5.23_ep81: PM: resume from 0, parent 5-6.3:1.0 still 2
usbdev5.23_ep02: PM: resume from 0, parent 5-6.3:1.0 still 2
usbdev5.23_ep83: PM: resume from 0, parent 5-6.3:1.0 still 2
usbdev5.23: PM: resume from 0, parent 5-6.3 still 2
usb 5-6.4: PM: resume from 2, parent 5-6 still 2
usbdev5.24_ep00: PM: resume from 0, parent 5-6.4 still 2
usbhid 5-6.4:1.0: PM: resume from 2, parent 5-6.4 still 2
usbdev5.24_ep81: PM: resume from 0, parent 5-6.4:1.0 still 2
usbdev5.24: PM: resume from 0, parent 5-6.4 still 2
Restarting tasks ... done.
ata1.00: configured for UDMA/100
SCSI device sda: 312581808 512-byte hdwr sectors (160042 MB)
sda: Write Protect is off
sda: Mode Sense: 00 3a 00 00
SCSI device sda: write cache: enabled, read cache: enabled, doesn't support DPO 
or FUA
usb 5-6: USB disconnect, address 22
usb 5-6.3: USB disconnect, address 23
BUG: unable to handle kernel paging request at virtual address fffb
printing eip:
c01823cb
*pde = 2067
*pte = 
Oops:  [#1]
PREEMPT 
Modules linked in: hci_usb radeon drm vmnet(P) vmmon(P) nfsd exportfs lockd nfs_acl sunrpc acpi_cpufreq cpufreq_ondemand cpufreq_powersave cpufreq_userspace cpufreq_stats freq_table cpufreq_conservative ac fan button thermal video battery container processor rfcomm l2cap bluetooth cfq_iosched deflate zlib_deflate twofish twofish_common serpent blowfish des cbc ecb blkcipher aes xcbc sha256 sha1 crypto_null af_key af_packet sbp2 usbhid hid pl2303 usbserial pcmcia mousedev snd_intel8x0 snd_ac97_codec ac97_bus snd_pcm_oss snd_mixer_oss ipw2200 snd_pcm ieee80211 ieee80211_crypt snd_timer ohci1394 psmouse firmware_class sdhci mmc_core yenta_socket rsrc_nonstatic ieee1394 serio_raw b44 mii pcmcia_core snd pcspkr soundcore ehci_hcd snd_page_alloc uhci_hcd ahci usbcore intel_agp agpgart sg sr_mod cdrom unix

CPU:0
EIP:0060:[c01823cb]Tainted: P   VLI
EFLAGS: 00010286   (2.6.21-rc3-git4 #5)
EIP is at sysfs_hash_and_remove+0x18/0x111
eax: fff3   ebx: c030b3d4   ecx:    edx: fff3
esi: fff3   edi: fff3   ebp: f62af618   esp: f74e5dec
ds: 007b   es: 007b   fs: 00d8  gs:   ss: 0068
Process khubd (pid: 1955, ti=f74e4000 task=f74d6a50 task.ti=f74e4000)
Stack: c02d15d8 fff3 c0158595 c030b3d4 fff3 fff3 f62af618 c01843d9 
  c030b3c8 f411f8e0 c0184422 f411f878 0001 f2ca4880 c02005ca f411f8e0 
  c01fba1f f411f878 0001 f2ca4880  c01fba4e f2ca4880 f8a15d0e 
Call Trace:

[c0158595] lookup_one_len+0x4d/0x5c
[c01843d9] remove_files+0x15/0x1e
[c0184422] sysfs_remove_group+0x40/0x56
[c02005ca] device_pm_remove+0x1d/0x5a
[c01fba1f] device_del+0x167/0x18e
[c01fba4e] device_unregister+0x8/0x10
[f8a15d0e] destroy_serial+0x80/0xcc [usbserial]
[f8a15c8e] destroy_serial+0x0/0xcc [usbserial]
[c01ab1bd] kref_put+0x5f/0x6e
[f8a157f7] usb_serial_disconnect+0x81/0xaa [usbserial]
[c01ab1bd] kref_put+0x5f/0x6e
[f88c7cc8] usb_unbind_interface+0x2a/0x59 [usbcore]
[c01fd1a2] __device_release_driver+0x6e/0x8b
[c01fd444] device_release_driver+0x1d/0x32
[c01fcbd2] bus_remove_device+0x71/0x81
[c01fb9ec] device_del+0x134/0x18e
[f88c654c] usb_disable_device+0x5c/0xbb [usbcore]
[f88c2fdb] usb_disconnect+0x82/0x104 [usbcore]
[f88c2fc9] usb_disconnect+0x70/0x104 [usbcore]
[f88c39c8] hub_thread+0x30b/0x9db [usbcore]
[c027ce7a] schedule+0x47c/0x51f
[c0126a84] autoremove_wake_function+0x0/0x33
[f88c36bd] hub_thread+0x0/0x9db [usbcore]
[c01269ba] kthread+0x9b/0xbf
[c012691f] kthread+0x0/0xbf
[c0104733] kernel_thread_helper+0x7/0x10
===
Code: 8b 40 08 a8 08 74 08 5b 5e 5f e9 6c ac 0f 00 5b 5e 5f c3 55 57 56 53 83 ec 0c 85 c0 89 44 24 04 89 14 24 0f 84 ed 00 00 00 89 c2 8b 40 08 85 c0 0f 84 e0 00 00 00 8b 52 50 83 c0 68 89 54 24 08 
EIP: [c01823cb] sysfs_hash_and_remove+0x18/0x111 SS:ESP 0068:f74e5dec

-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Oliver Neukum
Am Montag, 12. März 2007 15:56 schrieb Mark Lord:
 Still no improvement on the b0rken usb-serial resume support in -rc*.

Have you applied the fixes in Greg's current tree?

Regards
Oliver

-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Mark Lord

Oliver Neukum wrote:

Am Montag, 12. März 2007 15:56 schrieb Mark Lord:

Still no improvement on the b0rken usb-serial resume support in -rc*.


Have you applied the fixes in Greg's current tree?


I don't know anything about any current tree
other than the 2.6.21-rc3-git* on kernel.org.

Greg hasn't suggested anything for this yet,
mostly because he's been busy keeping the 2.6.20.xx
point releases sane.

Cheers
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Oliver Neukum
Am Montag, 12. März 2007 16:13 schrieb Mark Lord:
 Oliver Neukum wrote:
  Am Montag, 12. März 2007 15:56 schrieb Mark Lord:
  Still no improvement on the b0rken usb-serial resume support in -rc*.
  
  Have you applied the fixes in Greg's current tree?
 
 I don't know anything about any current tree
 other than the 2.6.21-rc3-git* on kernel.org.
 
 Greg hasn't suggested anything for this yet,
 mostly because he's been busy keeping the 2.6.20.xx
 point releases sane.

Sorry, try these in the chronological order the names imply.
If it still happens, let me know.

Regards
Oliver
--- a/drivers/usb/serial/usb-serial.c	2007-03-05 14:43:20.0 +0100
+++ b/drivers/usb/serial/usb-serial.c	2007-03-05 15:18:53.0 +0100
@@ -99,9 +99,12 @@
 			continue;
 
 		*minor = i;
+		j = 0;
 		dbg(%s - minor base = %d, __FUNCTION__, *minor);
-		for (i = *minor; (i  (*minor + num_ports))  (i  SERIAL_TTY_MINORS); ++i)
+		for (i = *minor; (i  (*minor + num_ports))  (i  SERIAL_TTY_MINORS); ++i) {
 			serial_table[i] = serial;
+			serial-port[j++]-number = i;
+		}
 		spin_unlock(table_lock);
 		return serial;
 	}
@@ -848,7 +851,6 @@
 		port = kzalloc(sizeof(struct usb_serial_port), GFP_KERNEL);
 		if (!port)
 			goto probe_error;
-		port-number = i + serial-minor;
 		port-serial = serial;
 		spin_lock_init(port-lock);
 		mutex_init(port-mutex);
@@ -1035,9 +1037,6 @@
 		kfree(port-interrupt_out_buffer);
 	}
 
-	/* return the minor range that this device had */
-	return_serial (serial);
-
 	/* free up any memory that we allocated */
 	for (i = 0; i  serial-num_port_pointers; ++i)
 		kfree(serial-port[i]);
--- linux-2.6.21-rc1/drivers/usb/serial/usb-serial.c.alt	2007-02-21 05:32:30.0 +0100
+++ linux-2.6.21-rc1/drivers/usb/serial/usb-serial.c	2007-02-26 15:32:50.0 +0100
@@ -826,7 +826,6 @@
 			num_ports = type-num_ports;
 	}
 
-	serial-minor = minor;
 	serial-num_ports = num_ports;
 	serial-num_bulk_in = num_bulk_in;
 	serial-num_bulk_out = num_bulk_out;
@@ -980,6 +979,7 @@
 		dev_err(interface-dev, No more free serial devices\n);
 		goto probe_error;
 	}
+	serial-minor = minor;
 
 	/* register all of the individual ports with the driver core */
 	for (i = 0; i  num_ports; ++i) {


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Greg KH
On Mon, Mar 12, 2007 at 11:13:59AM -0400, Mark Lord wrote:
 Oliver Neukum wrote:
 Am Montag, 12. M??rz 2007 15:56 schrieb Mark Lord:
 Still no improvement on the b0rken usb-serial resume support in -rc*.
 
 Have you applied the fixes in Greg's current tree?
 
 I don't know anything about any current tree
 other than the 2.6.21-rc3-git* on kernel.org.

And all of those fixes Oliver is referring to should be in anything
older than 2.6.21-rc3-git6.  So we have a different problem here than
what people were seeing before.

 Greg hasn't suggested anything for this yet,
 mostly because he's been busy keeping the 2.6.20.xx
 point releases sane.

No, I didn't suggest anything because I thought it was going to be fixed
with Oliver's patches :(

thanks,

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


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Greg KH
On Mon, Mar 12, 2007 at 10:56:45AM -0400, Mark Lord wrote:
 Still no improvement on the b0rken usb-serial resume support in -rc*.
 
 Today I got this ooops on resume from RAM.
 Slightly tainted kernel this time (vmware), but not previously
 on similar crashes.  I cannot yet get it to crash on demaind,
 so you'll just have to live with it this time.
 
 All USB was dead until after a reboot this time.

What type of usb-serial device do you have plugged in?
Does userspace have it open when you suspend/resume?
Is vmware accessing the device?

thanks,

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


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Oliver Neukum
Am Montag, 12. März 2007 16:29 schrieb Greg KH:
 On Mon, Mar 12, 2007 at 11:13:59AM -0400, Mark Lord wrote:
  Oliver Neukum wrote:
  Am Montag, 12. M??rz 2007 15:56 schrieb Mark Lord:
  Still no improvement on the b0rken usb-serial resume support in -rc*.
  
  Have you applied the fixes in Greg's current tree?
  
  I don't know anything about any current tree
  other than the 2.6.21-rc3-git* on kernel.org.
 
 And all of those fixes Oliver is referring to should be in anything
 older than 2.6.21-rc3-git6.  So we have a different problem here than
 what people were seeing before.

Older than 2.6.21-rc3-git6? Did you throw them out? Why?

Regards
Oliver
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Mark Lord

Greg KH wrote:

..
And all of those fixes Oliver is referring to should be in anything
older than 2.6.21-rc3-git6.


Did you mean, anything *newer* than -git6 ??

This last crash was with -git4.  I'm building -git7 now.


Does userspace have it open when you suspend/resume?


For the ooops I just posted, yes, I may have left Linux ckermit
running on the serial port before the suspend.

We shouldn't be oopsing regardless, but perhaps that could help
narrow things down a bit.

I'll also retest the simple plug-unplug-oops crash reported earlier,
once I have rc3-git7 up and running.

Cheers
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Mark Lord

Mark Lord wrote:

Greg KH wrote:

Does userspace have it open when you suspend/resume?


For the ooops I just posted, yes, I may have left Linux ckermit
running on the serial port before the suspend.


Here's a retest under linux-2.6.21-rc3-git7,
doing suspend/resume (RAM) with ckermit open on the serial port.

(LONG, Ooops at the bottom).

12:06:54 kernel: Stopping tasks ... done.
12:06:54 kernel: Suspending console(s)
12:06:54 kernel: pl2303 5-5.3:1.0: no suspend for driver pl2303?
12:06:54 kernel: ACPI: PCI interrupt for device :03:01.2 disabled
12:06:54 kernel: ACPI: PCI interrupt for device :03:00.0 disabled
12:06:54 kernel: ACPI: PCI interrupt for device :00:1f.2 disabled
12:06:54 kernel: ACPI: PCI interrupt for device :00:1e.2 disabled
12:06:54 kernel: ACPI: PCI interrupt for device :00:1d.7 disabled
12:06:54 kernel: ACPI: PCI interrupt for device :00:1d.3 disabled
12:06:54 kernel: ACPI: PCI interrupt for device :00:1d.2 disabled
12:06:54 kernel: ACPI: PCI interrupt for device :00:1d.1 disabled
12:06:54 kernel: ACPI: PCI interrupt for device :00:1d.0 disabled
12:06:54 kernel: Intel machine check architecture supported.
12:06:54 kernel: Intel machine check reporting enabled on CPU#0.
12:06:54 kernel: Back to C!
12:06:54 kernel: PM: Writing back config space on device :00:01.0 at offset 
7 (was 2000d0d0, writing d0d0)
12:06:54 kernel: PM: Writing back config space on device :00:01.0 at offset 
3 (was 1, writing 10010)
12:06:54 kernel: PCI: Setting latency timer of device :00:01.0 to 64
12:06:54 kernel: ACPI: PCI Interrupt :00:1d.0[A] - GSI 16 (level, low) - 
IRQ 16
12:06:54 kernel: PCI: Setting latency timer of device :00:1d.0 to 64
12:06:54 kernel: usb usb1: root hub lost power or was reset
12:06:54 kernel: PCI: Enabling device :00:1d.1 ( - 0001)
12:06:54 kernel: ACPI: PCI Interrupt :00:1d.1[B] - GSI 17 (level, low) - 
IRQ 18
12:06:54 kernel: PCI: Setting latency timer of device :00:1d.1 to 64
12:06:54 kernel: PM: Writing back config space on device :00:1d.1 at offset 
f (was 200, writing 20a)
12:06:54 kernel: PM: Writing back config space on device :00:1d.1 at offset 
8 (was 1, writing bf61)
12:06:54 kernel: usb usb2: root hub lost power or was reset
12:06:54 kernel: PCI: Enabling device :00:1d.2 ( - 0001)
12:06:54 kernel: ACPI: PCI Interrupt :00:1d.2[C] - GSI 18 (level, low) - 
IRQ 19
12:06:54 kernel: PCI: Setting latency timer of device :00:1d.2 to 64
12:06:54 kernel: PM: Writing back config space on device :00:1d.2 at offset 
f (was 300, writing 309)
12:06:54 kernel: PM: Writing back config space on device :00:1d.2 at offset 
8 (was 1, writing bf41)
12:06:54 kernel: usb usb3: root hub lost power or was reset
12:06:54 kernel: PCI: Enabling device :00:1d.3 ( - 0001)
12:06:54 kernel: ACPI: PCI Interrupt :00:1d.3[D] - GSI 19 (level, low) - 
IRQ 17
12:06:54 kernel: PCI: Setting latency timer of device :00:1d.3 to 64
12:06:54 kernel: PM: Writing back config space on device :00:1d.3 at offset 
f (was 400, writing 407)
12:06:54 kernel: PM: Writing back config space on device :00:1d.3 at offset 
8 (was 1, writing bf21)
12:06:54 kernel: usb usb4: root hub lost power or was reset
12:06:54 kernel: ACPI: PCI Interrupt :00:1d.7[A] - GSI 16 (level, low) - 
IRQ 16
12:06:54 kernel: PCI: Setting latency timer of device :00:1d.7 to 64
12:06:54 kernel: usb usb5: root hub lost power or was reset
12:06:54 kernel: ehci_hcd :00:1d.7: debug port 1
12:06:54 kernel: PCI: cache line size of 32 is not supported by device 
:00:1d.7
12:06:54 kernel: PM: Writing back config space on device :00:1e.0 at offset 
9 (was 10001, writing 8bf18801)
12:06:54 NetworkManager: information^ISWITCH: terminating current connection 'eth0' because it's no longer valid. 
12:06:54 NetworkManager: information^IDeactivating device eth0. 
12:06:54 kernel: PM: Writing back config space on device :00:1e.0 at offset 8 (was 0, writing dfc0dfc0)

12:06:54 kernel: PM: Writing back config space on device :00:1e.0 at offset 
7 (was 2280e0f0, writing 22802020)
12:06:54 kernel: PM: Writing back config space on device :00:1e.0 at offset 
6 (was 20030300, writing 20070300)
12:06:54 kernel: PM: Writing back config space on device :00:1e.0 at offset 
1 (was 15, writing 100107)
12:06:54 kernel: PCI: Setting latency timer of device :00:1e.0 to 64
12:06:54 kernel: PM: Writing back config space on device :00:1e.2 at offset 
f (was 100, writing 10b)
12:06:54 kernel: PM: Writing back config space on device :00:1e.2 at offset 
7 (was 0, writing dd00)
12:06:54 kernel: PM: Writing back config space on device :00:1e.2 at offset 
6 (was 0, writing de00)
12:06:54 kernel: PM: Writing back config space on device :00:1e.2 at offset 
5 (was 1, writing ec41)
12:06:54 kernel: PM: Writing back config space on device :00:1e.2 at offset 
4 (was 1, writing ed01)
12:06:54 kernel: PM: 

Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Greg KH
On Mon, Mar 12, 2007 at 12:03:27PM -0400, Mark Lord wrote:
 Greg KH wrote:
 ..
 And all of those fixes Oliver is referring to should be in anything
 older than 2.6.21-rc3-git6.
 
 Did you mean, anything *newer* than -git6 ??

Oops, yes, I ment newer, sorry.

 This last crash was with -git4.  I'm building -git7 now.

Ah, ok, there's still hope, Oliver's patches didn't go into -git4.

 Does userspace have it open when you suspend/resume?
 
 For the ooops I just posted, yes, I may have left Linux ckermit
 running on the serial port before the suspend.
 
 We shouldn't be oopsing regardless, but perhaps that could help
 narrow things down a bit.
 
 I'll also retest the simple plug-unplug-oops crash reported earlier,
 once I have rc3-git7 up and running.

thanks, but again, which usb-serial device do you have running here?

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


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Mark Lord

..and here is a retest with linux-2.6.21-rc3-git7
of simply plug/wait/unplug a USB hub/serial/parallel/PS2 gizmo.

I have two of these, with different serial port hardware in each,
and doing this with either of them produces an ooops.

12:12:02 kernel: usb 4-2: new full speed USB device using uhci_hcd and address 2
12:12:02 kernel: usb 4-2: configuration #1 chosen from 1 choice
12:12:02 kernel: hub 4-2:1.0: USB hub found
12:12:02 kernel: hub 4-2:1.0: 5 ports detected
12:12:02 kernel: usb 4-2.3: new full speed USB device using uhci_hcd and 
address 3
12:12:02 kernel: usb 4-2.3: configuration #1 chosen from 1 choice
12:12:02 kernel: input: MTC PS/2 to USB converter as /class/input/input9
12:12:02 kernel: input: USB HID v1.10 Keyboard [MTC PS/2 to USB converter] on 
usb-:00:1d.3-2.3
12:12:02 kernel: input: MTC PS/2 to USB converter as /class/input/input10
12:12:02 kernel: input: USB HID v1.10 Mouse [MTC PS/2 to USB converter] on 
usb-:00:1d.3-2.3
12:12:02 kernel: usb 4-2.4: new full speed USB device using uhci_hcd and 
address 4
12:12:03 kernel: usb 4-2.4: configuration #1 chosen from 1 choice
12:12:03 kernel: drivers/usb/serial/usb-serial.c: USB Serial support registered 
for MCT U232
12:12:03 kernel: usb 4-2.5: new full speed USB device using uhci_hcd and 
address 5
12:12:03 kernel: usb 4-2.5: configuration #1 chosen from 1 choice
12:12:03 kernel: mct_u232 4-2.4:1.0: MCT U232 converter detected
12:12:03 kernel: usb 4-2.4: MCT U232 converter now attached to ttyUSB2
12:12:03 kernel: usbcore: registered new interface driver mct_u232
12:12:03 kernel: drivers/usb/serial/mct_u232.c: Magic Control Technology 
USB-RS232 converter driver z2.0
12:12:03 kernel: drivers/usb/class/usblp.c: usblp0: USB Bidirectional printer 
dev 5 if 0 alt 1 proto 2 vid 0x0711 pid 0x0300
12:12:03 kernel: usbcore: registered new interface driver usblp
12:12:03 kernel: drivers/usb/class/usblp.c: v0.13: USB Printer Device Class 
driver
12:12:06 kernel: usb 4-2: USB disconnect, address 2
12:12:06 kernel: usb 4-2.3: USB disconnect, address 3
12:12:06 kernel: usb 4-2.4: USB disconnect, address 4
12:12:06 kernel: mct_u232 ttyUSB2: MCT U232 converter now disconnected from 
ttyUSB2
12:12:06 kernel: BUG: unable to handle kernel NULL pointer dereference at 
virtual address 0168
12:12:06 kernel:  printing eip:
12:12:06 kernel: f8ca6542
12:12:06 kernel: *pde = 
12:12:06 kernel: Oops:  [#2]
12:12:06 kernel: PREEMPT 
12:12:06 kernel: Modules linked in: usblp mct_u232 radeon drm nfsd exportfs lockd nfs_acl sunrpc acpi_cpufreq cpufreq_ondemand cpufreq_powersave cpufreq_userspace cpufreq_stats freq_table cpufreq_conservative ac fan button thermal video battery container processor rfcomm l2cap bluetooth cfq_iosched deflate zlib_deflate twofish twofish_common serpent blowfish des cbc ecb blkcipher aes xcbc sha256 sha1 crypto_null af_key af_packet sbp2 usbhid hid pl2303 usbserial mousedev pcmcia snd_intel8x0 snd_ac97_codec ac97_bus snd_pcm_oss snd_mixer_oss snd_pcm snd_timer ipw2200 snd ieee80211 ieee80211_crypt ohci1394 serio_raw psmouse soundcore snd_page_alloc pcspkr sdhci firmware_class ahci ieee1394 yenta_socket rsrc_nonstatic pcmcia_core ehci_hcd mmc_core b44 mii uhci_hcd usbcore intel_agp agpgart sg sr_mod cdrom unix

12:12:06 kernel: CPU:0
12:12:06 kernel: EIP:0060:[f8ca6542]Not tainted VLI
12:12:06 kernel: EFLAGS: 00010206   (2.6.21-rc3-git7 #7)
12:12:06 kernel: EIP is at mct_u232_shutdown+0x39/0x65 [mct_u232]
12:12:06 kernel: eax: 0001   ebx: f7649cc0   ecx: c20df5c0   edx: 0078
12:12:06 kernel: esi:    edi: f7649cc0   ebp: f5c45c18   esp: f7437e38
12:12:06 kernel: ds: 007b   es: 007b   fs: 00d8  gs:   ss: 0068
12:12:06 kernel: Process khubd (pid: 1949, ti=f7436000 task=f7d8da10 
task.ti=f7436000)
12:12:06 kernel: Stack: f6c2c478  f6c2c478 f7649cc0 0001 f7649cc0 f8a29ca1 f7649cc0 
12:12:06 kernel:f7649cc0 f5c45c18 f88c5a43 f7649cf4 f8a29c18 c01ab1b5 0202  
12:12:06 kernel:f6c2c400 f7649cc0 f6c2c400 f7649cc4 f8a297f7 c01ab1b5 0001 f5abec67 
12:12:06 kernel: Call Trace:

12:12:06 kernel:  [f8a29ca1] destroy_serial+0x89/0x122 [usbserial]
12:12:06 kernel:  [f88c5a43] usb_kill_urb+0x4e/0xcb [usbcore]
12:12:06 kernel:  [f8a29c18] destroy_serial+0x0/0x122 [usbserial]
12:12:06 kernel:  [kref_put+95/110] kref_put+0x5f/0x6e
12:12:06 kernel:  [f8a297f7] usb_serial_disconnect+0x81/0xaa [usbserial]
12:12:06 kernel:  [kref_put+95/110] kref_put+0x5f/0x6e
12:12:06 kernel:  [f88c7ca8] usb_unbind_interface+0x2a/0x59 [usbcore]
12:12:06 kernel:  [__device_release_driver+110/139] 
__device_release_driver+0x6e/0x8b
12:12:06 kernel:  [device_release_driver+29/50] device_release_driver+0x1d/0x32
12:12:06 kernel:  [bus_remove_device+113/129] bus_remove_device+0x71/0x81
12:12:06 kernel:  [device_del+308/405] device_del+0x134/0x195
12:12:06 kernel:  [f88c652d] usb_disable_device+0x5c/0xbb [usbcore]
12:12:06 kernel:  [f88c2f8d] usb_disconnect+0x82/0x104 [usbcore]
12:12:06 

Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Mark Lord

Greg KH wrote:


thanks, but again, which usb-serial device do you have running here?


That's in the oops log:  pl2303 for the ckermit test.

For the other oops (plug/wait/unplug a multi-func hub), one of the hubs
also has a pl2303, the other has an mct_u232.

Cheers

-ml
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Mark Lord

Mark Lord wrote:

..and here is a retest with linux-2.6.21-rc3-git7
of simply plug/wait/unplug a USB hub/serial/parallel/PS2 gizmo.

I have two of these, with different serial port hardware in each,
and doing this with either of them produces an ooops.


...
12:12:06 kernel: mct_u232 ttyUSB2: MCT U232 converter now disconnected 
from ttyUSB2
12:12:06 kernel: BUG: unable to handle kernel NULL pointer dereference 
at virtual address 0168

12:12:06 kernel:  printing eip:
12:12:06 kernel: f8ca6542
12:12:06 kernel: *pde = 
12:12:06 kernel: Oops:  [#2]


Okay, from that part (above), the problem is obvious:
in that the MCT U232 converter now disconnected appears,
and then we continue to try and call the driver's method.. Oops!

The hack patch below fixes this, but it really just hides whatever
the real problem underneath was:

Signed-off-by:  Mark Lord [EMAIL PROTECTED]
---
--- linux/include/linux/usb/serial.h.orig   2007-03-12 12:18:48.0 
-0400
+++ linux/include/linux/usb/serial.h2007-03-12 12:18:23.0 -0400
@@ -99,11 +99,19 @@
/* get and set the port private data pointer helper functions */
static inline void *usb_get_serial_port_data (struct usb_serial_port *port)
{
+   if (!port) {
+   WARN_ON(1);
+   return NULL;
+   }
return dev_get_drvdata(port-dev);
}

static inline void usb_set_serial_port_data (struct usb_serial_port *port, void 
*data)
{
+   if (!port) {
+   WARN_ON(1);
+   return;
+   }
dev_set_drvdata(port-dev, data);
}

-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Oliver Neukum
Am Montag, 12. März 2007 17:11 schrieb Mark Lord:
 Mark Lord wrote:
  Greg KH wrote:
  Does userspace have it open when you suspend/resume?
  
  For the ooops I just posted, yes, I may have left Linux ckermit
  running on the serial port before the suspend.
 
 Here's a retest under linux-2.6.21-rc3-git7,
 doing suspend/resume (RAM) with ckermit open on the serial port.

I am looking at it.

Regards
Oliver
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Mark Lord

Mark Lord wrote:


Okay, from that part (above), the problem is obvious:
in that the MCT U232 converter now disconnected appears,
and then we continue to try and call the driver's method.. Oops!

The hack patch below fixes this, but it really just hides whatever
the real problem underneath was:

Signed-off-by:  Mark Lord [EMAIL PROTECTED]
---
--- linux/include/linux/usb/serial.h.orig2007-03-12 
12:18:48.0 -0400

+++ linux/include/linux/usb/serial.h2007-03-12 12:18:23.0 -0400
@@ -99,11 +99,19 @@
/* get and set the port private data pointer helper functions */
static inline void *usb_get_serial_port_data (struct usb_serial_port *port)
{
+if (!port) {
+WARN_ON(1);
+return NULL;
+}
return dev_get_drvdata(port-dev);
}

static inline void usb_set_serial_port_data (struct usb_serial_port 
*port, void *data)

{
+if (!port) {
+WARN_ON(1);
+return;
+}
dev_set_drvdata(port-dev, data);
}



Mmmm.. and that same hack also prevents the Oops seen
when I leave ckermit running during suspend/resume(RAM),
giving me this BUG() report now instead:

12:29:51 kernel: pl2303 ttyUSB0: pl2303 converter now disconnected from ttyUSB0
12:29:51 kernel: BUG: at include/linux/usb/serial.h:103 
usb_get_serial_port_data()
12:29:51 kernel:  [f8a03254] pl2303_shutdown+0x95/0xb5 [pl2303]
12:29:51 kernel:  [f8a23ca1] destroy_serial+0x89/0x122 [usbserial]
12:29:51 kernel:  [f8a23c18] destroy_serial+0x0/0x122 [usbserial]
12:29:51 kernel:  [kref_put+95/110] kref_put+0x5f/0x6e
12:29:51 kernel:  [tty_fasync+60/180] tty_fasync+0x3c/0xb4
12:29:51 kernel:  [release_dev+484/1496] release_dev+0x1e4/0x5d8
12:29:51 kernel:  [find_get_page+21/69] find_get_page+0x15/0x45
12:29:51 kernel:  [filemap_nopage+385/726] filemap_nopage+0x181/0x2d6
12:29:51 kernel:  [pty_write+43/53] pty_write+0x2b/0x35
12:29:51 kernel:  [getnstimeofday+48/216] getnstimeofday+0x30/0xd8
12:29:51 kernel:  [rb_insert_color+74/173] rb_insert_color+0x4a/0xad
12:29:51 kernel:  [enqueue_hrtimer+256/268] enqueue_hrtimer+0x100/0x10c
12:29:51 kernel:  [tty_release+15/24] tty_release+0xf/0x18
12:29:51 kernel:  [__fput+150/336] __fput+0x96/0x150
12:29:51 kernel:  [filp_close+79/86] filp_close+0x4f/0x56
12:29:51 kernel:  [sys_close+117/183] sys_close+0x75/0xb7
12:29:51 kernel:  [sysenter_past_esp+95/133] sysenter_past_esp+0x5f/0x85
12:29:51 kernel:  ===
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [BUG} usb-serial regression in 2.6.21-rc2-git3

2007-03-12 Thread Oliver Neukum
Am Montag, 12. März 2007 17:50 schrieb Mark Lord:
 Mark Lord wrote:
 
  Okay, from that part (above), the problem is obvious:
  in that the MCT U232 converter now disconnected appears,
  and then we continue to try and call the driver's method.. Oops!
  
  The hack patch below fixes this, but it really just hides whatever
  the real problem underneath was:

static void destroy_serial(struct kref *kref):

/* the ports are cleaned up and released in port_release() */
for (i = 0; i  serial-num_ports; ++i)
if (serial-port[i]-dev.parent != NULL) {
device_unregister(serial-port[i]-dev);
serial-port[i] = NULL;
}

if (serial-type-shutdown)
serial-type-shutdown(serial);

IMHO shutdown() is using serial-port[] and bombs.
Could you reverse the order here?

Regards
Oliver
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/