All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jim Radford <radford@blackbean.org>
To: Mark Lord <lkml@rtr.ca>
Cc: Greg KH <greg@kroah.com>,
	linux-usb-devel@lists.sourceforge.net,
	Oliver Neukum <oneukum@suse.de>, Adrian Bunk <bunk@stusta.de>,
	Andrew Morton <akpm@linux-foundation.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] usb-serial regression fix
Date: Tue, 13 Mar 2007 08:30:50 -0700	[thread overview]
Message-ID: <20070313153050.GA14687@blackbean.org> (raw)
In-Reply-To: <45F6AD5D.4020700@rtr.ca>

On Tue, Mar 13, 2007 at 09:55:41AM -0400, Mark Lord wrote:
> Jim Radford wrote:
> >On Mon, Mar 12, 2007 at 09:55:14PM -0400, Mark Lord wrote:
> >
> >>So where does the memory get freed -- the structure pointed at
> >>by the serial->port[i] thingie ?  It's not a leak, is it?
> >
> >It gets free'd through device_unregister
> >
> >    for (i = 0; i < num_ports; ++i) {
> >       ...
> >       port->dev.release = &port_release;
> >       ...
> >       retval = device_register(&port->dev);
> >
> >which means that until all the drivers get converted to use
> >->port_probe() and ->port_remove() (which gets called by
> >device_unregister) and stop using the ->port[] array in ->shutdown()
> >we need to have ->shutdown() called before device_unregister.
> >
> >>>>>Look at changeset d9a7ecacac5f8274d2afce09aadcf37bdb42b93a in Linus's
> >>>>>tree from Jim Radford:
> >
> >>>>>http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=d9a7ecacac5f8274d2afce09aadcf37bdb42b93a

> >So, this patch should be reverted for now.

> Okay, so.. Jim, could you spell it out for us now?

> I'm confused.

> Based on the current 2.6.21-rc3-git*, tell us *exactly* what (if
> any) needs to be reverted, and *exactly* which (if any) of my
> suggested patches to apply ?

The simple change to not NULL the ->port[] array after unregister was
not quite enough, as ->shutdown() would, as hinted at by Mark, then
access kfree'd memory.

The best thing to do is to just revert
d9a7ecacac5f8274d2afce09aadcf37bdb42b93a and work out a better fix for
the next release.  My patches to fix ftdi_sio no longer require this
patch, so it is pointless at this late state if it breaks *anything*,
and it does.


This patch reverts d9a7ecacac5f8274d2afce09aadcf37bdb42b93a since it
breaks drivers that need to access the ->port[] array in shutdown
(most of them).

Signed-Off: Jim Radford <radford@blackbean.org>

--- b/drivers/usb/serial/usb-serial.c
+++ a/drivers/usb/serial/usb-serial.c
@@ -137,6 +135,11 @@
 
 	dbg("%s - %s", __FUNCTION__, serial->type->description);
 
+	serial->type->shutdown(serial);
+
+	/* return the minor range that this device had */
+	return_serial(serial);
+
 	for (i = 0; i < serial->num_ports; ++i)
 		serial->port[i]->open_count = 0;
 
@@ -147,12 +150,6 @@
 			serial->port[i] = NULL;
 		}
 
-	if (serial->type->shutdown)
-		serial->type->shutdown(serial);
-
-	/* return the minor range that this device had */
-	return_serial(serial);
-
 	/* If this is a "fake" port, we have to clean it up here, as it will
 	 * not get cleaned up in port_release() as it was never registered with
 	 * the driver core */




  reply	other threads:[~2007-03-13 15:36 UTC|newest]

