五島殿 Forward the mail to you. If i miss something, welcome you comment. Andrew Morton says: > (switched to email. Please respond via emailed reply-to-all, not via the > bugzilla web interface). > > On Mon, 17 Nov 2008 18:44:44 -0800 (PST) bugme-daemon@xxxxxxxxxxxxxxxxxxx wrote: > >> http://bugzilla.kernel.org/show_bug.cgi?id=12056 >> >> Summary: the serial device(ttyS0) is unuseable after booting the >> kernel >> Product: ACPI >> Version: 2.5 >> KernelVersion: 2.6.28-rc3 >> Platform: All >> OS/Version: Linux >> Tree: Mainline >> Status: NEW >> Severity: blocking >> Priority: P1 >> Component: ACPICA-Core >> AssignedTo: acpi_acpica-core@xxxxxxxxxxxxxxxxxxxx >> ReportedBy: shanwei@xxxxxxxxxxxxxx >> >> >> Latest working kernel version:2.6.28-rc3 >> Earliest failing kernel version:2.6.28-rc1 >> Distribution: >> Hardware Environment:fujitsu's PG >> Software Environment: >> Problem Description: >> >> When i switch to the kernel of 2.6.28-rc3, the serial device >> (ttyS0) is unused. But on 2.6.27, it's ok. >> >> On 2.6.28-rc3: >> [root@DaVid compiler]# setserial /dev/ttyS0 >> /dev/ttyS0, UART: unknown, Port: 0x03f8, IRQ: 4 >> >> On 2.6.27: >> [root@DaVid compiler]# setserial /dev/ttyS0 >> /dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4 >> >> The problem comes from this patch 39a0ad871000d2a016a4fa113a6e53d22aabf25d___ >> For the device that is not present but functional, it unload the driver for the >> device. >> In the following patch, I try to fix it whthout check the present bit when >> adding device. After applied the patch, the serial device is useable again. >> >> diff --git a/drivers/pnp/pnpacpi/core.c b/drivers/pnp/pnpacpi/core.c >> index 383e47c..bcc731b 100644 >> --- a/drivers/pnp/pnpacpi/core.c >> +++ b/drivers/pnp/pnpacpi/core.c >> @@ -154,7 +154,7 @@ static int __init pnpacpi_add_device(struct acpi_device >> *device) >> */ >> status = acpi_get_handle(device->handle, "_CRS", &temp); >> if (ACPI_FAILURE(status) || !ispnpidacpi(acpi_device_hid(device)) || >> - is_exclusive_device(device) || (!device->status.present)) >> + is_exclusive_device(device)) >> return 0; >> >> dev = pnp_alloc_dev(&pnpacpi_protocol, num, acpi_device_hid(device)); >> >> Steps to reproduce: >> 1)build the kernel of 2.6.28-rc3; >> 2)check the device with ___setserial /dev/ttyS0___ >> >> > -- To unsubscribe from this list: send the line "unsubscribe linux-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html