* [PATCH] ser_a2232.c bug removed: handles "IRQ request denied" case
@ 2007-08-30 15:13 The AmigaLinux A2232 Driver Project
2007-09-10 9:32 ` Andrew Morton
0 siblings, 1 reply; 3+ messages in thread
From: The AmigaLinux A2232 Driver Project @ 2007-08-30 15:13 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel
This patch handles the case in which the request for the
vertical blank interrupt could not be granted. Thanks to
Nazia Zaman for spotting it.
Applies to latest 2.6.x kernels.
--- linux/drivers/char/ser_a2232.c.org 2007-08-30 15:41:25.000000000 +0100
+++ linux/drivers/char/ser_a2232.c 2007-08-30 15:46:17.000000000 +0100
@@ -787,7 +787,7 @@ static int __init a2232board_init(void)
}
- printk("Total: %d A2232 boards initialized.\n", nr_a2232); /* Some status report if no card was found */
+ printk("Total: %d A2232 boards detected.\n", nr_a2232); /* Some status report if no card was found */
a2232_init_portstructs();
@@ -795,9 +795,13 @@ static int __init a2232board_init(void)
a2232_init_drivers also registers the drivers. Must be here because all boards
have to be detected first.
*/
- if (a2232_init_drivers()) return -ENODEV; // maybe we should use a different -Exxx?
+ if (a2232_init_drivers())
+ return -ENODEV; // maybe we should use a different -Exxx?
- request_irq(IRQ_AMIGA_VERTB, a2232_vbl_inter, 0, "A2232 serial VBL", a2232_driver_ID);
+ if (request_irq(IRQ_AMIGA_VERTB, a2232_vbl_inter, 0, "A2232 serial VBL", a2232_driver_ID))
+ return -ENODEV;
+
+ printk("A2232 driver initialized successfully.\n");
return 0;
}
Signed-off-by: Enver Haase <a2232@gmx.net>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] ser_a2232.c bug removed: handles "IRQ request denied" case
2007-08-30 15:13 [PATCH] ser_a2232.c bug removed: handles "IRQ request denied" case The AmigaLinux A2232 Driver Project
@ 2007-09-10 9:32 ` Andrew Morton
2007-11-05 18:57 ` Enver Haase
0 siblings, 1 reply; 3+ messages in thread
From: Andrew Morton @ 2007-09-10 9:32 UTC (permalink / raw)
To: The AmigaLinux A2232 Driver Project; +Cc: Linus Torvalds, linux-kernel
On Thu, 30 Aug 2007 16:13:55 +0100 (BST) The AmigaLinux A2232 Driver Project <A2232@gmx.net> wrote:
>
>
> This patch handles the case in which the request for the
> vertical blank interrupt could not be granted. Thanks to
> Nazia Zaman for spotting it.
>
> Applies to latest 2.6.x kernels.
>
>
> --- linux/drivers/char/ser_a2232.c.org 2007-08-30 15:41:25.000000000 +0100
> +++ linux/drivers/char/ser_a2232.c 2007-08-30 15:46:17.000000000 +0100
> @@ -787,7 +787,7 @@ static int __init a2232board_init(void)
>
> }
>
> - printk("Total: %d A2232 boards initialized.\n", nr_a2232); /* Some status report if no card was found */
> + printk("Total: %d A2232 boards detected.\n", nr_a2232); /* Some status report if no card was found */
>
> a2232_init_portstructs();
>
> @@ -795,9 +795,13 @@ static int __init a2232board_init(void)
> a2232_init_drivers also registers the drivers. Must be here because all boards
> have to be detected first.
> */
> - if (a2232_init_drivers()) return -ENODEV; // maybe we should use a different -Exxx?
> + if (a2232_init_drivers())
> + return -ENODEV; // maybe we should use a different -Exxx?
>
> - request_irq(IRQ_AMIGA_VERTB, a2232_vbl_inter, 0, "A2232 serial VBL", a2232_driver_ID);
> + if (request_irq(IRQ_AMIGA_VERTB, a2232_vbl_inter, 0, "A2232 serial VBL", a2232_driver_ID))
> + return -ENODEV;
We're going to need to undo the things which a2232_init_drivers() just did.
There's a memory leak and the registered tty driver might even cause a
crash if someone tries to use it?
Perhaps requesting the IRQ before running a2232_init_drivers() would be a
suitable approach.
> + printk("A2232 driver initialized successfully.\n");
> return 0;
> }
>
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] ser_a2232.c bug removed: handles "IRQ request denied" case
2007-09-10 9:32 ` Andrew Morton
@ 2007-11-05 18:57 ` Enver Haase
0 siblings, 0 replies; 3+ messages in thread
From: Enver Haase @ 2007-11-05 18:57 UTC (permalink / raw)
To: Andrew Morton; +Cc: Linus Torvalds, linux-kernel
Well... I realize there's no point in fixing things which I cannot
even see going wrong: I cannot get hold of another A2232 after the
one I had used before went missing.
So until someone contacts me to supply me with a A2232 card, this
driver is an "Orphan" now, sorry.
Changed "Orphaned" to "Orphan", as this is the official "S:" value.
Patch is against Linux-2.6.23.1 .
--- MAINTAINERS.old 2007-11-05 18:50:33.000000000 +0000
+++ MAINTAINERS 2007-11-05 18:51:06.000000000 +0000
@@ -178,10 +178,9 @@
A2232 SERIAL BOARD DRIVER
P: Enver Haase
-M: ehaase@inf.fu-berlin.de
-M: A2232@gmx.net
+M: a2232@mauerkinder.co.uk
L: linux-m68k@lists.linux-m68k.org
-S: Maintained
+S: Orphan
AIO
P: Benjamin LaHaise
@@ -1248,13 +1247,13 @@
M: Eng.Linux@digi.com
L: Eng.Linux@digi.com
W: http://www.digi.com
-S: Orphaned
+S: Orphan
DIGI RIGHTSWITCH NETWORK DRIVER
P: Rick Richardson
L: netdev@vger.kernel.org
W: http://www.digi.com
-S: Orphaned
+S: Orphan
DIRECTORY NOTIFICATION
P: Stephen Rothwell
Regards,
Enver
Andrew Morton wrote:
> On Thu, 30 Aug 2007 16:13:55 +0100 (BST) The AmigaLinux A2232 Driver Project <A2232@gmx.net> wrote:
>
>>
>> This patch handles the case in which the request for the
>> vertical blank interrupt could not be granted. Thanks to
>> Nazia Zaman for spotting it.
>>
>> Applies to latest 2.6.x kernels.
>>
>>
>> --- linux/drivers/char/ser_a2232.c.org 2007-08-30 15:41:25.000000000 +0100
>> +++ linux/drivers/char/ser_a2232.c 2007-08-30 15:46:17.000000000 +0100
>> @@ -787,7 +787,7 @@ static int __init a2232board_init(void)
>>
>> }
>>
>> - printk("Total: %d A2232 boards initialized.\n", nr_a2232); /* Some status report if no card was found */
>> + printk("Total: %d A2232 boards detected.\n", nr_a2232); /* Some status report if no card was found */
>>
>> a2232_init_portstructs();
>>
>> @@ -795,9 +795,13 @@ static int __init a2232board_init(void)
>> a2232_init_drivers also registers the drivers. Must be here because all boards
>> have to be detected first.
>> */
>> - if (a2232_init_drivers()) return -ENODEV; // maybe we should use a different -Exxx?
>> + if (a2232_init_drivers())
>> + return -ENODEV; // maybe we should use a different -Exxx?
>>
>> - request_irq(IRQ_AMIGA_VERTB, a2232_vbl_inter, 0, "A2232 serial VBL", a2232_driver_ID);
>> + if (request_irq(IRQ_AMIGA_VERTB, a2232_vbl_inter, 0, "A2232 serial VBL", a2232_driver_ID))
>> + return -ENODEV;
>
> We're going to need to undo the things which a2232_init_drivers() just did.
> There's a memory leak and the registered tty driver might even cause a
> crash if someone tries to use it?
>
> Perhaps requesting the IRQ before running a2232_init_drivers() would be a
> suitable approach.
>
>
>> + printk("A2232 driver initialized successfully.\n");
>> return 0;
>> }
>>
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2007-11-05 19:06 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-08-30 15:13 [PATCH] ser_a2232.c bug removed: handles "IRQ request denied" case The AmigaLinux A2232 Driver Project
2007-09-10 9:32 ` Andrew Morton
2007-11-05 18:57 ` Enver Haase
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox