On Wed, 7 May 2008, Martin Buck wrote:

> On Sun, Mar 23, 2008 at 11:27:22PM +1100, Tim Connors wrote:
> > It's more likely to crash with bigger input files, when running under
> > strace.  strace and kernel config are attached.
>
> Weird, still doesn't happen here.
>
> Could you please try again and this time use "strace -e raw=all -f" to
> generate the log file showing the error? This way, I can see the actual
> buffer addresses passed to read/write.

Does the attached show you want you want to see?

> I also noticed that both you and the original reporter use a kernel with
> kernel preemption enabled. Could you please try to disable kernel
> preemption (CONFIG_PREEMPT_NONE=y) and see whether this fixes the problem?

Hmmm, I'm sure I would have tried this on a vanilla (non preempt) debian
kernel at one point in time, but can't verify that.  I won't be able to
reboot for quite some time, but I have told cron to remind me to test it
next time I do :)

What about SMP, which this machine is?  Maybe likely to trigger the same
bugs that preempt would?

-- 
TimC
Look - a diversion! It's shiny! -- Daniel Stone
31685 execve(0x7fffedb371a0, 0x7fffedb384b8, 0x7fffedb384c8) = 0
31685 brk(0)                            = 0x504000
31685 mmap(0, 0x1000, 0x3, 0x22, 0xffffffff, 0) = 0x2ae214e36000
31685 access(0x2ae214e3130e, 0)         = -1 (errno 2)
31685 mmap(0, 0x2000, 0x3, 0x22, 0xffffffff, 0) = 0x2ae214e37000
31685 access(0x2ae214e33a80, 0x4)       = -1 (errno 2)
31685 open(0x7fff95c8c9f0, 0, 0x2ae214e36000) = -1 (errno 2)
31685 stat(0x7fff95c8c9f0, 0x7fff95c8ca90) = -1 (errno 2)
31685 open(0x7fff95c8c9f0, 0, 0x2ae214e36000) = -1 (errno 2)
31685 stat(0x7fff95c8c9f0, 0x7fff95c8ca90) = -1 (errno 2)
31685 open(0x7fff95c8c9f0, 0, 0x2ae214e36000) = -1 (errno 2)
31685 stat(0x7fff95c8c9f0, 0x7fff95c8ca90) = -1 (errno 2)
31685 open(0x7fff95c8c9f0, 0, 0x2ae214e36000) = -1 (errno 2)
31685 stat(0x7fff95c8c9f0, 0x7fff95c8ca90) = 0
31685 open(0x7fff95c8c9f0, 0, 0x2ae214e36000) = -1 (errno 2)
31685 stat(0x7fff95c8c9f0, 0x7fff95c8ca90) = -1 (errno 2)
31685 open(0x7fff95c8c9f0, 0, 0x2ae214e36000) = -1 (errno 2)
31685 stat(0x7fff95c8c9f0, 0x7fff95c8ca90) = -1 (errno 2)
31685 open(0x7fff95c8c9f0, 0, 0x2ae214e36000) = -1 (errno 2)
31685 stat(0x7fff95c8c9f0, 0x7fff95c8ca90) = -1 (errno 2)
31685 open(0x7fff95c8c9f0, 0, 0x2ae214e36000) = -1 (errno 2)
31685 stat(0x7fff95c8c9f0, 0x7fff95c8ca90) = 0
31685 open(0x7fff95c8c9f0, 0, 0x2ae214e36000) = -1 (errno 2)
31685 stat(0x7fff95c8c9f0, 0x7fff95c8ca90) = -1 (errno 2)
31685 open(0x7fff95c8c9f0, 0, 0x2ae214e36000) = -1 (errno 2)
31685 stat(0x7fff95c8c9f0, 0x7fff95c8ca90) = 0
31685 open(0x7fff95c8c9f0, 0, 0x2ae214e36000) = -1 (errno 2)
31685 stat(0x7fff95c8c9f0, 0x7fff95c8ca90) = -1 (errno 2)
31685 open(0x7fff95c8c9f0, 0, 0x2ae214e36000) = -1 (errno 2)
31685 stat(0x7fff95c8c9f0, 0x7fff95c8ca90) = 0
31685 open(0x7fff95c8c9f0, 0, 0x2ae214e36000) = -1 (errno 2)
31685 stat(0x7fff95c8c9f0, 0x7fff95c8ca90) = -1 (errno 2)
31685 open(0x7fff95c8c9f0, 0, 0x2ae214e36000) = -1 (errno 2)
31685 stat(0x7fff95c8c9f0, 0x7fff95c8ca90) = -1 (errno 2)
31685 open(0x7fff95c8c9f0, 0, 0x2ae214e36000) = -1 (errno 2)
31685 stat(0x7fff95c8c9f0, 0x7fff95c8ca90) = -1 (errno 2)
31685 open(0x7fff95c8c9f0, 0, 0x2ae214e36000) = 0x3
31685 read(0x3, 0x7fff95c8cbd8, 0x340)  = 0x340
31685 fstat(0x3, 0x7fff95c8ca90)        = 0
31685 mmap(0, 0x347258, 0x5, 0x802, 0x3, 0) = 0x2ae215037000
31685 mprotect(0x2ae215175000, 0x200000, 0) = 0
31685 mmap(0x2ae215375000, 0x5000, 0x3, 0x812, 0x3, 0x13e000) = 0x2ae215375000
31685 mmap(0x2ae21537a000, 0x4258, 0x3, 0x32, 0xffffffff, 0) = 0x2ae21537a000
31685 close(0x3)                        = 0
31685 mmap(0, 0x1000, 0x3, 0x22, 0xffffffff, 0) = 0x2ae21537f000
31685 arch_prctl(0x1002, 0x2ae21537f6e0) = 0
31685 mprotect(0x2ae215375000, 0x3000, 0x1) = 0
31685 fstat(0, 0x7fff95c8d480)          = 0
31685 fstat(0x1, 0x7fff95c8d480)        = 0
31685 rt_sigaction(0x1, 0x7fff95c8d330, 0x7fff95c8d290, 0x8) = 0
31685 rt_sigaction(0x2, 0x7fff95c8d330, 0x7fff95c8d290, 0x8) = 0
31685 rt_sigaction(0x3, 0x7fff95c8d330, 0x7fff95c8d290, 0x8) = 0
31685 rt_sigaction(0xf, 0x7fff95c8d330, 0x7fff95c8d290, 0x8) = 0
31685 rt_sigaction(0x11, 0x7fff95c8d340, 0x7fff95c8d2a0, 0x8) = 0
31685 shmget(0, 0xff81f, 0x380, 0)      = 0x6fd50012
31685 shmat(0x6fd50012, 0, 0, 0)        = 0x2ae215380000
31685 semget(0, 0x2, 0x380, 0)          = 0x1680009
31685 semctl(0x1680009, 0, 0x10, 0xffffffff00000001) = 0
31685 semctl(0x1680009, 0x1, 0x10, 0xffffffff00000001) = 0
31685 semop(0x1680009, 0x7fff95c8d510, 0x1, 0) = 0
31685 semctl(0x1680009, 0x1, 0x10, 0xffffffff00000063) = 0
31685 shmdt(0x2ae215380000, 0x1, 0x10, 0) = 0
31685 clone(0x1200011, 0, 0, 0x2ae21537f770, 0) = 0x7bc6
31685 shmat(0x6fd50012, 0, 0, 0x2ae21537f770 <unfinished ...>
31686 getppid( <unfinished ...>
31685 <... shmat resumed> )             = 0x2ae215380000
31686 <... getppid resumed> )           = 0x7bc5
31685 semop(0x1680009, 0x7fff95c8d500, 0x1, 0x2ae21537f770 <unfinished ...>
31686 rt_sigaction(0x1, 0x7fff95c8d320, 0x7fff95c8d280, 0x8 <unfinished ...>
31685 <... semop resumed> )             = 0
31686 <... rt_sigaction resumed> )      = 0
31685 read(0, 0x2ae215388018, 0x2800 <unfinished ...>
31686 rt_sigaction(0x2, 0x7fff95c8d320, 0x7fff95c8d280, 0x8) = 0
31686 rt_sigaction(0x3, 0x7fff95c8d320, 0x7fff95c8d280, 0x8 <unfinished ...>
31685 <... read resumed> )              = 0x2800
31686 <... rt_sigaction resumed> )      = 0
31685 semop(0x1680009, 0x7fff95c8d4f0, 0x1, 0 <unfinished ...>
31686 rt_sigaction(0xf, 0x7fff95c8d320, 0x7fff95c8d280, 0x8 <unfinished ...>
31685 <... semop resumed> )             = 0
31686 <... rt_sigaction resumed> )      = 0
31685 semop(0x1680009, 0x7fff95c8d500, 0x1, 0 <unfinished ...>
31686 rt_sigaction(0x11, 0x7fff95c8d330, 0x7fff95c8d290, 0x8 <unfinished ...>
31685 <... semop resumed> )             = 0
31686 <... rt_sigaction resumed> )      = 0
31685 read(0, 0x2ae21538a818, 0x2800 <unfinished ...>
31686 shmat(0x6fd50012, 0, 0, 0x8 <unfinished ...>
31685 <... read resumed> )              = 0x2800
31686 <... shmat resumed> )             = 0x2ae214e39000
31685 semop(0x1680009, 0x7fff95c8d4f0, 0x1, 0 <unfinished ...>
31686 semop(0x1680009, 0x7fff95c8d500, 0x1, 0x8 <unfinished ...>
31685 <... semop resumed> )             = 0
31686 <... semop resumed> )             = 0
31685 semop(0x1680009, 0x7fff95c8d500, 0x1, 0 <unfinished ...>
31686 write(0x1, 0x2ae214e41018, 0x2800 <unfinished ...>
31685 <... semop resumed> )             = 0
31685 read(0, 0x2ae214e46018, 0x2800 <unfinished ...>
31686 <... write resumed> )             = 0x2800
31685 <... read resumed> )              = -1 (errno 14)
31685 write(0x2, 0x7fff95c8ac10, 0x11 <unfinished ...>
31686 semop(0x1680009, 0x7fff95c8d4f0, 0x1, 0) = 0
31686 semop(0x1680009, 0x7fff95c8d500, 0x1, 0 <unfinished ...>
31685 <... write resumed> )             = 0x11
31686 <... semop resumed> )             = 0
31686 write(0x1, 0x2ae214e43818, 0x2800) = 0x2800
31685 write(0x2, 0x7fff95c8a7d0, 0x22)  = 0x22
31685 kill(0x7bc6, 0x1)                 = 0
31685 wait4(0xffffffffffffffff, 0x503a20, 0, 0 <unfinished ...>
31686 --- SIGHUP (Hangup) @ 0 (0) ---
31686 rt_sigaction(0x11, 0x7fff95c8d0a0, 0x7fff95c8d000, 0x8) = 0
31686 exit_group(0xffffffffffffffff <unfinished ...>
31685 <... wait4 resumed> )             = 0x7bc6
31685 --- SIGCHLD (Child exited) @ 0 (0) ---
31685 wait4(0xffffffffffffffff, 0x503a20, 0x1, 0) = -1 (errno 10)
31685 rt_sigreturn(0xffffffffffffffff)  = 0x7bc6
31685 semctl(0x1680009, 0, 0, 0)        = 0
31685 shmctl(0x6fd50012, 0, 0, 0)       = 0
31685 rt_sigaction(0x11, 0x7fff95c8d2f0, 0x7fff95c8d250, 0x8) = 0
31685 exit_group(0xfffffffffffffffe <unfinished ... exit status 254>

Reply via email to