Kernel panic with ACPI enabled

Donald J. O'Neill duncan.fbsd at gmail.com
Tue Feb 7 15:04:54 PST 2006


On Tuesday 07 February 2006 14:52, John Baldwin wrote:
> On Tuesday 07 February 2006 15:13, Donald J. O'Neill wrote:
> > On Tuesday 07 February 2006 13:04, John Baldwin wrote:
> > > On Tuesday 07 February 2006 13:37, Donald J. O'Neill wrote:
> > > > On Tuesday 07 February 2006 09:48, John Baldwin wrote:
> > > >
> > > >
> > > > I have a few things. Is there a reason you have 'device apm'?
> > > > Are you trying to use APM and ACPI at the same time? Why do you
> > > > have 'device isa' rather than 'device eisa'? Where you, by any
> > > > chance, just re-using your conf file from 5.x? It kind of looks
> > > > that way. Have you looked at i386/conf/NOTES? There is some
> > > > more information in there.
> > >
> > > device isa is normal, and he probably just commented out eisa
> > > since modern systems don't have EISA slots.  The apm thing won't
> > > hurt, though it probably adds a small bit of bloat to the kernel.
> > >  If you have both apm and acpi then acpi will be used if it is
> > > present, otherwise if acpi is not present (or is disabled) then
> > > apm will be used.
> >
> > Hi John,
> >
> > It seems to me that eisa was an extension to isa and that most
> > modern computers don't have an isa bus but have eisa bus instead,
> > In fact I have a Gateway Computer (500Mhz PIII) that has an eisa
> > slot on the MB. Actually most modern computers don't physically
> > have a slot for either isa or eisa. Quite possibly either one would
> > work. I have 'device eisa' in my conf, it's also 'device eisa' in
> > the GENERIC conf which is why I mentioned it.
>
> No, EISA is completely different from ISA.  Older devices like PS/2
> keyboards, the RTC, and 8259A PICs now usually all reside inside the
> soutbridge on a bus called LCP (low pin count) which looks like ISA
> (but isn't technically).  ISA had no type of enumeration (unless you
> count ISA PnP), whereas EISA does provide a method for querying the
> slots to find out what devices are present, etc.
>
Not much I can say about this. You've got more knowledge of it than I 
do. Probably more than I want to have.
>
> > I also have a memory of APM and ACPI being incompatible - I think
> > that was from the early 5.x days, not sure, could be from earlier.
> > But commenting out "device apm' certainly wouldn't hurt since he's
> > probably going to have to rebuild anyway.
>
> Yes, early 5.x days.  Back before 5.0 was released
> sys/kern/subr_power.c was added which was the first step in making
> the two play nice, and later in 5.x I added the legacy0 device which
> was only used if acpi0 didn't attach (either not present or disabled)
> and moved apm0 so that it was a child of legacy0.
>
Ok. So at this point, it wouldn't matter. However, the OP said: 
	"When I setup ACPI as module, I've got panic soon after kernel 
	recognize processor:
		pmap_mapdev: Couldn't alloc kernel virtual memory"

Is he putting something in /boot/loader.conf that's causing a problem? 
What was DMESG when he successfully booted with a GENERIC kernel?
>
>
> > I think I would also ask: is he trying to do a custom kernel with
> > 6.0 release sources or 6.0 stable sources? When I went from release
> > to stable things worked.
>
> For some issues, that would be better yes.
>
Well, when I was using 6.0 Release and the Generic kernel, 'shutdown -p 
now' went to a halt state and didn't shut-off the computer. But after I 
cvsup'd to Stable and did a buildworld sequence, 'shutdown -p now' 
would shut-off the computer. I think some things were improved in 
Stable that were ok in Release. However, I'm seeing a thread on Stable@ 
that leads me to think this would not be the best time to cvsup sources 
and expect a successful buildworld sequence. I don't think that's 
happened before, I've never hesitated to do it till now.
>
> > Other things can affect what he's trying to do and cause him to
> > think he has an ACPI problem. I had a bad USB mouse that was
> > causing problems on one of my computers, in fact anything USB on
> > that computer caused a problem with ACPI (it had to be disabled to
> > allow the computer to boot-up) if that mouse was plugged in, until
> > I found the mouse was bad and switched it with one that was ok. On
> > another computer, I could only boot-up if I either disabled ACPI or
> > had the USB mouse unplugged. After it was up, the mouse could be
> > plugged back in and it would work, ACPI would work, but I would be
> > left wondering about the situation. I finally decided to just use a
> > PS-2 mouse and wait a while. That works fine, although I hate ball
> > mice.
>
> Actually, in his case I'm fairly sure MAXMEM is the problem.  Several
> people have had problems trying to use the tunable equivalent
> (hw.physmem=3g and the like) because if the new maxmem value is
> greater than the highest memory address we found, we just extend the
> last segment of physical memory. However, in the case of modern
> machines with SMAPs, this extension can result in including memory
> that was specifically marked as unavailable (because it was in use by
> the BIOS to store the ACPI tables) suddenly being used by the kernel.
>  As part of this process, the kernel does test writes to each page,
> so it would corrupt the ACPI tables and eventually lead to issues
> such as this.
>
Alright, that would explain why I have 1GB of ram installed, but DMESG 
says:
	real memory  = 1005518848 (958 MB)
	avail memory = 974934016 (929 MB)

It's memory that's being used by or shared with the ATI display 
controller. Correct? its an ATI Radeon Xpress 200g. This is built in to 
the MB, not an AVG card. So If I were to use: maxmem = "(1024 * 1024)", 
I might find myself with some of the problems as the OP? 

Don


More information about the freebsd-acpi mailing list