diff options
author | Olivier Blin <blino@mandriva.com> | 2008-08-08 12:01:41 -0700 |
---|---|---|
committer | Jeff Garzik <jgarzik@redhat.com> | 2008-08-14 04:43:46 -0400 |
commit | 6d558a52ba295fc1c281c671d7daab2f74ddb4f2 (patch) | |
tree | d16d3ad63cc9e0b5def6e313ac3657959597a4ff /drivers/net | |
parent | add477df674db00377d9a4dc0d9b553ce79bc06d (diff) | |
download | kernel_samsung_smdk4412-6d558a52ba295fc1c281c671d7daab2f74ddb4f2.zip kernel_samsung_smdk4412-6d558a52ba295fc1c281c671d7daab2f74ddb4f2.tar.gz kernel_samsung_smdk4412-6d558a52ba295fc1c281c671d7daab2f74ddb4f2.tar.bz2 |
hso: fix refcounting on the ttyHSx devices
The references on ttyHSx devices were not decremented correctly when
the tty was closed. The helper freeing the serial devices was never
called because of that, and the module left some dangling sysfs
devices after being unloaded.
Signed-off-by: Olivier Blin <blino@mandriva.com>
Cc: Jari Tenhunen <jari.tenhunen@iki.fi>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/usb/hso.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/usb/hso.c b/drivers/net/usb/hso.c index 94a27f7..94c41bb 100644 --- a/drivers/net/usb/hso.c +++ b/drivers/net/usb/hso.c @@ -1103,8 +1103,8 @@ static void hso_serial_close(struct tty_struct *tty, struct file *filp) /* reset the rts and dtr */ /* do the actual close */ serial->open_count--; + kref_put(&serial->parent->ref, hso_serial_ref_free); if (serial->open_count <= 0) { - kref_put(&serial->parent->ref, hso_serial_ref_free); serial->open_count = 0; if (serial->tty) { serial->tty->driver_data = NULL; |