Let me guess: You've compiled this driver with gcc, and did not
specify the "-mno-red-zone" compiler option ?

Regarding the ACT dcmds, you need a copy of the KENV distribution
for these to be available. Internally to Sun, there's a project
webpage for it which lists a "customer version" - and no external
download link for that seems to exist anywhere.

I've bcc:'ed the kenv developers, they may be able to tell you where
to get this.

FrankH.

> I'm trying to debug what I think is a stack smash on amd64 with a
> character driver I've ported from i86pc.  I have one panic which is
> totally useless (PC is garbage, mdb can do no stack trace at all), and
> another where the stack looks like this:
> 
> > $C
> fffffe800095cdb0 mutex_enter+0xb()
> fffffe800095cdc0 cdev_ioctl+0x1d()
> fffffe800095cde0 spec_ioctl+0x50()
> fffffe800095cdf0 fop_ioctl+0xb()
> fffffe800095ced0 ioctl+0xac()
> fffffe800095cf20 sys_syscall32+0xd9()
> 
> If I could get the ioctl args, I could narrow down the codepath
> where the stack smash is happening.
> 
> According to 
http://blogs.sun.com/roller/page/chrisg/20041123#amd64_arguements,
> there is a dcmd called "act_thread" which can print arguments.
> But I don't seem to have it available on my Solaris 10 GA box:
> 
> > *panic_thread::act_thread
> mdb: invalid command '::act_thread': unknown dcmd name
> 
> > ::help act_thread
> mdb: unknown command: act_thread
> 
> 
> The block linked to
> (http://blogs.sun.com/roller/page/eschrock?entry=debugging_on_amd64_part_two)
> has a link to the act tool (http://cpre-emea.uk/tools/act.html), but
> the host mentioned in that link does not exist.   
> 
> 
> Does anybody know where/how to get an mdb with the act_thread dcmd?
> I apologize in advance if this is a dumb question -- I'm pretty new
> to Solaris & debugging with mdb.
> 
> Thanks,
> 
> Drew
> _______________________________________________
> mdb-discuss mailing list
> mdb-discuss at opensolaris.org


Reply via email to