Re: CURRENT Kernel makes the system run very very hot

From: Rene Ladan <r.c.ladan_at_gmail.com>
Date: Thu, 13 Dec 2007 08:58:05 +0100
2007/12/13, Ken Menzel <kenfreebsd_at_icarz.com>:
> ----- Original Message -----
> From: "Rene Ladan" <r.c.ladan_at_gmail.com>
> To: "Ken Menzel" <kenm_at_icarz.com>
> Cc: <freebsd-current_at_freebsd.org>
> Sent: Wednesday, December 12, 2007 3:32 PM
> Subject: Re: CURRENT Kernel makes the system run very very hot
>
>
> > Ken Menzel schreef:
> >> ----- Original Message ----- From: "Rene Ladan"
> >> <r.c.ladan_at_gmail.com>
> >> To: "Ken Menzel" <kenm_at_icarz.com>
> >> Cc: <freebsd-current_at_freebsd.org>
> >> Sent: Wednesday, December 12, 2007 12:18 PM
> >> Subject: Re: CURRENT Kernel makes the system run very very hot
> >>
> >>
> >>> 2007/12/12, Ken Menzel <kenfreebsd_at_icarz.com>:
> >>>> ----- Original Message -----
> >>>> From: "Mark Linimon" <linimon_at_lonesome.com>
> >>>> To: "Sam Fourman Jr." <sfourman_at_gmail.com>
> >>>> Cc: <freebsd-current_at_freebsd.org>
> >>>> Sent: Wednesday, December 12, 2007 2:42 AM
> >>>> Subject: Re: CURRENT Kernel makes the system run very very hot
> >>>>
> >>>>
> >>>> > On Wed, Dec 12, 2007 at 01:38:49AM -0600, Sam Fourman Jr.
> >>>> > wrote:
> >>>> >> I did not file a PR (I don't know how I have never done one.)
> >>>> >
> >>>> > Please see http://www.freebsd.org/support/bugreports.html.
> >>>> >
> >>>> > mcl
> >>>> Thanks Mark,  It seems like it may be an ACPI problem based on:
> >>>>
> >>>> (kgdb) print cpu_idle_hook
> >>>> $1 = (void (*)(void)) 0xffffffff801d0bb0 <acpi_cpu_idle>
> >>>> (kgdb) q
> >>>>
> >>>> Thanks to Kostik Belousov for the advice on where to go next.
> >>>> And
> >>>> based on that I will move this to the ACPI mailing list and file
> >>>> a PR.
> >>>>
> >>> Hmm, on my too hot i386 laptop:
> >>>
> >>> # make installkernel.debug
> >>> #gdb /boot/kernel/kernel
> >>> GNU gdb 6.1.1 [FreeBSD]
> >>> Copyright 2004 Free Software Foundation, Inc.
> >>> GDB is free software, covered by the GNU General Public License,
> >>> and
> >>> you are
> >>> welcome to change it and/or distribute copies of it under certain
> >>> conditions.
> >>> Type "show copying" to see the conditions.
> >>> There is absolutely no warranty for GDB.  Type "show warranty" for
> >>> details.
> >>> This GDB was configured as "i386-marcel-freebsd"...
> >>> (gdb) print cpu_idle_hook
> >>> $1 = (void (*)(void)) 0xc063cc9b <cpu_idle_default>
> >>> (gdb) print cpu_idle_default
> >>> $2 = {void (void)} 0xc063cc9b <cpu_idle_default>
> >>>
> >>
> >>
> >> Rene,  please try
> >>
> >> cd /usr/obj/usr/src/sys/GENERIC  (or where-ever you built your
> >> kernel)
> >> kgdb kernel.debug /dev/mem
> >> print cpu_idle_hook
> >>
> >> This should show what is running in memory.
> >>
> > But it doens't :( (at least not human-readable).
> >
> > -----
> >
> > root_at_ip4da3ae31:/usr/obj/usr/src/sys/RENE#kgdb kernel.debug /dev/mem
> > [GDB will not be able to debug user-mode threads:
> > /usr/lib/libthread_db.so: Undefined symbol "ps_pglobal_lookup"]
> > GNU gdb 6.1.1 [FreeBSD]
> > Copyright 2004 Free Software Foundation, Inc.
> > GDB is free software, covered by the GNU General Public License, and
> > you are
> > welcome to change it and/or distribute copies of it under certain
> > conditions.
> > Type "show copying" to see the conditions.
> > There is absolutely no warranty for GDB.  Type "show warranty" for
> > details.
> > This GDB was configured as "i386-marcel-freebsd".
> > Ready to go.  Enter 'tr' to connect to the remote target
> > with /dev/cuad0, 'tr /dev/cuad1' to connect to a different port
> > or 'trf portno' to connect to the remote target with the firewire
> > interface.  portno defaults to 5556.
> >
> > Type 'getsyms' after connection to load kld symbols.
> >
> > If you're debugging a local system, you can use 'kldsyms' instead
> > to load the kld symbols.  That's a less obnoxious interface.
> > During symbol reading...location expression too complex...
> > During symbol reading, unsupported tag: 'DW_TAG_const_type'.
>
> Symbols did not load???  Did you strip the kernel or not compile with
> makeoptions  DEBUG=-g ?  I have this and options DDB and options KDB.
>
My kernel has "makeoptions DEBUG=-g" and options DDB,KDB too.

> > #0  0x00000000 in ?? ()
> > (kgdb) print cpu_idle_hook
> > $1 = (void (*)(void)) 0xc080b6fd
> > (kgdb) print *0xc080b6fd
> > $2 = 0x57e58955
> > (kgdb) print *0x57e58955
> > Error accessing memory address 0x57e58955: Bad address.
> > (kgdb) q
> >
> > -----
> >
> > The result is the same after all daily modules are loaded (my kernel
> > is quite minimal).
> > I manually booted /boot/kernel.debug/kernel.debug which I manually
> > copied from the
> > build directory.
> >
> > Regards,
> > Rene
>
> Hmmmm -- looks like symbols did not load.  I am not an expert in this
> area.  But I do know acpi is loaded after boot and I believe you have
> check the running kernel or a core dump from a running kernel.
> Otherwise you will always see the cpu_idle_default on the unloaded
> kernel, as I do also.  I am working with Nate Lawson privately on
> this.  I do believe we are all seeing the same problem, the idle is
> not sleeping,  hopefully the same fix will work for everyone.
>
> I will post here if Nate can come up with a patch to try.
>
Ok :)

Regards,
Rene
-- 
GPG fingerprint = E738 5471 D185 7013 0EE0  4FC8 3C1D 6F83 12E1 84F6
(subkeys.pgp.net)

"It won't fit on the line."
		-- me, 2001
Received on Thu Dec 13 2007 - 06:58:08 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:24 UTC