diff options
author | Jiri Kosina <jkosina@suse.cz> | 2011-10-07 01:29:48 +0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-10-19 01:17:40 +0400 |
commit | 9fdbdd062bfc187e2aa32f7880fa7e8ae717efdf (patch) | |
tree | 473ad879cfb805c26f6f09a7ea5d02c49e15d411 /drivers/parport/share.c | |
parent | 8193c4290620d9b2a6ac116719f11aa99053a90d (diff) | |
download | linux-9fdbdd062bfc187e2aa32f7880fa7e8ae717efdf.tar.xz |
parport_pc: release IO region properly if unsupported ITE887x card is found
sio_ite_8872_probe() bails out if it detects no-parallel (1S, 2S) or
unknown card.
It doesn't call release_region() on the previously allocated resource
though. This causes
(a) leak of the resource
(b) kernel oops when parport module is removed and /proc/ioports is read. This
is because the string that has been associated to the IO port region
is a static char array inside the already removed module.
Let's call release_region() properly before baling out.
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Acked-by: Niels de Vos <ndevos@redhat.com>
Cc: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Alan Cox <alan@linux.intel.com>
Cc: Joe Krahn <krahn@niehs.nih.gov>
Signed-off-by: Andrew Morton <akpm@google.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/parport/share.c')
0 files changed, 0 insertions, 0 deletions