Messages in this thread Patch in this message | | | Date | Thu, 15 May 2003 04:31:04 +0100 | From | davej@codemonk ... | Subject | pcwatchdog firmware memory leak |
| |
diff -urpN --exclude-from=/home/davej/.exclude bk-linus/drivers/char/watchdog/pcwd.c linux-2.5/drivers/char/watchdog/pcwd.c --- bk-linus/drivers/char/watchdog/pcwd.c 2003-04-25 13:53:15.000000000 +0100 +++ linux-2.5/drivers/char/watchdog/pcwd.c 2003-04-26 15:08:04.000000000 +0100 @@ -594,6 +594,7 @@ static void __init pcwd_validate_timeout static int __init pcwatchdog_init(void) { + char *firmware; int i, found = 0; pcwd_validate_timeout(); spin_lock_init(&io_lock); @@ -633,10 +634,12 @@ static int __init pcwatchdog_init(void) if (revision == PCWD_REVISION_A) printk(KERN_INFO "pcwd: PC Watchdog (REV.A) detected at port 0x%03x\n", current_readport); - else if (revision == PCWD_REVISION_C) + else if (revision == PCWD_REVISION_C) { + firmware = get_firmware(); printk(KERN_INFO "pcwd: PC Watchdog (REV.C) detected at port 0x%03x (Firmware version: %s)\n", - current_readport, get_firmware()); - else { + current_readport, firmware); + kfree(firmware); + } else { /* Should NEVER happen, unless get_revision() fails. */ printk("pcwd: Unable to get revision.\n"); return -1; - 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/
| |