GNU bug report logs - #77535
timeout treats very short durations as `0`

Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.

Package: coreutils; Reported by: Nicolas Boichat <nicolas@HIDDEN>; Done: Pádraig Brady <P@HIDDEN>; Maintainer for coreutils is bug-coreutils@HIDDEN.

Message received at 77535 <at> debbugs.gnu.org:


Received: (at 77535) by debbugs.gnu.org; 5 Apr 2025 19:42:12 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Apr 05 15:42:12 2025
Received: from localhost ([127.0.0.1]:44976 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u19PA-0002vI-2Y
	for submit <at> debbugs.gnu.org; Sat, 05 Apr 2025 15:42:12 -0400
Received: from mail-wm1-x32d.google.com ([2a00:1450:4864:20::32d]:59762)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <pixelbeat@HIDDEN>)
 id 1u19P5-0002uK-QH
 for 77535 <at> debbugs.gnu.org; Sat, 05 Apr 2025 15:42:10 -0400
Received: by mail-wm1-x32d.google.com with SMTP id
 5b1f17b1804b1-43d0c18e84eso15897525e9.3
 for <77535 <at> debbugs.gnu.org>; Sat, 05 Apr 2025 12:42:07 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1743882121; x=1744486921; darn=debbugs.gnu.org;
 h=in-reply-to:content-language:references:cc:to:from:subject
 :user-agent:mime-version:date:message-id:sender:from:to:cc:subject
 :date:message-id:reply-to;
 bh=AyJykwlzRB7w7o1gXJorh3pkdXUuNtuf8AWcOmElo6k=;
 b=nHgOBmTcoCxlhVFTNQYdmCwbRCqFtwEPbjIbtFp+rDc50xVizEwrSTONsqNk9v2quP
 XqLIbqbe0daatcGXht8kECuPE2WdOPmmxf897iMIXK3+xccjY/cGsLQt5fpfQqIUYRry
 TpIgZpqNd6movREnZffZx7t4teyMraNkMu80yX0w2kYk9exrvAgeqiw3EFfOJpoq43PK
 1nUa8xGtwPexXvh3j9cHYMt+QMRpLxigHoQGcgtkdPfjRw/fFOmO0vrhGd2+kJ/iMAcj
 HStw5cI/u6jBvQsP+P0X8b1zar/cvRLHZURF/duSXVnMN+jtKGOp2cdsrHMazb6MCADj
 7pOw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1743882121; x=1744486921;
 h=in-reply-to:content-language:references:cc:to:from:subject
 :user-agent:mime-version:date:message-id:sender:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=AyJykwlzRB7w7o1gXJorh3pkdXUuNtuf8AWcOmElo6k=;
 b=ZnIL3U4v6QfR9e0HdTdfxVAi3PsF6KY5EFWSf33jGold7zBQDucztL9N85ed+znM/Y
 fHyG0p4Ng1sRkPcIT0GNwG0mxHtIP+wbibr2BiCJKlGMsenEy8eLCuEidJiipbi0P+fW
 J17qOFEfisy0awpHOSmVG/LctLHr43GCnUO062Aabk6/6BTQwHCzlTspxy6TzdenLeDx
 Uilaf9IMlcepxw0G3UTLd5cxeeM09WHst7jNf7cSwj1WMl32KMDhcoWZESTtw1mBJHOJ
 hGQ9kJKBeJESt5VQ2T5yhWHPeiJci34ayznKShKfLIngPEVdX0PLEjvarO6JK3DvEJgx
 W5AQ==
X-Forwarded-Encrypted: i=1;
 AJvYcCWSQdmZL0l/yq/AB/cmxDnuDLN2bn1hp5J0n6+rOKcJqdpfAhzR3vCaD84LoaKYKTcZ7wwL7g==@debbugs.gnu.org
X-Gm-Message-State: AOJu0Yw5s4fxBF9c8lnoOl8CIzIXI0NRRkjpg0QMoJ9ve1oiQcWZMmn9
 Xd1PITFohgjlfAKL3LaWXWaVVxr6dku2v/sW1ODgcUsoeOgHL1GR
X-Gm-Gg: ASbGncuiohsGyWuFKhu6SSvKXhNold+VkJzQTsu8qdo2dV3EBeKiZ9h4plYy0qHuetu
 CP0HTQu5YXI5+jDYzFEdPTHQocQaYj3zCb+i+45Y+S/5908THfyZ0Oe1Nj71DeR/P95z96tMUWT
 lbTZEWAHR9HDWP2fLX3mCM+WDWNG9ER1MqAAXa+XC1pqaS4eYrkyQzDxIMyhnC8QZPnIMnVdI44
 vNpf/hOnwzqz5C1vTCulBMruzqrMNDRKzeY/M9dTGgg1QK/c/kXwV12A7B3h0Xi0SBVKZxWx76F
 pFZneXhXeAtSuSzqEENPV2Rk9oM6gnZeXvf75hUQq4LYnGo+E5mhwfJjD3TGpKbXIhyzpPVQ14B
 n7S7QtUmeLZ8vn0ScNHcW4ghj
X-Google-Smtp-Source: AGHT+IGz908jGwC4bbMHy6Ld8wjfdC21Ldppf7Rwi2wHdECJuZI5Kebt2JQN6mf6vSia73fJYgVILA==
X-Received: by 2002:a05:600c:83c7:b0:43d:fa59:cc8f with SMTP id
 5b1f17b1804b1-43ed0db6d58mr63943165e9.33.1743882121068; 
 Sat, 05 Apr 2025 12:42:01 -0700 (PDT)
Received: from [192.168.1.31]
 (86-44-211-146-dynamic.agg2.lod.rsl-rtd.eircom.net. [86.44.211.146])
 by smtp.googlemail.com with ESMTPSA id
 5b1f17b1804b1-43ea8d16d35sm103039155e9.0.2025.04.05.12.41.59
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 05 Apr 2025 12:41:59 -0700 (PDT)
Content-Type: multipart/mixed; boundary="------------jQ8OgWMCfctDAWeHt45GE070"
Message-ID: <f3dbb2f3-4082-40e7-aeef-7036dc2a8dad@HIDDEN>
Date: Sat, 5 Apr 2025 20:41:58 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird Beta
Subject: Re: bug#77535: timeout treats very short durations as `0`
From: =?UTF-8?Q?P=C3=A1draig_Brady?= <P@HIDDEN>
To: Philip Rowlands <phr+coreutils@HIDDEN>, 77535 <at> debbugs.gnu.org
References: <CAM6NUi5isNtqv5-UqtA4yMBTZcs1+sMLJ6uQvKn7QpE7pSS0dg@HIDDEN>
 <a1cfeefb-ca6d-42a5-8701-8e8c0d607b87@HIDDEN>
 <4ee5b797-d038-4392-8c43-d3321903f38e@HIDDEN>
 <f595dee9-d48a-41a1-88cd-7de592b3e12d@HIDDEN>
 <6f86f5d8-8f67-4315-98b7-b0e43c0796bd@HIDDEN>
 <0f2b5197-1aab-4b62-890d-91cf3a3e9013@HIDDEN>
Content-Language: en-US
In-Reply-To: <0f2b5197-1aab-4b62-890d-91cf3a3e9013@HIDDEN>
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 77535
Cc: nicolas@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

This is a multi-part message in MIME format.
--------------jQ8OgWMCfctDAWeHt45GE070
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 05/04/2025 19:45, Pádraig Brady wrote:
> On 05/04/2025 19:02, Philip Rowlands wrote:
>> I was interested to see that the code makes uses of strtod, and how this interacts with the minute / hour / day suffix.
>>
>> $ strace -e trace=clock_nanosleep sleep 3
>> clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=3, tv_nsec=0},
>>
>> $ strace -e trace=clock_nanosleep sleep 0xas
>> clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=10, tv_nsec=0},
>>
>> $ strace -e trace=clock_nanosleep sleep 0xam
>> clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=600, tv_nsec=0},
>>
>> $ strace -e trace=clock_nanosleep sleep 0xad
>> clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=173, tv_nsec=0},
>>
>> Here 0xad is interpreted as 173 seconds, not 10 days.
>>
>> It's a corner case, but should sleep(1) support or tolerate hex input, and if so, how should it handle the "d" suffix? FWIW I'd just vote to return an error for hex intervals.
> 
> Good point :)
> Given FreeBSD and ksh sleep implementations also behave like GNU,
> we should probably just document the edge case that
> (day) suffixes are best avoided with hex inputs.
> 
>     ~$ ksh
>     $ type sleep
>     sleep is a shell builtin
>     $ time sleep 0x10d
>     real	4m29.00s

I'll apply the attached later to document this.

cheers,
Pádraig
--------------jQ8OgWMCfctDAWeHt45GE070
Content-Type: text/x-patch; charset=UTF-8;
 name="coreutils-hex-duration-suffixes.patch"
Content-Disposition: attachment;
 filename="coreutils-hex-duration-suffixes.patch"
Content-Transfer-Encoding: base64

