tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: zfs crash on amd64




On Nov,Saturday 7 2009, at 5:38 AM, Mindaugas Rasiukevicius wrote:

Adam Hamsik <haaaad%gmail.com@localhost> wrote:
I have tried to increase USPACE to 8 and it doesn't helped. I wonder
if problem can be in a stack size of a kernel thread for a taskq.
Because panic happens in taskq kthread. What/where is default kthread
stack size defined or does it have it's own stack ?

Sounds like a wrong approach to the problem. If your code exhausts kernel stack, then it likely need to reduce the usage of it. However, why do you
think it is a stack related problem?

Because SHA256Transform is called from zio_checksum_SHA256 with *H parameter set to zio_checksum_SHA256 local(defined on a stack) array. I have a printf before SHA256Transform call and it shows that passed H is not NULL. Later in SHA256Transform I got crash because of H == NULL.

Place from where SHA256Transform is called
http://nxr.aydogan.net/xref/src/external/cddl/osnet/dist/uts/common/fs/zfs/sha256.c#110

Place where panic happens
http://nxr.aydogan.net/xref/src/external/cddl/osnet/dist/uts/common/fs/zfs/sha256.c#97
panic happens on H[0] += a; In same function on lines 87/88 is H referenced, too.

When I was in ddb I did this

Panic instruction is:
movl 0(%rax), %eax

if I check show registers
%rax is 0

Regards

Adam.



Home | Main Index | Thread Index | Old Index