Thread overview: 225+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-02-28  5:16 Linux 2.6.21-rc2 Linus Torvalds
2007-02-28  5:50 ` Gabriel C
2007-02-28  7:13 ` [PATCH] affinity is not defined in non-smp kernels - i386 Fernando Luis Vázquez Cao
2007-02-28  7:16   ` [PATCH] affinity is not defined in non-smp kernels - i386 (v2) Fernando Luis Vázquez Cao
2007-02-28  7:24   ` [PATCH] affinity is not defined in non-smp kernels - i386 Eric W. Biederman
2007-02-28 17:31     ` Bill Davidsen
2007-02-28 18:21       ` Eric W. Biederman
2007-02-28 18:30       ` Linus Torvalds
2007-02-28  7:42   ` [PATCH] affinity is not defined in non-smp kernels - i386 (v2) Fernando Luis Vázquez Cao
2007-02-28  7:17 ` [PATCH] affinity is not defined in non-smp kernels - x86_64 Fernando Luis Vázquez Cao
2007-02-28  7:23 ` Linux 2.6.21-rc2 David Brown
2007-02-28  7:39 ` Brice Goglin
2007-02-28 13:09   ` Eric W. Biederman
2007-02-28 16:44     ` David Brown
2007-02-28 17:07       ` Randy Dunlap
2007-02-28  7:41 ` [PATCH] affinity is not defined in non-smp kernels - x86_64 Fernando Luis Vázquez Cao
2007-02-28  7:59 ` Linux 2.6.21-rc2 Damien Wyart
2007-03-05  1:50 ` [1/6] 2.6.21-rc2: known regressions Adrian Bunk
2007-03-05  1:50   ` Adrian Bunk
2007-03-05  2:26   ` Andrew Morton
2007-03-05  2:26     ` Andrew Morton
2007-03-05  3:35   ` Greg KH
2007-03-06  0:55     ` Johannes Berg
2007-03-06  0:55       ` Johannes Berg
2007-03-05  4:01   ` Mark Lord
2007-03-05  4:01     ` Mark Lord
2007-03-05  4:34     ` Greg KH
2007-03-05 12:42       ` Marcel Holtmann
2007-03-05 12:42         ` Marcel Holtmann
2007-03-05  4:34   ` [BUG} usb regression in 2.6.21-rc2-git3 Mark Lord
2007-03-05  4:37     ` [BUG] sdhci regression in 2.6.21-rc2 Mark Lord
2007-03-05  5:36       ` Pierre Ossman
2007-03-05 14:25         ` Mark Lord
2007-03-05 15:19           ` Mark Lord
2007-03-06  4:17             ` Andrew Morton
2007-03-06  5:47               ` Pierre Ossman
2007-03-06  6:09                 ` Andrew Morton
2007-03-06  7:23                   ` Pierre Ossman
2007-03-05 15:20           ` Pierre Ossman
2007-03-05 15:23             ` Pierre Ossman
2007-03-05 15:35               ` Mark Lord
2007-03-05 16:00                 ` Pierre Ossman
2007-03-05 16:18                   ` Mark Lord
2007-03-05  4:43     ` [BUG} usb regression in 2.6.21-rc2-git3 Mark Lord
2007-03-12 14:56     ` [BUG} usb-serial " Mark Lord
2007-03-12 15:06       ` Oliver Neukum
2007-03-12 15:13         ` Mark Lord
2007-03-12 15:27           ` Oliver Neukum
2007-03-12 15:29           ` Greg KH
2007-03-12 15:38             ` Oliver Neukum
2007-03-12 16:03             ` Mark Lord
2007-03-12 16:10               ` Greg KH
2007-03-12 16:22                 ` Mark Lord
2007-03-12 16:11               ` Mark Lord
2007-03-12 16:14                 ` Mark Lord
2007-03-12 16:27                   ` Mark Lord
2007-03-12 16:50                     ` Mark Lord
2007-03-12 18:48                       ` Oliver Neukum
2007-03-12 20:22                         ` [PATCH] usb-serial regression (Oops) in 2.6.21-rc* Mark Lord
2007-03-12 20:33                           ` Greg KH
2007-03-12 22:20                             ` Mark Lord
2007-03-12 22:42                             ` Jim Radford
2007-03-12 22:59                               ` [PATCH] usb-serial regression fix Jim Radford
2007-03-13  0:18                                 ` Greg KH
2007-03-13  0:41                                   ` Jim Radford
2007-03-13  1:55                                     ` Mark Lord
2007-03-13  9:14                                       ` Jim Radford
2007-03-13 10:14                                         ` Oliver Neukum
2007-03-13 13:39                                           ` Mark Lord
2007-03-13 13:50                                             ` Oliver Neukum
2007-03-13 13:55                                         ` Mark Lord
2007-03-13 15:30                                           ` Jim Radford [this message]
2007-03-13 16:35                                             ` Mark Lord
2007-03-12 16:28                 ` [BUG} usb-serial regression in 2.6.21-rc2-git3 Oliver Neukum
2007-03-12 15:31       ` Greg KH
2007-03-07 11:06   ` [1/6] 2.6.21-rc2: known regressions Jeff Garzik
2007-03-07 11:06     ` Jeff Garzik
2007-03-07 22:17     ` Albert Hopkins
2007-03-07 22:17       ` Albert Hopkins
2007-03-05  1:50 ` [2/6] " Adrian Bunk
2007-03-07 11:09   ` Jeff Garzik
2007-03-07 16:10     ` Linus Torvalds
2007-03-08 12:03     ` Ash Milsted
2007-03-08 12:31   ` Michael S. Tsirkin
2007-03-08 15:11     ` Jeff Chua
2007-03-08 18:01     ` Linus Torvalds
2007-03-08 19:06       ` Ingo Molnar
2007-03-08 19:10         ` Ingo Molnar
2007-03-08 19:10           ` Ingo Molnar
2007-03-08 19:47         ` Michael S. Tsirkin
2007-03-08 19:47           ` Michael S. Tsirkin
2007-03-08 20:10           ` Ingo Molnar
2007-03-08 19:25       ` Ingo Molnar
2007-03-08 23:07         ` Ingo Molnar
2007-03-08 23:12           ` Ingo Molnar
2007-03-08 23:28             ` Ingo Molnar
2007-03-08 23:49           ` Linus Torvalds
2007-03-08 23:49             ` Linus Torvalds
2007-03-09 10:56             ` Ingo Molnar
2007-03-09 18:00               ` Linus Torvalds
2007-03-09 11:19             ` Pavel Machek
2007-03-18 16:07               ` Ingo Molnar
2007-03-18 16:07                 ` Ingo Molnar
2007-03-18 16:40                 ` [linux-pm] " Jim Gettys
2007-03-19 19:08                   ` BSOD (was: [2/6] 2.6.21-rc2: known regressions) Pete Zaitcev
2007-03-19 19:38                     ` BSOD David Miller
2007-03-19 19:54                       ` BSOD Jesse Barnes
2007-03-19 20:05                         ` BSOD David Miller
2007-03-19 20:20                           ` BSOD Jesse Barnes
2007-03-19 20:20                           ` BSOD Jim Gettys
2007-03-20  9:19                           ` BSOD Paul Mackerras
2007-03-20 20:33                             ` BSOD Jim Gettys
2007-03-19 20:33                   ` [linux-pm] [2/6] 2.6.21-rc2: known regressions Bill Davidsen
2007-03-19 20:33                     ` Bill Davidsen
2007-03-19 22:08                     ` Jim Gettys
2007-03-20 14:44                       ` Bill Davidsen
2007-03-09 17:48             ` Johannes Stezenbach
2007-03-09 17:48               ` Johannes Stezenbach
2007-03-09 23:35               ` Pavel Machek
2007-03-09 23:35                 ` Pavel Machek
2007-03-10  9:01                 ` Ingo Molnar
2007-03-10  9:01                   ` Ingo Molnar
2007-03-10 11:43                   ` Stefan Seyfried
2007-03-10 11:43                     ` Stefan Seyfried
2007-03-10 13:53                     ` Johannes Stezenbach
2007-03-10 13:53                       ` Johannes Stezenbach
2007-03-10 15:18                     ` Ingo Molnar
2007-03-10 15:18                       ` Ingo Molnar
2007-03-10 22:08                       ` Pavel Machek
2007-03-10 22:08                         ` Pavel Machek
2007-03-11  8:20                         ` Ingo Molnar
2007-03-11  8:20                           ` Ingo Molnar
2007-03-12  6:34                           ` Stefan Seyfried
2007-03-12  6:34                             ` Stefan Seyfried
2007-03-10 22:04                   ` s2ram (was Re: [2/6] 2.6.21-rc2: known regressions) Pavel Machek
2007-03-10 22:04                     ` Pavel Machek
2007-03-08 19:46       ` [2/6] 2.6.21-rc2: known regressions Michael S. Tsirkin
2007-03-08 19:57       ` Michael S. Tsirkin
2007-03-08 19:57         ` Michael S. Tsirkin
     [not found]         ` <20070311120802.GA8823@elte.hu>
2007-03-12 20:20           ` Michael S. Tsirkin
2007-03-17 21:41             ` Michael S. Tsirkin
2007-03-17 22:33               ` Thomas Gleixner
2007-03-21 17:28                 ` Michael S. Tsirkin
2007-03-05  1:50 ` [3/6] " Adrian Bunk
2007-03-05  3:58   ` Michal Jaegermann
2007-03-06 17:08   ` Alan Cox
2007-03-07 11:12   ` Jeff Garzik
2007-03-07 11:12     ` Jeff Garzik
2007-03-10  1:09     ` Mathieu Bérard
2007-03-10  4:11       ` and try remove another quirk on this computers " Sergio Monteiro Basto
2007-03-10  5:41         ` Linus Torvalds
2007-03-11  4:32           ` Sergio Monteiro Basto
2007-03-12 11:37       ` Tejun Heo
2007-03-12 11:37         ` Tejun Heo
2007-03-13 12:31         ` Mathieu Bérard
2007-03-13 12:31           ` Mathieu Bérard
2007-03-13 12:41           ` Tejun Heo
2007-03-13 20:56             ` Mathieu Bérard
2007-03-14  6:07               ` Tejun Heo
2007-03-14  6:07                 ` Tejun Heo
2007-03-14 10:49                 ` Mathieu Bérard
2007-03-05  1:50 ` [4/6] " Adrian Bunk
2007-03-05 10:35   ` Antonino A. Daplas
2007-03-05 15:06     ` Andrew
2007-03-08 23:28     ` Len Brown
2007-03-09 19:25       ` Andrew
2007-03-05 12:21   ` Richard Purdie
2007-03-08  7:43     ` [GIT PULL] ibm-acpi 2.6.21-rc3 regression fixes Henrique de Moraes Holschuh
2007-03-08  8:28       ` [PATCH] ACPI: ibm-acpi: fix initial status of backlight device Henrique de Moraes Holschuh
2007-03-09  1:23         ` Len Brown
2007-03-08  8:28       ` [PATCH] ACPI: ibm-acpi: improve backlight power handling Henrique de Moraes Holschuh
2007-03-09  1:25         ` Len Brown
2007-03-05  1:50 ` [5/6] 2.6.21-rc2: known regressions Adrian Bunk
2007-03-05  7:57   ` Ingo Molnar
2007-03-05  8:13     ` Andrew Morton
2007-03-05 15:25       ` Daniel Walker
2007-03-05 15:27         ` Ingo Molnar
2007-03-05 16:42           ` Daniel Walker
2007-03-05 19:30             ` Ingo Molnar
2007-03-05 16:14     ` Bill Davidsen
2007-03-05 16:21       ` Ingo Molnar
2007-03-05 23:12     ` Adrian Bunk
2007-03-05 23:43   ` Thomas Gleixner
2007-03-05 23:45     ` Linus Torvalds
2007-03-06  0:25       ` Thomas Gleixner
2007-03-06  6:49         ` Soeren Sonnenburg
2007-03-06  7:49           ` Soeren Sonnenburg
2007-03-06  0:38       ` Linus Torvalds
2007-03-06  1:02         ` Thomas Gleixner
2007-03-06  1:31           ` Linus Torvalds
2007-03-06  2:18             ` Linus Torvalds
2007-03-06  7:25               ` Ingo Molnar
2007-03-06  8:09                 ` Thomas Gleixner
2007-03-06 10:33               ` Michael S. Tsirkin
2007-03-06 10:37                 ` Ingo Molnar
2007-03-06 10:46                   ` Michael S. Tsirkin
2007-03-06 11:32                     ` Ingo Molnar
2007-03-06 12:20                       ` Michael S. Tsirkin
2007-03-06 16:44                       ` Linus Torvalds
2007-03-06 17:05                         ` Ingo Molnar
2007-03-06 17:29                         ` [PATCH] highres: do not run the TIMER_SOFTIRQ after switching to highres mode Thomas Gleixner
2007-03-06 17:41                           ` Linus Torvalds
2007-03-16 15:18                         ` [5/6] 2.6.21-rc2: known regressions Randy Dunlap
2007-03-06 11:36                     ` Soeren Sonnenburg
2007-03-06 12:07                       ` Ingo Molnar
2007-03-06 12:15                         ` Michael S. Tsirkin
2007-03-06 12:51                         ` Ingo Molnar
2007-03-06 12:55                           ` Michael S. Tsirkin
2007-03-06 13:03                             ` Ingo Molnar
2007-03-06 13:09                           ` Thomas Gleixner
2007-03-06 12:09                       ` Jeff Chua
2007-03-11 17:32                     ` Pavel Machek
2007-03-06 10:33               ` Michael S. Tsirkin
2007-03-05  1:50 ` [6/6] " Adrian Bunk
2007-03-05  1:50   ` Adrian Bunk
2007-03-05  2:07   ` David Miller
2007-03-05  2:07     ` David Miller
2007-03-05  2:26     ` Adrian Bunk
2007-03-05  2:26       ` Adrian Bunk
2007-03-05  2:29       ` David Miller
2007-03-05  2:29         ` David Miller
2007-03-05  4:42       ` David Miller
2007-03-05  4:42         ` David Miller
2007-03-05  3:32   ` Greg KH
2007-03-05  3:32     ` Greg KH

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20070313153050.GA14687@blackbean.org \
    --to=radford@blackbean.org \
    --cc=akpm@linux-foundation.org \
    --cc=bunk@stusta.de \
    --cc=greg@kroah.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb-devel@lists.sourceforge.net \
    --cc=lkml@rtr.ca \
    --cc=oneukum@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.