RnJvbSAyNzAyMjY2NjI3ZTgxYzAzMGQzNjk0MjgwMWIxZDA3NWEwMzk5ZDNhIE1vbiBTZXAg
MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/UD1DMz1BMWRyYWlnPTIwQnJhZHk/
PSA8UEBkcmFpZ0JyYWR5LmNvbT4KRGF0ZTogU2F0LCA1IEFwciAyMDI1IDIwOjI2OjIzICsw
MTAwClN1YmplY3Q6IFtQQVRDSF0gZG9jOiBtZW50aW9uIHRoZSBlZGdlIGNhc2Ugb2YgZmxv
YXRpbmcgcG9pbnQgZHVyYXRpb25zIHdpdGgKICdkJyBzdWZmaXgKCiogZG9jL2NvcmV1dGls
cy50ZXhpIChzbGVlcCBpbnZvY2F0aW9uKTogTWVudGlvbiB0aGF0IHN1ZmZpeGVzIGFyZQpi
ZXN0IGF2b2lkZWQgd2l0aCBoZXggYXJndW1lbnRzLgoodGltZW91dCBpbnZvY2F0aW9uKTog
TGlrZXdpc2UuCiogdGVzdHMvbWlzYy9zbGVlcC5zaDogRW5zdXJlICdkJyBpcyBub3QgaW50
ZXJwcmV0ZWQgYXMgImRheSIuCi0tLQogZG9jL2NvcmV1dGlscy50ZXhpICB8IDcgKysrKysr
KwogdGVzdHMvbWlzYy9zbGVlcC5zaCB8IDEgKwogMiBmaWxlcyBjaGFuZ2VkLCA4IGluc2Vy
dGlvbnMoKykKCmRpZmYgLS1naXQgYS9kb2MvY29yZXV0aWxzLnRleGkgYi9kb2MvY29yZXV0
aWxzLnRleGkKaW5kZXggZDY2MzNmMDRjLi4yZDFmMTYyYWEgMTAwNjQ0Ci0tLSBhL2RvYy9j
b3JldXRpbHMudGV4aQorKysgYi9kb2MvY29yZXV0aWxzLnRleGkKQEAgLTE4OTEzLDYgKzE4
OTEzLDExIEBAIEMgbG9jYWxlIChAcHhyZWZ7RmxvYXRpbmcgcG9pbnR9KSBmb2xsb3dlZCBi
eSBhbiBvcHRpb25hbCB1bml0OgogQHNhbXB7aH0gZm9yIGhvdXJzCiBAc2FtcHtkfSBmb3Ig
ZGF5cwogQGVuZCBkaXNwbGF5CitAbWFjcm8gaGV4RHVyYXRpb24KK05vdGUgaXQncyBiZXN0
IHRvIGF2b2lkIGNvbWJpbmluZyBzdWZmaXhlcyB3aXRoIGhleGFkZWNpbWFsIGFyZ3VtZW50
cywKK2FzIGFueSBAc2FtcHtkfSB3aWxsIEBlbXBoe25vdH0gYmUgaW50ZXJwcmV0ZWQgYXMg
YSBzdWZmaXguCitAZW5kIG1hY3JvCitAaGV4RHVyYXRpb24KIEEgZHVyYXRpb24gb2YgMCBk
aXNhYmxlcyB0aGUgYXNzb2NpYXRlZCB0aW1lb3V0LgogVGhlIGFjdHVhbCB0aW1lb3V0IGR1
cmF0aW9uIGlzIGRlcGVuZGVudCBvbiBzeXN0ZW0gY29uZGl0aW9ucywKIHdoaWNoIHNob3Vs
ZCBiZSBlc3BlY2lhbGx5IGNvbnNpZGVyZWQgd2hlbiBzcGVjaWZ5aW5nIHN1Yi1zZWNvbmQg
dGltZW91dHMuCkBAIC0xOTA4OSw2ICsxOTA5NCw4IEBAIG5vbi1uZWdhdGl2ZSBpbnRlZ2Vy
IGFyZ3VtZW50IHdpdGhvdXQgYSBzdWZmaXgsIEdOVSBAY29tbWFuZHtzbGVlcH0KIGFsc28g
YWNjZXB0cyB0d28gb3IgbW9yZSBhcmd1bWVudHMsIHVuaXQgc3VmZml4ZXMsIGFuZCBmbG9h
dGluZy1wb2ludAogbnVtYmVycyBpbiBlaXRoZXIgdGhlIGN1cnJlbnQgb3IgdGhlIEMgbG9j
YWxlLiAgQHhyZWZ7RmxvYXRpbmcgcG9pbnR9LgogCitAaGV4RHVyYXRpb24KKwogRm9yIGlu
c3RhbmNlLCB0aGUgZm9sbG93aW5nIGNvdWxkIGJlIHVzZWQgdG8gQGNvbW1hbmR7c2xlZXB9
IGZvcgogMSBzZWNvbmQsIDIzNCBtaWxsaS0sIDU2NyBtaWNyby0gYW5kIDg5MCBuYW5vc2Vj
b25kczoKIApkaWZmIC0tZ2l0IGEvdGVzdHMvbWlzYy9zbGVlcC5zaCBiL3Rlc3RzL21pc2Mv
c2xlZXAuc2gKaW5kZXggZDFlM2JjNzZjLi42ODA2YTZmZTIgMTAwNzU1Ci0tLSBhL3Rlc3Rz
L21pc2Mvc2xlZXAuc2gKKysrIGIvdGVzdHMvbWlzYy9zbGVlcC5zaApAQCAtMzIsNiArMzIs
NyBAQCByZXR1cm5zXyAxIHRpbWVvdXQgMTAgc2xlZXAgfHwgZmFpbD0xCiAjIHN1YnNlY29u
ZCBhY3R1YWwgc2xlZXAKIHRpbWVvdXQgMTAgc2xlZXAgMC4wMDEgfHwgZmFpbD0xCiB0aW1l
b3V0IDEwIHNsZWVwIDB4LjAwMnAxIHx8IGZhaWw9MQordGltZW91dCAxMCBzbGVlcCAweDAu
MDFkIHx8IGZhaWw9MSAgIyBkIGlzIHBhcnQgb2YgaGV4LCBub3QgYSBkYXkgc3VmZml4CiAK
ICMgVXNpbmcgc21hbGwgdGltZW91dHMgZm9yIGxhcmdlciBzbGVlcHMgaXMgcmFjeSwKICMg
YnV0IGZhbHNlIHBvc2l0aXZlcyBzaG91bGQgYmUgYXZvaWRlZCBvbiBtb3N0IHN5c3RlbXMK
LS0gCjIuNDguMQoK

--------------jQ8OgWMCfctDAWeHt45GE070--




Information forwarded to bug-coreutils@HIDDEN:
bug#77535; Package coreutils. Full text available.

Message received at 77535 <at> debbugs.gnu.org:


Received: (at 77535) by debbugs.gnu.org; 5 Apr 2025 18:45:40 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Apr 05 14:45:40 2025
Received: from localhost ([127.0.0.1]:44778 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u18WR-00080W-Lx
	for submit <at> debbugs.gnu.org; Sat, 05 Apr 2025 14:45:39 -0400
Received: from mail-wm1-x32c.google.com ([2a00:1450:4864:20::32c]:45360)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <pixelbeat@HIDDEN>)
 id 1u18WJ-0007zz-4a
 for 77535 <at> debbugs.gnu.org; Sat, 05 Apr 2025 14:45:31 -0400
Received: by mail-wm1-x32c.google.com with SMTP id
 5b1f17b1804b1-43ed8d32a95so11710555e9.3
 for <77535 <at> debbugs.gnu.org>; Sat, 05 Apr 2025 11:45:31 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1743878725; x=1744483525; darn=debbugs.gnu.org;
 h=content-transfer-encoding:in-reply-to:from:content-language
 :references:cc:to:subject:user-agent:mime-version:date:message-id
 :sender:from:to:cc:subject:date:message-id:reply-to;
 bh=AbxtZ4y6HoPlZhB0NiYqKC+W7eRxLoRcl9Z3+oPaSDU=;
 b=CJ/HR9FJVd2TWcSn8h3kD1YSjk86ZwrKmKmlScSq/ahod368vaW2WHPQHOsY44D24p
 Fj7w0inTjAlrWwmZ2W5DdvbjJxtuRRetovoQOSVTuC+8WnDwKpAK+W6rQWvOqjMGgdJ5
 7g6N6nhPiS+PBx4FvuRa35csExfzuqFFzG8vJB+rwQkH5APmewaurhJOZAYiIDz09zVm
 hZdDmoZlDx6pz87lzug8R9lQ84APhFaPg3JhOIz8dDB0Boc1yGRZn+Iazxf6LFx7u6bp
 PjvrpAm013uG0VnX81mBhOaupCVA/vM0I5PzsmU2rRGZKXWicc6sb3oZ/0PRZDgbSyao
 Be9A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1743878725; x=1744483525;
 h=content-transfer-encoding:in-reply-to:from:content-language
 :references:cc:to:subject:user-agent:mime-version:date:message-id
 :sender:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=AbxtZ4y6HoPlZhB0NiYqKC+W7eRxLoRcl9Z3+oPaSDU=;
 b=X5ZHwg/irgS1sqSqpu1JbpntmoXxv6u2LUaTk4r+W2iJ6SjSYhNmFFn1ExDYGXwgzD
 IA2yzM35A6uEbPu/Vh9rALlAhgtEVK/CiRgMNuZrXmuhqh0f/uWuwADgoETdekAK+wM/
 B2aXHN7On5olqHx8KXVMx0hB68h6qOeLavWQig2DSf1Lw5OlT4XV2JF3uXJa1epjjaRY
 nnhddM4ebfWfSKr46rvE2QFpHoCPv7Lpxt2/VeiprgK2Zlz7cgvxW4Vh9nYv883pC3Wp
 CZRMEcs5MlQD+xAB8xi3eomR/OHn6f7nkJ4+GLLE7tWR1qjhs8xgwZvzVpYgBRPsM0ih
 IHkA==
X-Forwarded-Encrypted: i=1;
 AJvYcCUEfV5WkORI8FTPQZspWYrna6gpGIVvBLU6H+dwkKswlyj15Fvsel/ggBKc3fkiDpXT1wHRZg==@debbugs.gnu.org
X-Gm-Message-State: AOJu0YyDvsjuBWpQEwI8An5Fi/6oVha+Rlo34VMG6BfCsh6jbz1m3uH8
 NFiN+Qp6c2nYIVS/bvT+lpnI4cDTKgD2lINLP+g4iqEyKj5WSObA
X-Gm-Gg: ASbGncsqfVOrQSpgwIaoHA005kwqIRjwsavUC+3dDRjJuJC4rPznJ4FHokZgPpuFutN
 nxEcjOSmZjYsHda5O6ZULGkaw3TJJKMlSyePCfsffXPTLOkSuGRjTSWz9+thc0+r6PGa4MHiAcd
 a+pRaCrfz2+hggm4DQLX0TC70DBkv+VfEfHkJQu4REn0qCIwEx1g37Y5Gatf5t3nMU4IntgV86Y
 yxoU1KelUMzHDYk38Z3RrcWbRvLbiyJkJTxz/kWNB1ocaQz26cSKzXYtiXccKWOSiEeRpsKWz3U
 txeXNQ+a+w00TZIr/E728T0jDxA6YNElOmNeE2t+2jAYzc9ph+g1eCiWGw3RwbyqWf2qfY7tQN8
 ru1oPeHyCqhFMLQRGBvr+O9LnRTQgDXJtYZY=
X-Google-Smtp-Source: AGHT+IEGW/Vfbea40vd9SsZN9dgMBdNXfxXLNMVD768+c6tmbqu83B5l/fiYz/pcZhETWna19RWskw==
X-Received: by 2002:a05:600c:3c8d:b0:43b:cc42:c54f with SMTP id
 5b1f17b1804b1-43ecf85f20amr59348315e9.14.1743878724779; 
 Sat, 05 Apr 2025 11:45:24 -0700 (PDT)
Received: from [192.168.1.31]
 (86-44-211-146-dynamic.agg2.lod.rsl-rtd.eircom.net. [86.44.211.146])
 by smtp.googlemail.com with ESMTPSA id
 5b1f17b1804b1-43ec16602bbsm83370195e9.9.2025.04.05.11.45.23
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 05 Apr 2025 11:45:24 -0700 (PDT)
Message-ID: <0f2b5197-1aab-4b62-890d-91cf3a3e9013@HIDDEN>
Date: Sat, 5 Apr 2025 19:45:23 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird Beta
Subject: Re: bug#77535: timeout treats very short durations as `0`
To: Philip Rowlands <phr+coreutils@HIDDEN>,
 Paul Eggert <eggert@HIDDEN>, 77535 <at> debbugs.gnu.org
References: <CAM6NUi5isNtqv5-UqtA4yMBTZcs1+sMLJ6uQvKn7QpE7pSS0dg@HIDDEN>
 <a1cfeefb-ca6d-42a5-8701-8e8c0d607b87@HIDDEN>
 <4ee5b797-d038-4392-8c43-d3321903f38e@HIDDEN>
 <f595dee9-d48a-41a1-88cd-7de592b3e12d@HIDDEN>
 <6f86f5d8-8f67-4315-98b7-b0e43c0796bd@HIDDEN>
