This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Cygwin coreutils assertion failed

Hi Eric

Thanks for the detailed and quick response. Usually such bug reports
are never answered.

The cause you describe sounds too bad and the occurrence is too rare
(only once) that I would bother going after this. Instead I'll try to
compile Emacs under Cygwin, which has caused me enough headaches

Thanks for the maintaining work!


On 8/3/07, Eric Blake <> wrote:
> Hash: SHA1
> - redirecting to the list.
> According to Daniel on 8/3/2007 12:29 AM:
> > Hi Eric,
> >
> > I'm running Windows XP Professional with Cygwin 2.510.2.2.
> No, you aren't.  You loaded cygwin using setup.exe version 2.510.2.2, but
> cygwin itself is at version 1.5.24.  Also, coreutils is now at 6.9-4,
> while you only have 6.9-3; you may want to consider upgrading.
> > I have a
> >
> >     tail -n 1000 -F -s 0.1 ~/putty.log
> >
> > running all the time since many weeks. Tonight it crashed with the message:
> >
> > assertion "0 <= seconds" failed: file
> > "/home/eblake/coreutils-6.9-3/src/coreutils-6.9/lib/xnanosleep.c",
> > line 57
> > bash: [3120: 1] tcsetattr: Inappropriate ioctl for device
> > Hangup
> > (129)
> Well, calling xnanosleep with negative time (where seconds is a variable
> of type double) certainly implies a bug.  The question is why the time was
> negative.
> Even worse, in the source for tail, xnanosleep is called in only one
> place, inside a while(1) loop, with a value initialized to 0.1 outside of
> the loop by your choice of -s option but never assigned within the loop.
> It is either stack corruption (perhaps due to faulty memory), or else the
> double sleep value is being stored only in a register and the register is
> not properly being restored after some context switch.  Without
> disassembling tail, I don't know whether the sleep_interval was stored on
> the stack or in a register; but since it is the only use of floating point
> in tail.c, I would suspect that the compiler did not need to spill it out
> of registers onto the stack.  Either way, it does not sound like a
> pleasant bug, nor does it seem like something that is caused directly by
> coreutils.
> - --
> Don't work too hard, make some time for fun as well!
> Eric Blake   
> Version: GnuPG v1.4.5 (Cygwin)
> Comment: Public key at
> Comment: Using GnuPG with Mozilla -
> iD8DBQFGsyrQ84KuGfSFAYARAo0uAJ9GcNpLMEuV8tI353Kq93Ij4evSTACguokW
> =D0SN

Unsubscribe info:
Problem reports:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]