On Wed, 9 Jan 2008, Vamsee Priya wrote:

> Hi All,
>
>
>
> We have a kernel module called IPFS which lies in between VFS and UFS.
> We are getting a kernel panic (with the following stack trace) very
> frequently on ATCA blades where as the panic is almost rare on CPCI
> blades.

Hi Vamsee,

Are you willing to share the sourcecode for that driver ? Are you 
considering an OpenSolaris project for this ?

Generically, filesystem filter drivers on Solaris are unsupported - you're 
doing something there that the filesystem framework is not designed to 
deal with. That doesn't mean it's impossible to do, but honestly, makes it 
difficult to advise if there are no sources to look into.

Below, you're trying a VOP_READ() operation on a vnode bound to a fifo, 
and hence that ends in strread(); need the crashdump to tell you more 
about where exactly the invalid pointer comes from.

Given that you say you're trying to interpose on top of UFS, that you end 
up attempting to read from a stream seems unexpected/undesired. Most 
likely you missed a VN_HOLD() where you first picked up a reference to 
that vnode, and later the vnode that at one point in time might've been 
UFS got released and reused (for a fifo not a file).


As far as crashdump analysis on SPARC goes: There's an old book (now out 
of print but still available 2nd hand via e.g. Amazon), called "Panic !". 
It's quite outdated regarding the dump analysis techniques but covers the 
SPARC architecture (assembly language, register windows) well enough.
There are also courses on it - Max Bruning, who posts on mdb-discuss every 
now and then, for example, teaches a good one. Have you tried to talk to 
your local OpenSolaris users group (see the references on the website at 
http://opensolaris.org/os/community/advocacy/usergroups/ug-leaders/) ? 
It's possible to set something up, usually only a question of who covers 
the costs :)

FrankH.


>
>
>
> sfmmu_tsbmiss_exception+0x54(2a1038555a0, 42001, 31, 0, d5b28,
> 6001e6d0800)
>
> ktl0+0x64(60008a47564, 42f98, 1, fffffffffffffff8, 1e5b76, 1)
>
> uiomove+0x90(60008a4755c, 8, 0, 2a103855950, 0, 8)
>
> struiocopyout+0x38(60008cf2fc0, 2a103855950, 2a103855864, 0,
> 60008a47564, 1)
>
> strread+0x4b4(0, 2a103855950, 0, 6001f93fd28, 0, 0)
>
> ipfs_in+0x1e8(0, 30022006540, 6001f93fd28, 8, 2a103855ab0, 0)
>
> ipfs_active_in+0xec(60005e8c000, 30022006540, 3001f1f5ec0, 60011bc6000,
> 0,
>
> 60005e8c0d8)
>
> thread_start+4(60005e8c000, 0, 0, 0, 0, 0).
>
>
>
>
>
> When can this sfmmu_tsbmiss_exception occur?
>
>
>
>
>
> Thanks in advance
>
>
>
>
>
> Regards,
>
> Priya
>
>
>
>
>
>
>

------------------------------------------------------------------------------
No good can come from selling your freedom, not for all the gold in the world,
for the value of this heavenly gift far exceeds that of any fortune on earth.
------------------------------------------------------------------------------
_______________________________________________
opensolaris-discuss mailing list
[email protected]

Reply via email to