Messages in this thread Patch in this message | | | Date | Fri, 8 Aug 2003 11:55:34 -0700 | Subject | [PATCH 2.5 IrDA] IrCOMM module fix | From | Jean Tourrilhes <> |
| |
ir260_ircomm_owner.diff : ~~~~~~~~~~~~~~~~~~~~~~~ <Patch from Andrey Borzenkov> o [CORRECT] Update module refcount in IrCOMM module
diff -u -p linux/net/irda/ircomm/ircomm_tty.d2.c linux/net/irda/ircomm/ircomm_tty.c --- linux/net/irda/ircomm/ircomm_tty.d2.c Fri Aug 8 10:47:13 2003 +++ linux/net/irda/ircomm/ircomm_tty.c Fri Aug 8 10:51:25 2003 @@ -117,6 +117,7 @@ int __init ircomm_tty_init(void) return -ENOMEM; } + driver->owner = THIS_MODULE, driver->driver_name = "ircomm"; driver->name = "ircomm"; driver->devfs_name = "ircomm"; @@ -363,10 +364,8 @@ static int ircomm_tty_open(struct tty_st IRDA_DEBUG(2, "%s()\n", __FUNCTION__ ); - MOD_INC_USE_COUNT; line = tty->index; if ((line < 0) || (line >= IRCOMM_TTY_PORTS)) { - MOD_DEC_USE_COUNT; return -ENODEV; } @@ -377,7 +376,6 @@ static int ircomm_tty_open(struct tty_st self = kmalloc(sizeof(struct ircomm_tty_cb), GFP_KERNEL); if (self == NULL) { ERROR("%s(), kmalloc failed!\n", __FUNCTION__); - MOD_DEC_USE_COUNT; return -ENOMEM; } memset(self, 0, sizeof(struct ircomm_tty_cb)); @@ -443,7 +441,6 @@ static int ircomm_tty_open(struct tty_st return -ERESTARTSYS; } - /* MOD_DEC_USE_COUNT; "info->tty" will cause this? */ #ifdef SERIAL_DO_RESTART return ((self->flags & ASYNC_HUP_NOTIFY) ? -EAGAIN : -ERESTARTSYS); @@ -471,7 +468,6 @@ static int ircomm_tty_open(struct tty_st ret = ircomm_tty_block_til_ready(self, filp); if (ret) { - /* MOD_DEC_USE_COUNT; "info->tty" will cause this? */ IRDA_DEBUG(2, "%s(), returning after block_til_ready with %d\n", __FUNCTION__ , ret); @@ -503,7 +499,6 @@ static void ircomm_tty_close(struct tty_ spin_lock_irqsave(&self->spinlock, flags); if (tty_hung_up_p(filp)) { - MOD_DEC_USE_COUNT; spin_unlock_irqrestore(&self->spinlock, flags); IRDA_DEBUG(0, "%s(), returning 1\n", __FUNCTION__ ); @@ -530,7 +525,6 @@ static void ircomm_tty_close(struct tty_ self->open_count = 0; } if (self->open_count) { - MOD_DEC_USE_COUNT; spin_unlock_irqrestore(&self->spinlock, flags); IRDA_DEBUG(0, "%s(), open count > 0\n", __FUNCTION__ ); @@ -572,8 +566,6 @@ static void ircomm_tty_close(struct tty_ self->flags &= ~(ASYNC_NORMAL_ACTIVE|ASYNC_CLOSING); wake_up_interruptible(&self->close_wait); - - MOD_DEC_USE_COUNT; } /* - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |