Serial.c BUG 2.4.x-2.5x

Roman Kurakin (rik@cronyx.ru)
Fri, 01 Mar 2002 15:18:38 +0300


Hi,

Who is responsible person for applying patches to main tree?

This time I decide to send 2.5.5 patch version:

--- serial-255.c Thu Feb 28 19:24:47 2002
+++ ../serial-255.c Wed Feb 20 05:10:59 2002
@@ -2084,7 +2084,6 @@
unsigned int i,change_irq,change_port;
int retval = 0;
unsigned long new_port;
- unsigned long new_mem;

if (copy_from_user(&new_serial,new_info,sizeof(new_serial)))
return -EFAULT;
@@ -2094,7 +2093,6 @@
new_port = new_serial.port;
if (HIGH_BITS_OFFSET)
new_port += (unsigned long) new_serial.port_high <<
HIGH_BITS_OFFSET;
- new_mem = new_serial.iomem_base;

change_irq = new_serial.irq != state->irq;
change_port = (new_port != ((int) state->port)) ||
@@ -2136,7 +2134,6 @@
for (i = 0 ; i < NR_PORTS; i++)
if ((state != &rs_table[i]) &&
(rs_table[i].port == new_port) &&
- (rs_table[i].iomem_base == new_mem) &&
rs_table[i].type)
return -EADDRINUSE;
}

-------- Original Message --------
Subject: Serial.c Bug
Date: Wed, 14 Nov 2001 13:02:47 +0300
From: Roman Kurakin <rik@cronyx.ru>
To: linux-kernel@vger.kernel.org

I have found a bug. It is in support of serial cards which uses
memory for
I/O insted of ports. I made a patch for serial.c and fix one place, but
probably the problem like this one could be somewhere else.

If you try to use setserial with such cards you will get "Address in use"
(-EADDRINUSE)

Best regards,
Kurakin Roman

Best regards,
Roman Kurakin

-
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/