On Sat, Sep 01, 2001 at 11:25:04PM +0900, Mitsuru IWASAKI wrote:
> Hi, I've noticed that the recent CURRENT got panic on some machines
> if we have `device acpica' in kernel config.
>
> ----
> ata0: at 0x1f0 irq 14 on atapci0
>
>
> Fatal trap 12: page fault while in kernel mode
> fault virtual address = 0x28
> fault code = supervisor read, page not present
> instruction pointer = 0x8:0xc058ed3c
> stack pointer = 0x10:0xc05c6be0
> frame pointer = 0x10:0xc05c6be0
> code segment = base 0x0, limit 0xfffff, type 0x1b
> = DPL 0, pres 1, def32 1, gran 1
> processor eflags = interrupt enabled, resume, IOPL = 0
> current process = 0 (swapper)
> kernel: type 12 trap, code=0
> Stopped at acpi_timer_get_timecount+0x08: movl 0x28(%eax),%edx
> ----
>
> I think that this is because acpi_timer device is identified twice,
> so I've just made a quick fix for this so that acpi_timer_identify()
> is called only once.
>
> I hope more proper fixes would be made...
>
> Thanks
>
> Index: acpi_timer.c
> ===================================================================
> RCS file: /home/ncvs/src/sys/dev/acpica/acpi_timer.c,v
> retrieving revision 1.10
> diff -u -r1.10 acpi_timer.c
> --- acpi_timer.c 5 Aug 2001 23:20:32 -0000 1.10
> +++ acpi_timer.c 1 Sep 2001 12:04:14 -0000
> @@ -55,7 +55,7 @@
> #define _COMPONENT ACPI_SYSTEM
> MODULE_NAME("TIMER")
>
> -static device_t acpi_timer_dev;
> +static device_t acpi_timer_dev = NULL;
> struct resource *acpi_timer_reg;
> #define TIMER_READ bus_space_read_4(rman_get_bustag(acpi_timer_reg), \
> rman_get_bushandle(acpi_timer_reg), \
> @@ -122,6 +122,9 @@
> return_VOID;
>
> if (AcpiGbl_FADT == NULL)
> + return_VOID;
> +
> + if (acpi_timer_dev != NULL)
> return_VOID;
>
> if ((dev = BUS_ADD_CHILD(parent, 0, "acpi_timer", 0)) == NULL) {
>
>
I have the same problem. Your patch works for me.
Thanks.
--
Rgdz, /"\
Sergey Osokin aka oZZ, \ / ASCII RIBBON CAMPAIGN
[EMAIL PROTECTED] X AGAINST HTML MAIL
http://freebsd.org.ru/~osa/ / \
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message