Hi Ashok,

Ashok Kumar wrote:
Hi all,

i am newbie to open solaris. i have installed soalris 10 on my computer.
i want to understand solaris booting sequence on source level, so i enabled booting with kmdb.
These two links may be useful to you:

http://blogs.sun.com/elowe/entry/debugging_early_in_boot
http://blogs.sun.com/dmick/entry/diagnosing_kernel_hangs_panics_with


but i got the following error, and if continue with my tracing dcmd ":e" it's automatically rebooting(after some steps).

panic[cpu0]/thread=fffffffffbc261c0 : Too many lgrps for platform(3)

fffffffffbc48d60 unix: lgrp_create+198 ()
fffffffffbc48dd0 unix: lgrp_cpu_init+157 ()
fffffffffbc48e30 unix: lgrp_config+1cb ()
fffffffffbc48e40 unix: lgrp_setup+45 ()
fffffffffbc48e70 genunix: main+26 ()
fffffffffbc48e80 unix: _start+95 ()


panic : entering debugger (no dump device, continue to reboot)
kmdb : target stopped at:
kaif_enter+8: popfq


stack is
--------------

kaif_enter+8()
kdi_dvec_enter+0x13()
debug_enter+0x39(fffffffffbc0cd20)
panicsys+0x3f0(fffffffffb8ba2b8,fffffffffbc48d18,fffffffffbc4d610,1)
vpanic+0x187()
panic+0x9e()
lgrp_create+0x198 ()
lgrp_cpu_init+157(fffffffffbc274d0)
lgrp_config+0x1cb(3,fffffffffbc274d0,0)
lgrp_setup+0x45 ()
main+0x26 ()
_start+0x95 ()


Need help on this
------------------------------
what went wrong?
It's difficult to answer your question precisely without more information (platform, configuration, crashdump). May be you have stepped on some unknown bug here because simple search for lgrp_create in bugs.opensolaris.org returns only 1 result which is not related to this case.

what is correct order to look into the solaris source code?
Start from the function which called panic(), in this case lgrp_create(). In this case we have the following 'if' statement which triggered panic (http://cvs.opensolaris.org/source/xref/on/usr/src/uts/common/os/lgrp.c#845):

    845         if (nlgrps > nlgrpsmax || my_lgrp == NULL)
    846                 panic("Too many lgrps for platform (%d)", nlgrps);

From this you can conclude that either nlgrps (3 in this case) is more than nlgrpsmax or my_lgrp is NULL. You can look up values of these variables in dump and proceed further.

any docs available on sun website? any blogs available? please give me some pointers..
Basicly you have ultimate documentation. It is source code of OpenSolaris.

Wbr,
Victor

_______________________________________________
opensolaris-code mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/opensolaris-code

Reply via email to