mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Andi Kleen <andi@firstfloor.org>
To: "Phil Endecott" <phil_wueww_endecott@chezphil.org>
Cc: <linux-kernel@vger.kernel.org>
Subject: Re: strace, accept(), ERESTARTSYS and EINTR
Date: Sat, 05 Jan 2008 16:03:11 +0100	[thread overview]
Message-ID: <p731w8w8gcw.fsf@bingen.suse.de> (raw)
In-Reply-To: <1199480498017@dmwebmail.japan.chezphil.org> (Phil Endecott's message of "Fri\, 04 Jan 2008 21\:01\:38 +0000")

"Phil Endecott" <phil_wueww_endecott@chezphil.org> writes:
>
> Many thanks for any suggestions.

It's a long standing bug reported regularly but so far nobody has tracked 
it down. That's mostly because most people cannot really reproduce it.

If you can reproduce it reliably: you could do the brute force debugging 
method. Simply grep all  places in the kernel code that set or pass ERESTART
and add a 

    printk("%s:%d ERESTART\n", __FILE__, __LINE__);

or perhaps

   printk("%s:%d %s:%d ERESTART\n", current->comm, current->pid, __FILE__,
               __LINE__);

or perhaps

   if (!strcmp(current->comm, "yourprogramwithoutpath"))
            printk("%s:%d ERESTART\n", __FILE__, __LINE__);

[the later two might need adding linux/string.h and/or linux/sched.h includes
to the files if they don't compile]

to all of them. Then recompile and boot that kernel.

Now if you can match such a output line to your program 
malfunction we would know where the problem is and then it would be likely
reasonable easy to fix.

Note that the above first two might produce a lot of output if you're
unlucky -- definitely don't do it on a production machine and kill
syslog first so that it doesn't all end up on disk.

-Andi

  parent reply	other threads:[~2008-01-05 15:03 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-04 21:01 Phil Endecott
2008-01-04 22:55 ` Jiri Slaby
2008-01-04 23:52   ` Phil Endecott
2008-01-05  1:06 ` Frederik Deweerdt
2008-01-05  1:38   ` Phil Endecott
2008-01-05 10:31     ` Jiri Slaby
2008-01-05 11:33       ` Jiri Slaby
2008-01-05 14:24         ` Phil Endecott
2008-01-05 16:38           ` Andreas Schwab
2008-01-05 18:18             ` Phil Endecott
2008-01-05 19:19               ` Andreas Schwab
2008-01-05 19:35                 ` Phil Endecott
2008-01-05 19:50                   ` Andreas Schwab
2008-01-05 15:03 ` Andi Kleen [this message]
2008-01-05 17:02   ` Jiri Slaby
2008-01-05 18:42   ` Phil Endecott

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=p731w8w8gcw.fsf@bingen.suse.de \
    --to=andi@firstfloor.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=phil_wueww_endecott@chezphil.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®