Panic from vesa_configure()

Adrian Chadd adrian.chadd at gmail.com
Sat Jan 9 19:48:57 UTC 2016


On 9 January 2016 at 11:30, John Baldwin <jhb at freebsd.org> wrote:
> On Thursday, January 07, 2016 01:47:32 AM Cy Schubert wrote:
>> In message <CAGSa5y0QiKV9SgJYJ_mz3SnJGNjieHSvYP8nLjt9eWXo4RU6ww at mail.gmail.c
>> om>
>> , Jeremie Le Hen writes:
>> > On Mon, Dec 21, 2015 at 12:57 AM, Adrian Chadd <adrian.chadd at gmail.com> wrote
>> > :
>> > > can you copy/paste the file:line that each of those stackframes represents?
>> > >
>> > > I may have an idea or two..
>> >
>> > Sure here we go:
>> >
>> > (kgdb) list *vesa_configure+0x270
>> > 0xffffffff80b25cd0 is in vesa_configure (/usr/src-svn/sys/dev/fb/vesa.c:827).
>> >
>> > (kgdb) list *vga_init+0x65
>> > 0xffffffff80b286e5 is in vga_init (/usr/src-svn/sys/dev/fb/vga.c:1402).
>> >
>> > (kgdb) list *isavga_attach+0x92
>> > 0xffffffff80b9afd2 is in isavga_attach (/usr/src-svn/sys/isa/vga_isa.c:224).
>>
>> Here is what I see. Only happens on real hardware (not VirtualBox VMs).
>>
>> uart0: <16550 or compatible> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
>> uart0: console (9600,n,8,1)
>> acpi_alloc_wakeup_handler: can't alloc wake memory
>
> This is probably related to the same cause.  Both this and the x86 BIOS stuff
> need "low" memory (memory below 1MB).
>
> x86bios_alloc() uses contigmalloc() as does acpi_alloc_wakeup_handler().
> Perhaps the recent changes to contigmalloc() affect this?  In particular,
> try reverting r292469 to see if that fixes the issue.

Can't we just keep a pool of those pages around and not give them out
unless someone specifically asks for low memory?

(The physmem code has explicit clue to do this if we wanted it to; it
has lowmem bits for allocation. I thought it was all working fine.)


-a


More information about the freebsd-current mailing list