Content-Language: en-US
From: =?UTF-8?Q?P=C3=A1draig_Brady?= <P@HIDDEN>
In-Reply-To: <6f86f5d8-8f67-4315-98b7-b0e43c0796bd@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 77535
Cc: nicolas@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 05/04/2025 19:02, Philip Rowlands wrote:
> I was interested to see that the code makes uses of strtod, and how this interacts with the minute / hour / day suffix.
> 
> $ strace -e trace=clock_nanosleep sleep 3
> clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=3, tv_nsec=0},
> 
> $ strace -e trace=clock_nanosleep sleep 0xas
> clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=10, tv_nsec=0},
> 
> $ strace -e trace=clock_nanosleep sleep 0xam
> clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=600, tv_nsec=0},
> 
> $ strace -e trace=clock_nanosleep sleep 0xad
> clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=173, tv_nsec=0},
> 
> Here 0xad is interpreted as 173 seconds, not 10 days.
> 
> It's a corner case, but should sleep(1) support or tolerate hex input, and if so, how should it handle the "d" suffix? FWIW I'd just vote to return an error for hex intervals.

Good point :)
Given FreeBSD and ksh sleep implementations also behave like GNU,
we should probably just document the edge case that
(day) suffixes are best avoided with hex inputs.

   ~$ ksh
   $ type sleep
   sleep is a shell builtin
   $ time sleep 0x10d
   real	4m29.00s

cheers,
Pádraig




Information forwarded to bug-coreutils@HIDDEN:
bug#77535; Package coreutils. Full text available.

Message received at 77535 <at> debbugs.gnu.org:


Received: (at 77535) by debbugs.gnu.org; 5 Apr 2025 18:02:54 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Apr 05 14:02:54 2025
Received: from localhost ([127.0.0.1]:44701 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u17r4-0002ye-3G
	for submit <at> debbugs.gnu.org; Sat, 05 Apr 2025 14:02:54 -0400
Received: from fhigh-b5-smtp.messagingengine.com ([202.12.124.156]:53535)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <phr+coreutils@HIDDEN>)
 id 1u17r2-0002yP-2w
 for 77535 <at> debbugs.gnu.org; Sat, 05 Apr 2025 14:02:52 -0400
Received: from phl-compute-12.internal (phl-compute-12.phl.internal
 [10.202.2.52])
 by mailfhigh.stl.internal (Postfix) with ESMTP id 2A7B325400DA;
 Sat,  5 Apr 2025 14:02:46 -0400 (EDT)
Received: from phl-imap-08 ([10.202.2.84])
 by phl-compute-12.internal (MEProxy); Sat, 05 Apr 2025 14:02:46 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dimebar.com; h=
 cc:cc:content-transfer-encoding:content-type:content-type:date
 :date:from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:subject:subject:to:to; s=fm1; t=1743876166;
 x=1743962566; bh=Is2WGRdseq45xVSPbHTC2fWEdtRSvqpXLKLrwbsJA5k=; b=
 MRc670A7jgjTK4DLyF4YsF64GHwIBL50yNj226bC/1dvAr4YxJ0t1ROc+F89U+Of
 tXen5NujqYwHCziN5EGWBWzDjaFu7Ba8fYaYO/wcV4nN0WnVBwczkFdE6j7ef4tx
 YsehD5Ouf4gc9tw4Fo9s9u02U+eK1GIEYh+93rzkzdI2pO03hxoTTYmABJ1UT1Zk
 fAIv8cKb4FFobTclIGnFsShZqCaydMU8EHop7YBv8mzZ8uwKmX/NEHjaHlXARm02
 XTr8Mi1+Dl1hq9/x9qBCemA7PAxcSg2VXfxdQPs34X2WXTbzRalBLvwpGfNT8liC
 ETL0uiTFewBgKdSBXsXdVQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=
 messagingengine.com; h=cc:cc:content-transfer-encoding
 :content-type:content-type:date:date:feedback-id:feedback-id
 :from:from:in-reply-to:in-reply-to:message-id:mime-version
 :references:reply-to:subject:subject:to:to:x-me-proxy
 :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=1743876166; x=
 1743962566; bh=Is2WGRdseq45xVSPbHTC2fWEdtRSvqpXLKLrwbsJA5k=; b=A
 jUJI2Fb/YQSSrFZl4seRpYn/eGAmwEnf6hkuuE/6/S7zb3br1aXGp4jKSazhq4uV
 PEmx+bdMjhpySi60QEkI/HqH7v4A+rAgrNbrETmwyJZAKUw7kOH5+67t2jmBhyLU
 OpqnBkQzocuSRsbEvH2fFX+YXiR3NnIIMacEr8nv9Rq841cImJXGANpkdEwBcpXG
 XTlHMqQvKlHUHc565iJFDMxo4ZfMYRKw4kValfdLn6jYGzzdPek2+c5sUEjYf9m9
 DX+u1UGLAk+5eEvlZXOLF+T9qesU/dzqzhF6bipI8YmoTxH99JNYATNSyrhiPndo
 VARV9DB1XG4TS2QCek4Gg==
X-ME-Sender: <xms:RXDxZya6ubAbd4yLWW3sSKLvRK6sXEYzaFRm99ekFZ_6f-BTPKMX8A>
 <xme:RXDxZ1aCUPP5xSz7nMhcAzIsuqpwRLpOmhYgPhoRZhYzHTLhy-bNAZNd1NikH3Osq
 stZvRxDi7_YrGkd>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeefvddrtddtgdduleehtddvucetufdoteggodetrf
 dotffvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdggtfgfnhhsuhgsshgtrhhisggv
 pdfurfetoffkrfgpnffqhgenuceurghilhhouhhtmecufedttdenucesvcftvggtihhpih
 gvnhhtshculddquddttddmnecujfgurhepofggfffhvfevkfgjfhfutgfgsehtjeertder
 tddtnecuhfhrohhmpedfrfhhihhlihhpucftohiflhgrnhgushdfuceophhhrhdotghorh
 gvuhhtihhlshesughimhgvsggrrhdrtghomheqnecuggftrfgrthhtvghrnhepveetuddv
 jeelteduudekiefgteefgeevffdukeduledvkeetgeefvdduffffgeeunecuvehluhhsth
 gvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepphhhrhdotghorhgvuhht
 ihhlshesughimhgvsggrrhdrtghomhdpnhgspghrtghpthhtohepgedpmhhouggvpehsmh
 htphhouhhtpdhrtghpthhtohepnhhitgholhgrshessghoihgthhgrthdrtghhpdhrtghp
 thhtohepvghgghgvrhhtsegtshdruhgtlhgrrdgvughupdhrtghpthhtohepjeejheefhe
 esuggvsggsuhhgshdrghhnuhdrohhrghdprhgtphhtthhopehpsegurhgrihhgsghrrggu
 hidrtghomh
X-ME-Proxy: <xmx:RXDxZ88aCaGTkFz_NgCzOQlnaKnaFdFJCUDxye6UfaczzVI_9nW9VA>
 <xmx:RXDxZ0rQrTzqA1yL-S8lA9afb78fpf3nb_0po-YWowGay8bXASZfdA>
 <xmx:RXDxZ9rvn2u4L6NJQ2y3V85B4kV1EQUqO4Kvd21wtnP6MutKgf7rgw>
 <xmx:RXDxZySYdS6dQEwTGacPryzkj80qNKW8PN33tbx_CyYfmDCz3cvA3Q>
 <xmx:RXDxZwKmKXSLD_TlfegGLrW2IwPx6MHBNWIUDEGqXuPF-C8e64XsUNzQ>
Feedback-ID: i3ef94498:Fastmail
Received: by mailuser.phl.internal (Postfix, from userid 501)
 id 1CCB618A006E; Sat,  5 Apr 2025 14:02:45 -0400 (EDT)
X-Mailer: MessagingEngine.com Webmail Interface
MIME-Version: 1.0
X-ThreadId: T566a58710726c96a
Date: Sat, 05 Apr 2025 19:02:24 +0100
From: "Philip Rowlands" <phr+coreutils@HIDDEN>
To: =?UTF-8?Q?P=C3=A1draig_Brady?= <P@HIDDEN>,
 "Paul Eggert" <eggert@HIDDEN>, 77535 <at> debbugs.gnu.org
Message-Id: <6f86f5d8-8f67-4315-98b7-b0e43c0796bd@HIDDEN>
In-Reply-To: <f595dee9-d48a-41a1-88cd-7de592b3e12d@HIDDEN>
References: <CAM6NUi5isNtqv5-UqtA4yMBTZcs1+sMLJ6uQvKn7QpE7pSS0dg@HIDDEN>
 <a1cfeefb-ca6d-42a5-8701-8e8c0d607b87@HIDDEN>
 <4ee5b797-d038-4392-8c43-d3321903f38e@HIDDEN>
 <f595dee9-d48a-41a1-88cd-7de592b3e12d@HIDDEN>
Subject: Re: bug#77535: timeout treats very short durations as `0`
Content-Type: text/plain
Content-Transfer-Encoding: 7bit
X-Spam-Score: -0.7 (/)
X-Debbugs-Envelope-To: 77535
Cc: nicolas@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.7 (-)

I was interested to see that the code makes uses of strtod, and how this interacts with the minute / hour / day suffix.

$ strace -e trace=clock_nanosleep sleep 3
clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=3, tv_nsec=0}, 

$ strace -e trace=clock_nanosleep sleep 0xas
clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=10, tv_nsec=0},

$ strace -e trace=clock_nanosleep sleep 0xam
clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=600, tv_nsec=0},

