[PATCH 2.5.41] trap in __release_resource

David Kleikamp (shaggy@austin.ibm.com)
Wed, 9 Oct 2002 12:19:11 -0500


Russell,
I was getting a NULL pointer dereference in __release_resource when I tried
to boot 2.5.41. I traced it down to your recent patch to 8250.c. Since
the call to serial8250_request_std_resource() is now conditional, the call
to release_resource() needs to be conditional as well. This patch fixes
the problem. It looks obviously correct to me, but I don't know this code
at all.

Thanks,
Shaggy

diff -Nur linux-2.5.41/drivers/serial/8250.c linux/drivers/serial/8250.c
--- linux-2.5.41/drivers/serial/8250.c Wed Oct 9 11:16:52 2002
+++ linux/drivers/serial/8250.c Wed Oct 9 11:17:19 2002
@@ -1636,7 +1636,7 @@
if (up->port.type != PORT_RSA && res_rsa)
release_resource(res_rsa);

- if (up->port.type == PORT_UNKNOWN)
+ if (up->port.type == PORT_UNKNOWN && res_std)
release_resource(res_std);
}

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