parport_pc not releasing all ioports on 2.6.0-test7-bk3

From: John Mock
Date: Tue Oct 14 2003 - 12:13:38 EST


If 'parport_pc' is compile as a module, it fails to properly return certain
ioport resources after being removed.

Debian GNU/Linux testing/unstable tvr-vaio tty1

tvr-vaio login: root
Password:
Last login: Tue Oct 14 08:26:30 2003 on tty1
Linux tvr-vaio 2.6.0-test7-bk3 #23 Sun Oct 12 15:42:38 PDT 2003 i686 GNU/Linux
You have new mail.
tvr-vaio:~# cat /proc/ioports > /tmp/ioports1
tvr-vaio:~# modprobe parport_pc
parport0: PC-style at 0x378 (0x778) [PCSPP,TRISTATE]
parport0: irq 7 detected
tvr-vaio:~# cat /proc/ioports > /tmp/ioports2
tvr-vaio:~# rmmod parport_pc
tvr-vaio:~# cat /proc/ioports > /tmp/ioports3
tvr-vaio:~# diff /tmp/ioports{1,2}
12a13,14
> 0378-037a : parport0
> 037b-037f : parport0
tvr-vaio:~# diff /tmp/ioports{2,3}
13,14c13
< 0378-037a : parport0
< 037b-037f : parport0
---
> 037b-037f : kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk&#65533;q&#65533;,Z$S&#65533;&#65533;&#65533;&#65533;$K6&#65533;{
tvr-vaio:~# cat > /tmp/console.log

Additional details on http://bugzilla.kernel.org/show_bug.cgi?id=1356 :

'dmesg' http://bugzilla.kernel.org/attachment.cgi?id=1056
.config http://bugzilla.kernel.org/attachment.cgi?id=1057
/tmp/ioports2 http://bugzilla.kernel.org/attachment.cgi?id=1058

Please write if you would like additional information.

-- JM

P.S. Does the following patch fix this properly??
-------------------------------------------------------------------------------
--- drivers/parport/parport_pc.c.orig 2003-10-08 12:24:51.000000000 -0700
+++ drivers/parport/parport_pc.c 2003-10-14 10:05:25.000000000 -0700
@@ -2358,7 +2358,11 @@
release_region(base_hi, 3);
ECR_res = NULL;
}
-
+ /* Likewise for EEP ports */
+ if (EPP_res && (p->modes & PARPORT_MODE_EPP) == 0) {
+ release_region(base+3, 5);
+ EPP_res = NULL;
+ }
if (p->irq != PARPORT_IRQ_NONE) {
if (request_irq (p->irq, parport_pc_interrupt,
0, p->name, p)) {
===============================================================================
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/