$ strace -e trace=clock_nanosleep sleep 0xad
clock_nanosleep(CLOCK_REALTIME, 0, {tv_sec=173, tv_nsec=0},

Here 0xad is interpreted as 173 seconds, not 10 days.

It's a corner case, but should sleep(1) support or tolerate hex input, and if so, how should it handle the "d" suffix? FWIW I'd just vote to return an error for hex intervals.


Cheers,
Phil




Information forwarded to bug-coreutils@HIDDEN:
bug#77535; Package coreutils. Full text available.

Message received at 77535 <at> debbugs.gnu.org:


Received: (at 77535) by debbugs.gnu.org; 5 Apr 2025 11:04:01 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Apr 05 07:04:01 2025
Received: from localhost ([127.0.0.1]:41728 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u11Jg-0003X2-Vb
	for submit <at> debbugs.gnu.org; Sat, 05 Apr 2025 07:04:01 -0400
Received: from mail-wm1-x334.google.com ([2a00:1450:4864:20::334]:58395)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <pixelbeat@HIDDEN>)
 id 1u11Je-0003Wj-82
 for 77535 <at> debbugs.gnu.org; Sat, 05 Apr 2025 07:03:59 -0400
Received: by mail-wm1-x334.google.com with SMTP id
 5b1f17b1804b1-43cf05f0c3eso17708245e9.0
 for <77535 <at> debbugs.gnu.org>; Sat, 05 Apr 2025 04:03:58 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1743851032; x=1744455832; darn=debbugs.gnu.org;
 h=in-reply-to:from:content-language:references:cc:to:subject
 :user-agent:mime-version:date:message-id:sender:from:to:cc:subject
 :date:message-id:reply-to;
 bh=XGnDf6vCOoiQ8aKWEP8pE60C9yKy6hJ2WCOV/gX3A2E=;
 b=H/HVk5MD1WBLn/oDTx8SyNW4p9nnNgi5Vgm+8OL+LPPrHtYKq17Uu9KqpMm0d0EddU
 H1FbtuLG1Bxk5kkPl/tmdADnkNHVQ3rv8zWqNzI+SAt/9C2YG6Lf/xOncq/HTpaJq3TN
 46zqfARTzgoU8P/J/QiWSKDTLKtrBGm9XyMC762WHVd/H2XuNToP4vJbVzDzpkd2klkA
 LWh+CN4luaRHEIsAfEHqXmBmr+GkdGkPVRkWXAVZ02MfH2t6O/C87YZDFY3dSCkdYYDA
 jg41S4+52uojNq7LpAO5cC3wTRgURuo8t/mZhG71PlI5TFtgRr0qMMJaCgoG1W7ky+zC
 tv/Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1743851032; x=1744455832;
 h=in-reply-to:from:content-language:references:cc:to:subject
 :user-agent:mime-version:date:message-id:sender:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=XGnDf6vCOoiQ8aKWEP8pE60C9yKy6hJ2WCOV/gX3A2E=;
 b=p1JL7fdmKi5lIkjA0IkCTKvjaWFm8VVqDjA3aN6/sN112VVYjjU9HVeBTEZgWT6T3q
 EGx+ZPLxAFbP/Ogx82ifLRNGG3t4fKdSk6XBNMCufJBQbTkMtBeICAM7GK73u3PrkJdf
 RyhnQfG9DNuLyLy1vmHtvt2MBtB9FOrBR+RoRnCi9CX8RtZcI4CNR0xDczFbP4R3S1x0
 OLeoIebEQDXZC9fRGGyCyeCHZy+49xUKf+vUo6zO9EaZiz6f9Ohl/jq786g23vhbF9Ic
 7rgRYnO45auHM0sDVvL0WrjPBarWLaVoexsxHF5irJ+pJdZyrZ0SrfIEQvkGFHqY2lW1
 YwdQ==
X-Forwarded-Encrypted: i=1;
 AJvYcCXWfddHjJImVec33BS8lmDA3YlVcxpacq9+oN0riSNK95XC8bhjWpgSDnMWw/rwBk3DJYvn4Q==@debbugs.gnu.org
X-Gm-Message-State: AOJu0Yyxz28rhxGHWQa/rzxil6VTk1wh7cLwfMQcqMeUGBlNYxQ8R6Gz
 Uya6yHKzygkyvwpQRc8125buOsIi7aXK2wGosWyKLhtASyUk05bB
X-Gm-Gg: ASbGnctfOcfRkdDnHhJc0sFgmlHvQE0DES7moIx1aOcdT4Xfp+xfz9O4I+2bILyjE1P
 0q+nhSOoT0cpksMASWCUfUNrtrr5FCnwkMNiZw/b4dREscnDkspiE61bgvNFF3hYmIrHwY2Rayc
 BByWK3YgfPWt3sDMfifxNRLC/+EHx2nUkT4/wkW+XuHI8Hf6v3QLGVenGmqQiipD0uIfezUAZ9z
 emr52IKyrv7iSIBzrMVpT0JgPpH9bHv5KYas0ifKNeZvh06U0XtT2qnqFg19g8tSECjhs3irm3H
 1tOh+ag4uvbbXJrdGcCgB1vm6f1mBTtEruwP9XOpIy5HE6X++RsjlB+1+F0LRlLO06IAHZBFl41
 TcAyOpr/13KZMmWCk3TZZ2/yt
X-Google-Smtp-Source: AGHT+IH6ZIzNJ3Br1/i8IOXG3lfwmswffNq/VorkKNgKCOBkRQysAOQbRBA8GGu4urkpMi3LLSg7RA==
X-Received: by 2002:a05:600c:41d2:b0:43d:683:8caa with SMTP id
 5b1f17b1804b1-43ed506213emr38128185e9.15.1743851031422; 
 Sat, 05 Apr 2025 04:03:51 -0700 (PDT)
Received: from [192.168.1.31]
 (86-44-211-146-dynamic.agg2.lod.rsl-rtd.eircom.net. [86.44.211.146])
 by smtp.googlemail.com with ESMTPSA id
 ffacd0b85a97d-39c30226cf6sm6505742f8f.87.2025.04.05.04.03.50
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Sat, 05 Apr 2025 04:03:50 -0700 (PDT)
Content-Type: multipart/mixed; boundary="------------HAUvQaIq0TZ85wYGNjgbvivM"
Message-ID: <f595dee9-d48a-41a1-88cd-7de592b3e12d@HIDDEN>
Date: Sat, 5 Apr 2025 12:03:49 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird Beta
Subject: Re: bug#77535: timeout treats very short durations as `0`
To: Paul Eggert <eggert@HIDDEN>, 77535 <at> debbugs.gnu.org
References: <CAM6NUi5isNtqv5-UqtA4yMBTZcs1+sMLJ6uQvKn7QpE7pSS0dg@HIDDEN>
 <a1cfeefb-ca6d-42a5-8701-8e8c0d607b87@HIDDEN>
 <4ee5b797-d038-4392-8c43-d3321903f38e@HIDDEN>
Content-Language: en-US
From: =?UTF-8?Q?P=C3=A1draig_Brady?= <P@HIDDEN>
In-Reply-To: <4ee5b797-d038-4392-8c43-d3321903f38e@HIDDEN>
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 77535
Cc: nicolas@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

This is a multi-part message in MIME format.
--------------HAUvQaIq0TZ85wYGNjgbvivM
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

On 05/04/2025 09:03, Paul Eggert wrote:
> On 2025-04-04 12:27, Pádraig Brady wrote:
>> +  /* Clamp underflow to 1ns, as 0 disables the timeout.  */
>> +  if (duration == 0 && errno == ERANGE)
>> +    duration = 1e-9;
> 
> That isn't exactly right as the 1e-9 double-rounds to 2e-9 when we
> compute the struct timespec. Also, even with the patch the code
> mishandles 16777216.000000001 (2**24 + 10**-9) by treating it as if it
> were just 16777216. These are tiny bugs, I know, but I took up the
> challenge of doing this things more correctly by installing the attached.

This is the first time coreutils is linking with libm.
So practically that does add measurable overhead:

   $ time seq 10000 | xargs -n1 src/timeout-old >/dev/null
   real    0m7.139s

   $ time seq 10000 | xargs -n1 src/timeout >/dev/null
   real    0m8.161s

So on my 2.6GHz i7-5600U we're adding 102,200 ns to the startup time,
to address theoretical single nanosecond issues.
Given the code is also more complex, I'm thinking using libm is not worth it?

BTW I'll apply the attached cleanups if we keep the libm dependency.

cheers,
Pádraig
--------------HAUvQaIq0TZ85wYGNjgbvivM
Content-Type: text/x-patch; charset=UTF-8; name="timeout-round-tweaks.patch"
Content-Disposition: attachment; filename="timeout-round-tweaks.patch"
Content-Transfer-Encoding: base64

RnJvbSA0MzY4ZDIxZmJkZGFmNTM5NzA4NzIxMGM0OWIzOTg0MTRlMDJjOTMzIE1vbiBTZXAg
MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/UD1DMz1BMWRyYWlnPTIwQnJhZHk/
PSA8UEBkcmFpZ0JyYWR5LmNvbT4KRGF0ZTogU2F0LCA1IEFwciAyMDI1IDExOjI3OjMyICsw
MTAwClN1YmplY3Q6IFtQQVRDSF0gbWFpbnQ6IGFkanVzdG1lbnRzIHRvIHJlY2VudCB0aW1l
b3V0IGNoYW5nZQoKKiAuZ2l0aWdub3JlOiBBZGQgL2xpYi9mZW52LmggdG8gaWdub3JlIGxp
c3QuCiogdGVzdHMvdGltZW91dC90aW1lb3V0LXBhcmFtZXRlcnMuc2g6IFVzZSBhIHNsZWVw
IGxlbmd0aCBvZiAxMHMKdG8gYmUgY29uc2lzdGVudCB3aXRoIHRoZSBwYXR0ZXJuIHdoZXJl
IHdlIHVzZSB0aGlzIGxhcmdlciB0aW1lCndoZW4gaXQgZG9lcyBub3Qgc2xvdyBkb3duIGEg
dGVzdCwgYnV0IGFsc28gcHJvdmlkZXMgcHJvdGVjdGlvbgphZ2FpbnN0IGEgaHVuZyB0ZXN0
LCBhbmQgYmV0dGVyIGF2b2lkYW5jZSBvZiBmYWxzZSBmYWlsdXJlcyBkdWUKdG8gcmFjZXMg
b24gdmVyeSBsb2FkZWQgc3lzdGVtcy4gIEFsc28gZml4IHRoZSBzZXR0aW5nIG9mIEZBSUwu
CiogdGVzdHMvdGltZW91dC90aW1lb3V0LWxhcmdlLXBhcmFtZXRlcnMuc2g6IFJlbW92ZSBk
dXBsaWNhdGVkIHRlc3QuCi0tLQogLmdpdGlnbm9yZSAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgfCAxICsKIHRlc3RzL3RpbWVvdXQvdGltZW91dC1sYXJnZS1wYXJhbWV0ZXJz
LnNoIHwgMyAtLS0KIHRlc3RzL3RpbWVvdXQvdGltZW91dC1wYXJhbWV0ZXJzLnNoICAgICAg
IHwgMiArLQogMyBmaWxlcyBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25z
KC0pCgpkaWZmIC0tZ2l0IGEvLmdpdGlnbm9yZSBiLy5naXRpZ25vcmUKaW5kZXggZjRhMTdh
ZDA0Li40ZGMzOWFlNTUgMTAwNjQ0Ci0tLSBhLy5naXRpZ25vcmUKKysrIGIvLmdpdGlnbm9y
ZQpAQCAtNjcsNiArNjcsNyBAQAogL2xpYi9lcnJuby5oCiAvbGliL2Vycm9yLmgKIC9saWIv
ZmNudGwuaAorL2xpYi9mZW52LmgKIC9saWIvZmxvYXQuaAogL2xpYi9mbm1hdGNoLmgKIC9s
aWIvZ2V0b3B0LWNkZWZzLmgKZGlmZiAtLWdpdCBhL3Rlc3RzL3RpbWVvdXQvdGltZW91dC1s
YXJnZS1wYXJhbWV0ZXJzLnNoIGIvdGVzdHMvdGltZW91dC90aW1lb3V0LWxhcmdlLXBhcmFt
ZXRlcnMuc2gKaW5kZXggYTUzOTVkMTUzLi41NjY5ODEwZTggMTAwNzU1Ci0tLSBhL3Rlc3Rz
L3RpbWVvdXQvdGltZW91dC1sYXJnZS1wYXJhbWV0ZXJzLnNoCisrKyBiL3Rlc3RzL3RpbWVv
dXQvdGltZW91dC1sYXJnZS1wYXJhbWV0ZXJzLnNoCkBAIC00Myw3ICs0Myw0IEBAIHRpbWVv
dXQgMi4zNGUrNWQgc2xlZXAgMCB8fCBmYWlsPTEKIHRpbWVvdXQgJExEQkxfTUFYIHNsZWVw
IDAgfHwgZmFpbD0xCiByZXR1cm5zXyAxMjUgdGltZW91dCAtLSAtJExEQkxfTUFYIHNsZWVw
IDAgfHwgZmFpbD0xCiAKLSMgRW5zdXJlIHVuZGVyZmxvdyB0aW1lcyBvdXQgaW1tZWRpYXRl
bHkKLXJldHVybnNfIDEyNCB0aW1lb3V0IDFlLTUwMDAgc2xlZXAgMTAgfHwgZmFpbD0xCi0K
IEV4aXQgJGZhaWwKZGlmZiAtLWdpdCBhL3Rlc3RzL3RpbWVvdXQvdGltZW91dC1wYXJhbWV0
ZXJzLnNoIGIvdGVzdHMvdGltZW91dC90aW1lb3V0LXBhcmFtZXRlcnMuc2gKaW5kZXggNDA4
ODQ2MjYyLi5jNGIyMjAyYjQgMTAwNzU1Ci0tLSBhL3Rlc3RzL3RpbWVvdXQvdGltZW91dC1w
YXJhbWV0ZXJzLnNoCisrKyBiL3Rlc3RzL3RpbWVvdXQvdGltZW91dC1wYXJhbWV0ZXJzLnNo
CkBAIC00MSw3ICs0MSw3IEBAIHRpbWVvdXQgMTAuMzQgc2xlZXAgMCB8fCBmYWlsPTEKIHRp
bWVvdXQgOS45OTk5OTk5OTkgc2xlZXAgMCB8fCBmYWlsPTEKIAogIyByb3VuZCB1bmRlcmZs
b3cgdXAgdG8gMSBucwotcmV0dXJuc18gMTI0IHRpbWVvdXQgMWUtMTAwMDAgc2xlZXAgMSB8
fCBmYWlsCityZXR1cm5zXyAxMjQgdGltZW91dCAxZS0xMDAwMCBzbGVlcCAxMCB8fCBmYWls
PTEKIAogIyBpbnZhbGlkIHNpZ25hbCBzcGVjCiByZXR1cm5zXyAxMjUgdGltZW91dCAtLXNp
Z25hbD1pbnZhbGlkIDEgc2xlZXAgMCB8fCBmYWlsPTEKLS0gCjIuNDguMQoK

--------------HAUvQaIq0TZ85wYGNjgbvivM--




Information forwarded to bug-coreutils@HIDDEN:
bug#77535; Package coreutils. Full text available.

Message received at 77535 <at> debbugs.gnu.org:


Received: (at 77535) by debbugs.gnu.org; 5 Apr 2025 08:04:00 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Apr 05 04:04:00 2025
Received: from localhost ([127.0.0.1]:41376 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u0yVT-0003Sl-Fn
	for submit <at> debbugs.gnu.org; Sat, 05 Apr 2025 04:04:00 -0400
Received: from mail.cs.ucla.edu ([131.179.128.66]:55240)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <eggert@HIDDEN>)
 id 1u0yVQ-0003SX-HJ
 for 77535 <at> debbugs.gnu.org; Sat, 05 Apr 2025 04:03:57 -0400
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id E7F863C0149CA;
 Sat,  5 Apr 2025 01:03:49 -0700 (PDT)
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10032) with ESMTP
 id fZIJKelzlj8T; Sat,  5 Apr 2025 01:03:49 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1])
 by mail.cs.ucla.edu (Postfix) with ESMTP id 5495C3C0149D0;
 Sat,  5 Apr 2025 01:03:49 -0700 (PDT)
