From debbugs-submit-bounces@debbugs.gnu.org Wed Feb 12 08:55:20 2025 Received: (at submit) by debbugs.gnu.org; 12 Feb 2025 13:55:20 +0000 Received: from localhost ([127.0.0.1]:33341 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tiDCy-0007mo-0k for submit@debbugs.gnu.org; Wed, 12 Feb 2025 08:55:20 -0500 Received: from lists.gnu.org ([2001:470:142::17]:44072) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tiDCv-0007mV-7F for submit@debbugs.gnu.org; Wed, 12 Feb 2025 08:55:17 -0500 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 ) id 1tiDCo-0003E1-DU for bug-guile@gnu.org; Wed, 12 Feb 2025 08:55:10 -0500 Received: from mail-pl1-x632.google.com ([2607:f8b0:4864:20::632]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tiDCm-0004yK-GU for bug-guile@gnu.org; Wed, 12 Feb 2025 08:55:10 -0500 Received: by mail-pl1-x632.google.com with SMTP id d9443c01a7336-220c92c857aso4243735ad.0 for ; Wed, 12 Feb 2025 05:55:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1739368506; x=1739973306; darn=gnu.org; h=mime-version:message-id:date:subject:to:from:from:to:cc:subject :date:message-id:reply-to; bh=5r9shoUn+P3YUvikFJa/n1m6edrFZk8oAht9MK6go/E=; b=m9y5YDdt420QL5iyhxNh6PZZlsLQxDNeyGk4jaHRj7WK40wC8w8pOP127LGTaY2W4l 2EEHv++pd5+bNICnyZUKhANZiqN9A+U/CMJ9pTVCpKjdweB1ThUtZt9JTI2CefDOjhyq 8XpU/B9QyIgadoWIuHt/9KnkMYy1sFGHDk2kuv6E3ow61SZ+AfcdZJwYuVfPDDzNPcrP hWWus4vBnrLu0g44NVqV5LCr8YgrPZTNX+8hVWBXpkIO4HNOSCL40FDI/apuCZD4NyFU s3iE+ID9AXlni2R47Wi8zsZslap1PPLDHjmz2yGqw4PU6HwPM663rQuJiviZTeXFYk2c XSAw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1739368506; x=1739973306; h=mime-version:message-id:date:subject:to:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=5r9shoUn+P3YUvikFJa/n1m6edrFZk8oAht9MK6go/E=; b=rGcwIKcbM4AF8y0KhS7JCO0dsRjK9czYSHSwot9bN/dSWNM0Enjyh4MrPe8s2aUJyd xXL4M4Hn2QIiZl1+R+e5UJQetzIGQQyovC5cvKhhhSPxc/Y8GdO2xvmSgjlYz/V4uW/x V0pXb7lS724pIMS+8srVJ58Y0trdwRpY3Z4vy+cvmrv3hKt+dOpwJRpzGs8V6qObtBIG JrBeXd6gFg+o9UI1juukHPNJDQK8EEe7r00ECQBM7ZJGvUWq8HwCm60YIljJ7WOkEVtC 3N5yrsXU62yAVGz/Io06cd70PXDDadjiwbxr7ZHbAKoDfbZ9E9MAc4yk2Fn0T6jm+aBm pplw== X-Gm-Message-State: AOJu0Yw1VKmY5nrhbHc26xhHxMRdZSRf9rKRUJi9F1OHjhCCsG9Eug8X xu65rIl6Lx2UIBAfHuny36N6/GLhRQfzZks9gnBi1x4JED6S4i27fClceA== X-Gm-Gg: ASbGncu+UuXcMBehe+8vCRyw65aoY3kHVTTfykHeqKOBsfXAAU4bdcGoMxER0cTFnhd OvQ0hMLA0s5cx0XlRQ3hAJkkt17rGCBrZe3RHLcyjGa7IGf1fZ7FxBnJV/4tRK8r8ijZpNJMdBN jYGItqMm4ZLhzmCG0srRXAEqrcdR0m79d/O5ORMPvN+lNDNGnqj2iq43KGPrNaBtUs7xSjPyvO6 s1L6AaIUs8z2xV80fj1pfZpdSL21F8zLRXARPf1PiUUU8Ci7oOR3G+288A8z2tKrvQ5fAkybvc9 +oZNSa8m3JU6 X-Google-Smtp-Source: AGHT+IEa2dJdtS1YJcLC+M/EIR0rTOQn58YkgNrQjdFnN3Ym6BXVSe9KYgKkhKOzboVbCLvehwBzVg== X-Received: by 2002:a17:903:144b:b0:215:6c5f:d142 with SMTP id d9443c01a7336-220bc26284dmr50820345ad.20.1739368505895; Wed, 12 Feb 2025 05:55:05 -0800 (PST) Received: from terra ([2405:6586:be0:0:c8ff:1707:9b9:af89]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-21f3650cd10sm113425505ad.31.2025.02.12.05.55.04 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 12 Feb 2025 05:55:05 -0800 (PST) From: Maxim Cournoyer To: bug-guile Subject: SRFI 19's current-time-monotonic is not actually monotonic Date: Wed, 12 Feb 2025 22:54:53 +0900 Message-ID: <87zfirp8sy.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain Received-SPF: pass client-ip=2607:f8b0:4864:20::632; envelope-from=maxim.cournoyer@gmail.com; helo=mail-pl1-x632.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, 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-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) Hi, Seen in srfi-19.scm: --8<---------------cut here---------------start------------->8--- ;; -- we define it to be the same as TAI. ;; A different implementation of current-time-monotonic ;; will require rewriting all of the time-monotonic converters, ;; of course. (define (current-time-monotonic) ;; Guile monotonic and TAI times are the same. (let ((tai (current-time-tai))) (make-time time-monotonic (time-nanosecond tai) (time-second tai)))) --8<---------------cut here---------------end--------------->8--- which as far as I can see uses CLOCK_REALTIME and not CLOCK_MONOTONIC as it relies on gettimeofday(2), which has this note in its documentation: The time returned by gettimeofday() is affected by discontinuous jumps in the system time (e.g., if the system administrator manually changes the system time). If you need a monotonically increasing clock, see clock_gettime(2). -- Thanks, Maxim