--- Begin Message ---
Subject: |
Bug in SLEEP command |
Date: |
Tue, 02 Nov 2010 17:46:37 +0200 |
Hello guys!
I found a bug in 'sleep' command.
Please see below:
# date
Tue Oct 5 14:12:11 EEST 2010
address@hidden ~]# sleep 36500d ; date
Sat Oct 30 10:38:44 EEST 2010
address@hidden ~]#
As you can see - 'sleep' was terminated by himself after 24 days, 20 hours, 26
minutes and 33 seconds.
24*24*3600 + 20*3600 + 26*60 + 33 = 2073600 + 72000 + 1560 + 33 = 2147193
seconds
It seems like overflow.
coreutils 6.10-6
Debian 5.0.6
--
A.P.
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#7317: Bug in SLEEP command |
Date: |
Fri, 12 Nov 2010 14:34:01 +0000 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.8) Gecko/20100227 Thunderbird/3.0.3 |
On 02/11/10 17:30, Pádraig Brady wrote:
> On 02/11/10 16:41, Eric Blake wrote:
>> On 11/02/2010 09:46 AM, Андрей Передрий wrote:
>>>
>>> Hello guys!
>>>
>>> I found a bug in 'sleep' command.
>>
>>> As you can see - 'sleep' was terminated by himself after 24 days, 20 hours,
>>> 26 minutes and 33 seconds.
>>> 24*24*3600 + 20*3600 + 26*60 + 33 = 2073600 + 72000 + 1560 + 33 = 2147193
>>> seconds
>>> It seems like overflow.
>>> coreutils 6.10-6
>>> Debian 5.0.6
>>
>> Is your system 32-bit or 64-bit? It makes a difference in determining
>> whether there is a bug in the OS sleep primitives (for example, we know
>> that 64-bit Linux has a bug where nanosleep with an extremely large
>> value will cause the kernel to overflow and sleep for the wrong amount
>> of time, but coreutils has workarounds in place for that).
>
> I had a quick look at the gnulib replacement which
> seems to assume 49 days is the worst case,
> whereas we now need to use 24 days?
Fixed with:
http://git.sv.gnu.org/gitweb/?p=gnulib.git;a=commit;h=2f2b6680
cheers,
Pádraig.
--- End Message ---