DKIM-Filter: OpenDKIM Filter v2.10.3 mail.cs.ucla.edu 5495C3C0149D0
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs.ucla.edu;
 s=9D0B346E-2AEB-11ED-9476-E14B719DCE6C; t=1743840229;
 bh=E1zpVsIO71L7uSN1MolCua/E1wCB5bqu5QLUqXZll80=;
 h=Message-ID:Date:MIME-Version:To:From;
 b=Z31bYHN4x1GAG9vF/kOLTZn9tp4vNQfgsWJSNXec4sFeFDPDK/nb7uXN/sH4/BZ4z
 Kkw4o4FjrMS5xOq8As4XXa+9Od1FwVIklB0i7C/HFWAk1+AaXPxv2Sm+2Yfi9+haV8
 ju+Qh7HLknvBoTtGhK3letjAX06h47h7YHr9dSugVBnDKwDit8d65rP45BAnPfkTac
 O4Zz29xnQwJJzJ6ako4X96cE0LwKTX2mPZy2Fhl0pggftneXKRBRzXNlKtShGY/g6l
 Y2JmH20ClGJzsBGxc8+cczLAvq3Sqd57ZSIh+JMDX0spTTMUtZq/epwWXe8kleE9uM
 minFmluT5S3tQ==
X-Virus-Scanned: amavis at mail.cs.ucla.edu
Received: from mail.cs.ucla.edu ([127.0.0.1])
 by localhost (mail.cs.ucla.edu [127.0.0.1]) (amavis, port 10026) with ESMTP
 id b3zlIJdQ1HrN; Sat,  5 Apr 2025 01:03:49 -0700 (PDT)
Received: from [192.168.254.12]
 (47-147-225-25.fdr01.snmn.ca.ip.frontiernet.net [47.147.225.25])
 by mail.cs.ucla.edu (Postfix) with ESMTPSA id 3094E3C0149CA;
 Sat,  5 Apr 2025 01:03:49 -0700 (PDT)
Content-Type: multipart/mixed; boundary="------------H2q1gelg9asgz40i29t5buIH"
Message-ID: <4ee5b797-d038-4392-8c43-d3321903f38e@HIDDEN>
Date: Sat, 5 Apr 2025 01:03:48 -0700
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Subject: Re: bug#77535: timeout treats very short durations as `0`
To: 77535 <at> debbugs.gnu.org
References: <CAM6NUi5isNtqv5-UqtA4yMBTZcs1+sMLJ6uQvKn7QpE7pSS0dg@HIDDEN>
 <a1cfeefb-ca6d-42a5-8701-8e8c0d607b87@HIDDEN>
Content-Language: en-US
From: Paul Eggert <eggert@HIDDEN>
Organization: UCLA Computer Science Department
In-Reply-To: <a1cfeefb-ca6d-42a5-8701-8e8c0d607b87@HIDDEN>
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 77535
Cc: nicolas@HIDDEN, P@HIDDEN
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

This is a multi-part message in MIME format.
--------------H2q1gelg9asgz40i29t5buIH
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: quoted-printable

On 2025-04-04 12:27, P=C3=A1draig Brady wrote:
> +=C2=A0 /* Clamp underflow to 1ns, as 0 disables the timeout.=C2=A0 */
> +=C2=A0 if (duration =3D=3D 0 && errno =3D=3D ERANGE)
> +=C2=A0=C2=A0=C2=A0 duration =3D 1e-9;

That isn't exactly right as the 1e-9 double-rounds to 2e-9 when we=20
compute the struct timespec. Also, even with the patch the code=20
mishandles 16777216.000000001 (2**24 + 10**-9) by treating it as if it=20
were just 16777216. These are tiny bugs, I know, but I took up the=20
challenge of doing this things more correctly by installing the attached.
--------------H2q1gelg9asgz40i29t5buIH
Content-Type: text/x-patch; charset=UTF-8;
 name="0001-timeout-round-timeouts-up.patch"
Content-Disposition: attachment;
 filename="0001-timeout-round-timeouts-up.patch"
Content-Transfer-Encoding: base64

