> Hello 9fans,
> 
> I was fooling around with a fresh install of plan9 on VMWare fusion,
> copying some files via ftpfs from my hypervisor (Leopard) to my Plan 9
> Guest. Everything was fine until I tried to copy my latest copy of
> Scientific American (14.7mb pdf). It was then that I got the
> error/kernel panic shown. For giggles renamed the file from 200808.pdf
> to sciam-august.pdf, with the same results, I also then bzipped the
> file (which only shaved 1 meg off the file size) and again had the
> same result.
> 
> I then created a set of test files (using dd) of 256k, 512k, 768k,
> 1mb, 2mb, 4mb, and 8mb in size and proceeded to attempt to copy them
> in the same manner (via ftpfs to glenda's $home using cp). All
> attempts to copy the files (even the 256k) causes a panic.
> 
> Interestingly the 9.intro.pdf file (1.3 meg) copied w/o any issues.
> The *.xls files are between 15 and 60kb. (see attacked image (104k).
> 
> For those who don't want to look at the image the error reads:
> ilock :: 00 00 00 00 06 02 00 00 60 7e 11 f0 80 b8 3f f0 00 00 00 00
> (and some other stuff)
> panic: corrupt ilock f0049f40 pc=f0117e60 m=0 isilock=0
> panic: corrupt ilock f0049f40 pc=f0117e60 m=0 isilock=0
> dumpstack disabled
> cpu1: exiting
> cpu0: exiting
> 
> Any help or advice regarding this issue would be greatly appreciated.
> 
> 
> Thanks in advance,
> John

I think this is the same bug that was reported a few months ago.
Apparently the fix I suggested was not applied.  That fix is to
remove the following lines from /sys/src/9/port/taslock.c:

                /*
                 * Cannot also check l->pc and l->m here because
                 * they might just not be set yet, or the lock might 
                 * even have been let go.
                 */
                if(!l->isilock){
                        dumplockmem("ilock:", l);
                        panic("corrupt ilock %p pc=%luX m=%p isilock=%d", 
                                l, l->pc, l->m, l->isilock);
                }

The comment is correct, and also applies to l->isilock.  Nothing
can be safely checked if the lock isn't held; the particular lock in
your panic is fine.

Russ


Reply via email to