RnJvbSBhM2I4NjJlY2UyYWEwNGQ1YzBiNWU5M2ZlYzhlNjZlNDViOWIzNTYwIE1vbiBTZXAg
MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1
PgpEYXRlOiBTYXQsIDUgQXByIDIwMjUgMDA6NTg6MjIgLTA3MDAKU3ViamVjdDogW1BBVENI
XSB0aW1lb3V0OiByb3VuZCB0aW1lb3V0cyB1cApNSU1FLVZlcnNpb246IDEuMApDb250ZW50
LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRGLTgKQ29udGVudC1UcmFuc2Zlci1FbmNv
ZGluZzogOGJpdAoKVGhpcyBoYW5kbGVzIHRpbWVvdXRzIGxpa2UgMTY3NzcyMTYuMDAwMDAw
MDAxIGNvcnJlY3RseTsKZm9ybWVybHkgdGhlIHN1YnNlY29uZCBwYXJ0IG9mIHRoYXQgdGlt
ZW91dCB3YXMgaWdub3JlZC4KKiBib290c3RyYXAuY29uZiAoZ251bGliX21vZHVsZXMpOiBB
ZGQgZmVudi1yb3VuZGluZywgc2lnbmJpdC4KKiBzcmMvbG9jYWwubWsgKHNyY190aW1lb3V0
X0xEQUREKTogQXBwZW5kICQoRkVOVl9ST1VORElOR19MSUJNKS4KKiBzcmMvdGltZW91dC5j
OiBJbmNsdWRlIGZlbnYuaCwgbWF0aC5oLgpEb27igJl0IGluY2x1ZGUgeHN0cnRvZC5oLCBh
cyB4c3RydG9k4oCZcyBjaGVja2luZyBub3cgZ2V0cyBpbiB0aGUgd2F5LgoocGFyc2VfZHVy
YXRpb24pOiBSb3VuZCB1cCB3aGVuIGNhbGxpbmcgY2xfc3RydG9kLgpDaGVjayBmb3IgLTFl
LTEwMDAuICBEb27igJl0IGRvdWJsZS1yb3VuZCAxZS05LgoqIHRlc3RzL3RpbWVvdXQvdGlt
ZW91dC1wYXJhbWV0ZXJzLnNoOiBUZXN0IGZvciAtMC4xLAotMWUtMTAwMCwgMWUtMTAwMC4K
LS0tCiBib290c3RyYXAuY29uZiAgICAgICAgICAgICAgICAgICAgICB8ICAyICsrCiBzcmMv
bG9jYWwubWsgICAgICAgICAgICAgICAgICAgICAgICB8ICAzICsrKwogc3JjL3RpbWVvdXQu
YyAgICAgICAgICAgICAgICAgICAgICAgfCAzOSArKysrKysrKysrKysrKysrKysrKysrKyst
LS0tLQogdGVzdHMvdGltZW91dC90aW1lb3V0LXBhcmFtZXRlcnMuc2ggfCAgNyArKysrKy0K
IDQgZmlsZXMgY2hhbmdlZCwgNDQgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKCmRp
ZmYgLS1naXQgYS9ib290c3RyYXAuY29uZiBiL2Jvb3RzdHJhcC5jb25mCmluZGV4IGM5OTgz
OGU5NS4uM2MxMzNlZjcxIDEwMDY0NAotLS0gYS9ib290c3RyYXAuY29uZgorKysgYi9ib290
c3RyYXAuY29uZgpAQCAtOTksNiArOTksNyBAQCBnbnVsaWJfbW9kdWxlcz0iCiAgIGZkYXRh
c3luYwogICBmZG9wZW4KICAgZmR1dGltZW5zYXQKKyAgZmVudi1yb3VuZGluZwogICBmaWxl
LWhhcy1hY2wKICAgZmlsZS10eXBlCiAgIGZpbGVibG9ja3MKQEAgLTI0Miw2ICsyNDMsNyBA
QCBnbnVsaWJfbW9kdWxlcz0iCiAgIHNldHRpbWUKICAgc2lnMnN0cgogICBzaWdhY3Rpb24K
KyAgc2lnbmJpdAogICBza2lwY2hhcnMKICAgc21hY2sKICAgc3NpemVfdApkaWZmIC0tZ2l0
IGEvc3JjL2xvY2FsLm1rIGIvc3JjL2xvY2FsLm1rCmluZGV4IGZkOWRjODFjMi4uMGE0ZTNh
ZjQzIDEwMDY0NAotLS0gYS9zcmMvbG9jYWwubWsKKysrIGIvc3JjL2xvY2FsLm1rCkBAIC0y
NTcsNiArMjU3LDkgQEAgc3JjX3N0YXRfTERBREQgKz0gJChMSUJfU0VMSU5VWCkKICMgZm9y
IG52bGlzdF9sb29rdXBfdWludDY0X2FycmF5CiBzcmNfc3RhdF9MREFERCArPSAkKExJQl9O
VlBBSVIpCiAKKyMgZm9yIGZlZ2V0cm91bmQsIGZlc2V0cm91bmQKK3NyY190aW1lb3V0X0xE
QUREICs9ICQoRkVOVl9ST1VORElOR19MSUJNKQorCiAjIGZvciBnZXR0aW1lLCBzZXR0aW1l
LCB0ZW1wbmFtZSwgdXRpbWVjbXAsIHV0aW1lbnMKIGNvcHlfbGRhZGQgKz0gJChDTE9DS19U
SU1FX0xJQikKIHNyY19kYXRlX0xEQUREICs9ICQoQ0xPQ0tfVElNRV9MSUIpCmRpZmYgLS1n
aXQgYS9zcmMvdGltZW91dC5jIGIvc3JjL3RpbWVvdXQuYwppbmRleCA2NzU2Y2Q4ODguLjU5
NDdjMTk0MiAxMDA2NDQKLS0tIGEvc3JjL3RpbWVvdXQuYworKysgYi9zcmMvdGltZW91dC5j
CkBAIC00NSw3ICs0NSw5IEBACiAgICBXcml0dGVuIGJ5IFDDoWRyYWlnIEJyYWR5LiAgKi8K
IAogI2luY2x1ZGUgPGNvbmZpZy5oPgorI2luY2x1ZGUgPGZlbnYuaD4KICNpbmNsdWRlIDxn
ZXRvcHQuaD4KKyNpbmNsdWRlIDxtYXRoLmg+CiAjaW5jbHVkZSA8c3RkaW8uaD4KICNpbmNs
dWRlIDxzeXMvdHlwZXMuaD4KICNpbmNsdWRlIDxzaWduYWwuaD4KQEAgLTU2LDcgKzU4LDYg
QEAKIAogI2luY2x1ZGUgInN5c3RlbS5oIgogI2luY2x1ZGUgImNsLXN0cnRvZC5oIgotI2lu
Y2x1ZGUgInhzdHJ0b2QuaCIKICNpbmNsdWRlICJzaWcyc3RyLmgiCiAjaW5jbHVkZSAib3Bl
cmFuZDJzaWcuaCIKICNpbmNsdWRlICJxdW90ZS5oIgpAQCAtMzU2LDEyICszNTcsMjkgQEAg
YXBwbHlfdGltZV9zdWZmaXggKGRvdWJsZSAqeCwgY2hhciBzdWZmaXhfY2hhcikKIHN0YXRp
YyBkb3VibGUKIHBhcnNlX2R1cmF0aW9uIChjaGFyIGNvbnN0ICpzdHIpCiB7Ci0gIGRvdWJs
ZSBkdXJhdGlvbjsKLSAgY2hhciBjb25zdCAqZXA7CisgIC8qIElmIHBvc3NpYmxlIHRlbGwg
c3RydG9kIHRvIHJvdW5kIHVwLCBzbyB0aGF0IHdlIGFsd2F5cyB3YWl0IGF0CisgICAgIGxl
YXN0IGFzIGxvbmcgYXMgU1RSIHNwZWNpZmllcy4gIEFsdGhvdWdoIFN0YW5kYXJkIEMgcmVx
dWlyZXMKKyAgICAgRkVOVl9BQ0NFU1MgT04sIGRvbid0IGJvdGhlciBpZiB1c2luZyBHQ0Mg
YXMgaXQgd2FybnMuICAqLworI2lmZGVmIEZFX1VQV0FSRAorIyBpZiAhZGVmaW5lZCBfX0dO
VUNfXyAmJiAxOTk5MDEgPD0gX19TVERDX1ZFUlNJT05fXworIyAgcHJhZ21hIFNUREMgRkVO
Vl9BQ0NFU1MgT04KKyMgZW5kaWYKKyAgaW50IHJvdW5kID0gZmVnZXRyb3VuZCAoKTsKKyAg
ZmVzZXRyb3VuZCAoRkVfVVBXQVJEKTsKKyNlbmRpZgorCisgIGNoYXIgKmVwOworICBkb3Vi
bGUgZHVyYXRpb24gPSBjbF9zdHJ0b2QgKHN0ciwgJmVwKTsKKworI2lmZGVmIEZFX1VQV0FS
RAorICBmZXNldHJvdW5kIChyb3VuZCk7CisjZW5kaWYKIAotICBpZiAoISAoeHN0cnRvZCAo
c3RyLCAmZXAsICZkdXJhdGlvbiwgY2xfc3RydG9kKSB8fCBlcnJubyA9PSBFUkFOR0UpCisg
IGlmIChlcCA9PSBzdHIKICAgICAgIC8qIE5vbm5lZ2F0aXZlIGludGVydmFsLiAgKi8KICAg
ICAgIHx8ICEgKDAgPD0gZHVyYXRpb24pCisgICAgICAvKiBUaGUgaW50ZXJ2YWwgZGlkIG5v
dCB1bmRlcmZsb3cgdG8gLTAuICAqLworICAgICAgfHwgKHNpZ25iaXQgKGR1cmF0aW9uKSAm
JiBlcnJubyA9PSBFUkFOR0UpCiAgICAgICAvKiBObyBleHRyYSBjaGFycyBhZnRlciB0aGUg
bnVtYmVyIGFuZCBhbiBvcHRpb25hbCBzLG0saCxkIGNoYXIuICAqLwogICAgICAgfHwgKCpl
cCAmJiAqKGVwICsgMSkpCiAgICAgICAvKiBDaGVjayBhbnkgc3VmZml4IGNoYXIgYW5kIHVw
ZGF0ZSB0aW1lb3V0IGJhc2VkIG9uIHRoZSBzdWZmaXguICAqLwpAQCAtMzcxLDkgKzM4OSwx
OCBAQCBwYXJzZV9kdXJhdGlvbiAoY2hhciBjb25zdCAqc3RyKQogICAgICAgdXNhZ2UgKEVY
SVRfQ0FOQ0VMRUQpOwogICAgIH0KIAotICAvKiBDbGFtcCB1bmRlcmZsb3cgdG8gMW5zLCBh
cyAwIGRpc2FibGVzIHRoZSB0aW1lb3V0LiAgKi8KKyAgLyogRG8gbm90IGxldCB0aGUgZHVy
YXRpb24gdW5kZXJmbG93IHRvIDAsIGFzIDAgZGlzYWJsZXMgdGhlIHRpbWVvdXQuCisgICAg
IFVzZSAyKiotMzAgaW5zdGVhZCBvZiAwOyBzZXR0aW1lb3V0IHdpbGwgcm91bmQgaXQgdXAg
dG8gMSBucywKKyAgICAgd2hlcmVhcyAxZS05IG1pZ2h0IGRvdWJsZS1yb3VuZCB0byAyIG5z
LgorCisgICAgIElmIEZFX1VQV0FSRCBpcyBkZWZpbmVkLCB0aGlzIGNvZGUgaXMgbm90IG5l
ZWRlZCBvbiBnbGliYyBhcyBpdHMKKyAgICAgc3RydG9kIHJvdW5kcyB1cHdhcmQgY29ycmVj
dGx5LiAgQWx0aG91Z2ggdGhpcyBjb2RlIG1pZ2h0IG5vdCBiZQorICAgICBuZWVkZWQgb24g
bm9uLWdsaWJjIHBsYXRmb3JtcyB0b28sIGl0J3MgdG9vIG11Y2ggdHJvdWJsZSB0bworICAg
ICB3b3JyeSBhYm91dCB0aGF0LiAgKi8KKyNpZiAhZGVmaW5lZCBGRV9VUFdBUkQgfHwgIWRl
ZmluZWQgX19HTElCQ19fCiAgIGlmIChkdXJhdGlvbiA9PSAwICYmIGVycm5vID09IEVSQU5H
RSkKLSAgICBkdXJhdGlvbiA9IDFlLTk7CisgICAgZHVyYXRpb24gPSA5LjMxMzIyNTc0NjE1
NDc4NWUtMTA7CisjZW5kaWYKIAogICByZXR1cm4gZHVyYXRpb247CiB9CmRpZmYgLS1naXQg
YS90ZXN0cy90aW1lb3V0L3RpbWVvdXQtcGFyYW1ldGVycy5zaCBiL3Rlc3RzL3RpbWVvdXQv
dGltZW91dC1wYXJhbWV0ZXJzLnNoCmluZGV4IDg0YjQ1MGU5MC4uNDA4ODQ2MjYyIDEwMDc1
NQotLS0gYS90ZXN0cy90aW1lb3V0L3RpbWVvdXQtcGFyYW1ldGVycy5zaAorKysgYi90ZXN0
cy90aW1lb3V0L3RpbWVvdXQtcGFyYW1ldGVycy5zaApAQCAtMjMsOCArMjMsMTAgQEAgZ2V0
bGltaXRzXwogCiAjIGludGVybmFsIGVycm9ycyBhcmUgMTI1LCBkaXN0aW5jdCBmcm9tIGV4
ZWN1dGlvbiBmYWlsdXJlCiAKLSMgaW52YWxpZCB0aW1lb3V0CisjIGludmFsaWQgdGltZW91
dHMKIHJldHVybnNfIDEyNSB0aW1lb3V0IGludmFsaWQgc2xlZXAgMCB8fCBmYWlsPTEKK3Jl
dHVybnNfIDEyNSB0aW1lb3V0ICcgLTAuMScgc2xlZXAgMCB8fCBmYWlsPTEKK3JldHVybnNf
IDEyNSB0aW1lb3V0ICcgLTFlLTEwMDAwJyBzbGVlcCAwIHx8IGZhaWw9MQogCiAjIGludmFs
aWQga2lsbCBkZWxheQogcmV0dXJuc18gMTI1IHRpbWVvdXQgLS1raWxsLWFmdGVyPWludmFs
aWQgMSBzbGVlcCAwIHx8IGZhaWw9MQpAQCAtMzgsNiArNDAsOSBAQCB0aW1lb3V0IDEwLjM0
IHNsZWVwIDAgfHwgZmFpbD0xCiAjIG5hbm9zZWNvbmRzIHBvdGVudGlhbGx5IHN1cHBvcnRl
ZAogdGltZW91dCA5Ljk5OTk5OTk5OSBzbGVlcCAwIHx8IGZhaWw9MQogCisjIHJvdW5kIHVu
ZGVyZmxvdyB1cCB0byAxIG5zCityZXR1cm5zXyAxMjQgdGltZW91dCAxZS0xMDAwMCBzbGVl
cCAxIHx8IGZhaWwKKwogIyBpbnZhbGlkIHNpZ25hbCBzcGVjCiByZXR1cm5zXyAxMjUgdGlt
ZW91dCAtLXNpZ25hbD1pbnZhbGlkIDEgc2xlZXAgMCB8fCBmYWlsPTEKIAotLSAKMi40NS4y
Cgo=

--------------H2q1gelg9asgz40i29t5buIH--




Information forwarded to bug-coreutils@HIDDEN:
bug#77535; Package coreutils. Full text available.

Message received at 77535-done <at> debbugs.gnu.org:


Received: (at 77535-done) by debbugs.gnu.org; 5 Apr 2025 05:40:59 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Sat Apr 05 01:40:59 2025
Received: from localhost ([127.0.0.1]:41173 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u0wH4-0002I8-IJ
	for submit <at> debbugs.gnu.org; Sat, 05 Apr 2025 01:40:59 -0400
Received: from mail-il1-f182.google.com ([209.85.166.182]:48523)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <nicolas.boichat@HIDDEN>)
 id 1u0n7C-0003uD-77
 for 77535-done <at> debbugs.gnu.org; Fri, 04 Apr 2025 15:54:10 -0400
Received: by mail-il1-f182.google.com with SMTP id
 e9e14a558f8ab-3d5e43e4725so7130125ab.1
 for <77535-done <at> debbugs.gnu.org>; Fri, 04 Apr 2025 12:54:10 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1743796444; x=1744401244;
 h=content-transfer-encoding:cc:to:subject:message-id:date:from
 :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc
 :subject:date:message-id:reply-to;
 bh=NX4V2XwDxOHlg7ch2xMNiW9sEdY6gTd4uZmai9eBGec=;
 b=r24eEqPU/0dtcA0oMB8ACyhk9wih3FlXKoD54fh1qLQyPs8DoRCZz5F+6IuOTvL0uA
 AGQaGKOeiyhRIGTfwgKpy2zhXE1q1jWn6fz55hB0O+VhvgsvsSySZn3gPQ/LzDnZ/mAW
 1BquNWwiDllUruAW3hnUklclDwLi3K4y9Q87MImSzgc9ngsU+rpBChPd8ZaHD+tgghGL
 rnCs7zvWvHWo+KVBYABYLkev72A4+5UDVFOFC6TNPwY0ZNdk6MPDosSdlQZL1HCF6UEq
 nW+zjDTV8na6wrMomUjPaesdnYLANX55lYukGlvKCmYfvtGI9R/X7ZH1OT68yRWQXgJz
 puUw==
X-Gm-Message-State: AOJu0YxsE3ZTQSK1DOWfiOUsV8XWbAznb9itW4aKWJI3NwbUcLHFSxUL
 Moqr5xeHCv/ufgJk1paGCA2b0qeKYsQudzZExLmSOmsMOcg1D+uI35nzyOIvgmwEzYtEfljdyON
 nr+1iIbtZfKUP2VmpkKuymaLTkbi7+K+B
X-Gm-Gg: ASbGncvJu6BU97FaMSujXn2J279y8a+S0UWw/EaT+2TX8MIVi4wYfIx6qPMjo27QY3O
 MvUIgSdSWFulQhMdW7q/m3lFPuaB7goOGob7z1spARVUVxwcoRxJIwpWhGzNR5tFoFVXFnSFgv6
 9qRHfDIJJKdLM8HTW3WmBEPUcX
X-Google-Smtp-Source: AGHT+IECWTaiFCD717PaTOJwtYkitPuzxldv6UkQ8kDrotVzw4xqBoSGqNTGBl9mThuVLYetT73hZTKufg6PBzjtfEA=
X-Received: by 2002:a92:cd84:0:b0:3d4:414c:6073 with SMTP id
 e9e14a558f8ab-3d6ec53372dmr9186905ab.8.1743796444280; Fri, 04 Apr 2025
 12:54:04 -0700 (PDT)
MIME-Version: 1.0
References: <CAM6NUi5isNtqv5-UqtA4yMBTZcs1+sMLJ6uQvKn7QpE7pSS0dg@HIDDEN>
 <a1cfeefb-ca6d-42a5-8701-8e8c0d607b87@HIDDEN>
In-Reply-To: <a1cfeefb-ca6d-42a5-8701-8e8c0d607b87@HIDDEN>
From: Nicolas Boichat <nicolas@HIDDEN>
Date: Fri, 4 Apr 2025 21:53:53 +0200
X-Gm-Features: ATxdqUHeL-MTT9nqiXGnchwWhM6oCzl53jQeMlBqHI_hHLAFxHSkLJ2LbpCaO0s
Message-ID: <CAM6NUi5KwiB0oejknc817CvGetiY8aLAh-bauE6_L+1NcjyxhQ@HIDDEN>
Subject: Re: bug#77535: timeout treats very short durations as `0`
To: =?UTF-8?Q?P=C3=A1draig_Brady?= <P@HIDDEN>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 77535-done
X-Mailman-Approved-At: Sat, 05 Apr 2025 01:40:57 -0400
Cc: 77535-done <at> debbugs.gnu.org
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On Fri, 4 Apr 2025 at 21:27, P=C3=A1draig Brady <P@HIDDEN> wrote:
>
> On 04/04/2025 16:26, Nicolas Boichat wrote:
> > Hi,
> >
> > Version: timeout (GNU coreutils) 9.6, Archlinux, x86-64.
> >
> > While playing with different duration parameters to `timeout`, I
> > noticed that extremely short durations, like `1e-3000`, are rounded
> > down to `0`. The problem is that `0` has a special meaning (disabling
> > the timeout), so I don't think this is desired.
> >
> > All of these commands exit immediately:
> > ```
> > timeout 0.0001 cat
> > timeout 1e-100 cat
> > timeout 1e-300 cat
> > timeout 1e-323 cat
> > ```
> >
> > But these never exits:
> > ```
> > timeout 1e-324 cat
> > timeout 1e-3000 cat
> > ```
> >
> > As if we had typed:
> > ```
> > timeout 0 cat
> > ```
> >
> > I think there is some logic in `printf` to handle float parsing
> > underflow, so maybe this can be reused in `timeout` as well.
>
> The following should avoid this issue.
>
> Marking this as done.

That was fast! Thanks!

>
> thanks!
> P=C3=A1draig
>
> diff --git a/src/timeout.c b/src/timeout.c
> index 578d71070..6756cd888 100644
> --- a/src/timeout.c
> +++ b/src/timeout.c
> @@ -371,6 +371,10 @@ parse_duration (char const *str)
>         usage (EXIT_CANCELED);
>       }
>
> +  /* Clamp underflow to 1ns, as 0 disables the timeout.  */
> +  if (duration =3D=3D 0 && errno =3D=3D ERANGE)
> +    duration =3D 1e-9;
> +
>     return duration;
>   }
>




Information forwarded to bug-coreutils@HIDDEN:
bug#77535; Package coreutils. Full text available.

Message received at 77535-done <at> debbugs.gnu.org:


Received: (at 77535-done) by debbugs.gnu.org; 4 Apr 2025 19:28:07 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Apr 04 15:28:07 2025
Received: from localhost ([127.0.0.1]:40189 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u0mhy-0007y6-M1
	for submit <at> debbugs.gnu.org; Fri, 04 Apr 2025 15:28:06 -0400
Received: from mail-wr1-x430.google.com ([2a00:1450:4864:20::430]:57760)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.84_2) (envelope-from <pixelbeat@HIDDEN>)
 id 1u0mhv-0007xU-7i
 for 77535-done <at> debbugs.gnu.org; Fri, 04 Apr 2025 15:28:03 -0400
Received: by mail-wr1-x430.google.com with SMTP id
 ffacd0b85a97d-39ac9aea656so2138200f8f.3
 for <77535-done <at> debbugs.gnu.org>; Fri, 04 Apr 2025 12:28:03 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=gmail.com; s=20230601; t=1743794877; x=1744399677; darn=debbugs.gnu.org;
 h=content-transfer-encoding:in-reply-to:from:content-language
 :references:to:subject:user-agent:mime-version:date:message-id
 :sender:from:to:cc:subject:date:message-id:reply-to;
 bh=TcrGkF78pGioQb/5ZONU/YBobvsqcKnubgUjMn6Rl34=;
 b=lAv880KTy3tJuCM8JdaEGqyQPDpdb0gTMkGB5pWTVK26xV39tfaq9muA5B1A99N92V
 wUNGUt5jvSiCWRqhDCIQgEZwNkCdT63UGPbip8f3C+c7dfqlqJRwoEIv9ord0sGup4Re
 2AQ29xChaaHnhSC4SBkizN+vyYD+kO0fTMUx6zYj2tXaGSTQi+XbpXWmhdeiCu4AF0ES
 NQvkI0CmP3MS9O8n4etLpzWGExwK7KGC7PWsJbBo/EUXe5273ZHDNSpQwuC2jHLVOqos
 J0tlPAJJykTMyqd8XRmarP46gh3+Jm44yVQfd4/xIRWAWa2fTa6OxOuHj+nKrDTQf8mS
 sgVw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1743794877; x=1744399677;
 h=content-transfer-encoding:in-reply-to:from:content-language
 :references:to:subject:user-agent:mime-version:date:message-id
 :sender:x-gm-message-state:from:to:cc:subject:date:message-id
 :reply-to;
 bh=TcrGkF78pGioQb/5ZONU/YBobvsqcKnubgUjMn6Rl34=;
 b=hyJy8g+fNzXp1hoGPB9Qs+sFCNT3TUNSghkoqrmTM3hJkdrfBeLwsBBhprihFSKq9C
 KnuJcYJc8BSMfMVPFN76C8uAV32BZKCySNnvJTYVIDmqbAzhtfuvnlTt30biS9cIKMQd
 ByjrmfBf6v2EgPz8YJDkLVI90LVGgY4YLirJyK69mm6KAoOpzQ20reawPMHnRWgDRkv1
 9XdVzqKdaRIv1S+lGvw/skbyJuugl/WV3aCQNse/Gi4PdZ40zTnUs3wjXUJNexQvqcUT
 w+kHVaX0XUQAuvXGEbmlFWE8yLnrwxf4mfDV7qaW34bedxGI5n3++arP9l3iC5itL4bh
 dP7Q==
X-Forwarded-Encrypted: i=1;
 AJvYcCWqlBW6Bhspt/2OuuPNjOxJ1qZjSTEuzD8SMMjEQix9MVeEcaqo8XFKynxR7PYQGIc0tzem7KNr+Ni1 <at> debbugs.gnu.org
X-Gm-Message-State: AOJu0Yz/x/g1b0bQSKamq/eQGCuqv4FL8BKt+91dlNvhOh45IwQEz+w6
 jOn5d8qmdjvZDoDsppO5H2RgsrIWWBlhsiFzKcuLWwGoyEtb8muDAELJ/9eA6rw=
X-Gm-Gg: ASbGnctY8JO/Arlrg9LCQVgBjPcBoIfivX9HT7Ak+wFToo/wreMa/vdvUAkggIWJSlU
 FYoNlPFHCPgp15W/hA4V2dbdCZ6dCz8k9DkPMGLL6nPLc8qf85ivM9iy6LbQUyMBAdteDoIHJCg
 vHOoNkafZUgTnqg0YO5BdtvRQRKcRDjIOZmPti1/1BaDsgv+e8agSjTqyc45I2vPbGMp3VPHYHv
 gtg1qpmMw+9GX/j4BhOrjmZUF9WZguLyYvv0/Kgco3ir7TBT40zJd4sdgsFZ51a5xtxQq45pFJ7
 LGL9pZhnw1XJMdg28Uo1PInJBARwThq3DWHWyR+b/lkqSK2pC1AV8nFf/PL60CpMybgcaBRPEI3
 SjXm+EbZtH0ZZ5sA50yBwcRmaCL7TQCluMf8=
X-Google-Smtp-Source: AGHT+IF0BG7n4Noss0G+N5uZzrF7tR7/gEOMd+7yf62lmD80EnH0RGf2Ib4/b+LTpGR9kf/K9J2xig==
X-Received: by 2002:a5d:588f:0:b0:39c:1efd:ed8f with SMTP id
 ffacd0b85a97d-39d14662e4dmr3134696f8f.50.1743794876599; 
 Fri, 04 Apr 2025 12:27:56 -0700 (PDT)
Received: from [192.168.1.31]
 (86-44-211-146-dynamic.agg2.lod.rsl-rtd.eircom.net. [86.44.211.146])
 by smtp.googlemail.com with ESMTPSA id
 ffacd0b85a97d-39c301b7933sm5239401f8f.54.2025.04.04.12.27.55
 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128);
 Fri, 04 Apr 2025 12:27:56 -0700 (PDT)
Message-ID: <a1cfeefb-ca6d-42a5-8701-8e8c0d607b87@HIDDEN>
Date: Fri, 4 Apr 2025 20:27:55 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird Beta
Subject: Re: bug#77535: timeout treats very short durations as `0`
To: Nicolas Boichat <nicolas@HIDDEN>, 77535-done <at> debbugs.gnu.org
References: <CAM6NUi5isNtqv5-UqtA4yMBTZcs1+sMLJ6uQvKn7QpE7pSS0dg@HIDDEN>
Content-Language: en-US
From: =?UTF-8?Q?P=C3=A1draig_Brady?= <P@HIDDEN>
In-Reply-To: <CAM6NUi5isNtqv5-UqtA4yMBTZcs1+sMLJ6uQvKn7QpE7pSS0dg@HIDDEN>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Spam-Score: 0.0 (/)
X-Debbugs-Envelope-To: 77535-done
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

On 04/04/2025 16:26, Nicolas Boichat wrote:
> Hi,
> 
> Version: timeout (GNU coreutils) 9.6, Archlinux, x86-64.
> 
> While playing with different duration parameters to `timeout`, I
> noticed that extremely short durations, like `1e-3000`, are rounded
> down to `0`. The problem is that `0` has a special meaning (disabling
> the timeout), so I don't think this is desired.
> 
> All of these commands exit immediately:
> ```
> timeout 0.0001 cat
> timeout 1e-100 cat
> timeout 1e-300 cat
> timeout 1e-323 cat
> ```
> 
> But these never exits:
> ```
> timeout 1e-324 cat
> timeout 1e-3000 cat
> ```
> 
> As if we had typed:
> ```
> timeout 0 cat
> ```
> 
> I think there is some logic in `printf` to handle float parsing
> underflow, so maybe this can be reused in `timeout` as well.

The following should avoid this issue.

Marking this as done.

thanks!
Pádraig

diff --git a/src/timeout.c b/src/timeout.c
index 578d71070..6756cd888 100644
--- a/src/timeout.c
+++ b/src/timeout.c
@@ -371,6 +371,10 @@ parse_duration (char const *str)
        usage (EXIT_CANCELED);
      }

+  /* Clamp underflow to 1ns, as 0 disables the timeout.  */
+  if (duration == 0 && errno == ERANGE)
+    duration = 1e-9;
+
    return duration;
  }





Notification sent to Nicolas Boichat <nicolas@HIDDEN>:
bug acknowledged by developer. Full text available.
Reply sent to Pádraig Brady <P@HIDDEN>:
You have taken responsibility. Full text available.

Message received at submit <at> debbugs.gnu.org:


Received: (at submit) by debbugs.gnu.org; 4 Apr 2025 16:12:15 +0000
From debbugs-submit-bounces <at> debbugs.gnu.org Fri Apr 04 12:12:15 2025
Received: from localhost ([127.0.0.1]:39665 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1u0jeR-0008HO-7l
	for submit <at> debbugs.gnu.org; Fri, 04 Apr 2025 12:12:15 -0400
Received: from lists.gnu.org ([2001:470:142::17]:43010)
 by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.84_2) (envelope-from <nicolas.boichat@HIDDEN>)
 id 1u0ix5-00067z-5d
 for submit <at> debbugs.gnu.org; Fri, 04 Apr 2025 11:27:27 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <nicolas.boichat@HIDDEN>)
 id 1u0iwq-00066D-QB
 for bug-coreutils@HIDDEN; Fri, 04 Apr 2025 11:27:13 -0400
Received: from mail-io1-f42.google.com ([209.85.166.42])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <nicolas.boichat@HIDDEN>)
 id 1u0iwp-0005If-6M
 for bug-coreutils@HIDDEN; Fri, 04 Apr 2025 11:27:12 -0400
Received: by mail-io1-f42.google.com with SMTP id
 ca18e2360f4ac-85b4277d03fso81705639f.1
 for <bug-coreutils@HIDDEN>; Fri, 04 Apr 2025 08:27:10 -0700 (PDT)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20230601; t=1743780429; x=1744385229;
 h=to:subject:message-id:date:from:mime-version:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=kMIAk8BIWY1vriXK6/7sVpHCFuZdumn0ziOYcRZh5wg=;
 b=VdViJk6eKzdjmOQ8e2RixVPrUpjeP1stzk1v5k5kMBsebRqmSuchiR/ZSyuD08INEV
 nuDTHkcvq3by7YyDDyIwRmEMCjcC6QZLllOIXTpek7rjmtWwAlbOSigq3x6k0YcsYDgT
 VAl8B+/vf2Yoz6DjyaWrERe1m++SEkVFrvZtm1Tq7obrcoyNLy+jVEhXptLHJLssiYk0
 hdTiK7tIZ21sm7PlLcdtKrjVZQCVNClCOC56/nf2rgUOQ7N3fYS9kAhjhLjWHl4qL2PX
 3aTkeYwqVxripHaCQ3QWXHKvn+JDNGS2IQa1YRkA/LCG8K6l3PgLpHGhV5T0VbCYIUyU
 j8Eg==
X-Gm-Message-State: AOJu0YzjncONw5Pbrpb20Wc+4IyqN5F7PvcFIKRQo6cnH6hDYa22O1I7
 LLxKPtLJJlpccwHocFdemXx/fVS7RiaRKkEhmC8FCNbwUEPsWFiQBNwnrkD2pnWjD7HY0OXRkCg
 EW+4y3DL+q8I+z7/owBJptltl53luvBPPjEY=
X-Gm-Gg: ASbGncve+HU+XwWkLd94E876hDbcisZQCiCwwPVLJwTK8SNZEWrKuv1tYWPsOTeVwLu
 6GKSpEVZpxPEDh/e5sptbCD9s1Qy0oOz2pIMAOLxRzEO5uYUrdU8n15vqHm/5/Hm8GNf7V49Hbv
 fjpD4T1eGEt6OrjvGJEWVbf+Zgy43vAzqf34E=
X-Google-Smtp-Source: AGHT+IGCEUgbNbaSUg+ijpRv0pQg+j6Ypa7RBrPPFwIyvyF/PLYYCodJs3relLklUxHYbQNZoOGaa3OipvrDASwceBg=
X-Received: by 2002:a05:6e02:3701:b0:3ce:4b12:fa17 with SMTP id
 e9e14a558f8ab-3d6e3f7f812mr45735545ab.19.1743780428844; Fri, 04 Apr 2025
 08:27:08 -0700 (PDT)
MIME-Version: 1.0
From: Nicolas Boichat <nicolas@HIDDEN>
Date: Fri, 4 Apr 2025 17:26:56 +0200
X-Gm-Features: ATxdqUEoSIp3-7q8UzAhlw1H5z2kM9CSaO2hZ_WSwYIA0wWPqIMo8N1xHgLhNZ8
Message-ID: <CAM6NUi5isNtqv5-UqtA4yMBTZcs1+sMLJ6uQvKn7QpE7pSS0dg@HIDDEN>
Subject: timeout treats very short durations as `0`
To: bug-coreutils@HIDDEN
Content-Type: text/plain; charset="UTF-8"
Received-SPF: pass client-ip=209.85.166.42;
 envelope-from=nicolas.boichat@HIDDEN; helo=mail-io1-f42.google.com
X-Spam_score_int: -18
X-Spam_score: -1.9
X-Spam_bar: -
X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9,
 FREEMAIL_FORGED_FROMDOMAIN=0.001, FREEMAIL_FROM=0.001,
 HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_NONE=-0.0001,
 RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001,
 RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 1.0 (+)
X-Debbugs-Envelope-To: submit
X-Mailman-Approved-At: Fri, 04 Apr 2025 12:12:13 -0400
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.0 (/)

Hi,

Version: timeout (GNU coreutils) 9.6, Archlinux, x86-64.

While playing with different duration parameters to `timeout`, I
noticed that extremely short durations, like `1e-3000`, are rounded
down to `0`. The problem is that `0` has a special meaning (disabling
the timeout), so I don't think this is desired.

All of these commands exit immediately:
```
timeout 0.0001 cat
timeout 1e-100 cat
timeout 1e-300 cat
timeout 1e-323 cat
```

But these never exits:
```
timeout 1e-324 cat
timeout 1e-3000 cat
```

As if we had typed:
```
timeout 0 cat
```

I think there is some logic in `printf` to handle float parsing
underflow, so maybe this can be reused in `timeout` as well.

Thanks,




Acknowledgement sent to Nicolas Boichat <nicolas@HIDDEN>:
New bug report received and forwarded. Copy sent to bug-coreutils@HIDDEN. Full text available.
Report forwarded to bug-coreutils@HIDDEN:
bug#77535; Package coreutils. Full text available.
Please note: This is a static page, with minimal formatting, updated once a day.
Click here to see this page with the latest information and nicer formatting.
Last modified: Sat, 5 Apr 2025 19:45:01 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.