From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [63.128.21.124]) by sourceware.org (Postfix) with ESMTP id 1CF8D3857C7B for ; Fri, 30 Oct 2020 16:58:56 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 1CF8D3857C7B Received: from mail-qt1-f197.google.com (mail-qt1-f197.google.com [209.85.160.197]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-486-P6qL0depMxyqKh9UyI07rg-1; Fri, 30 Oct 2020 12:58:53 -0400 X-MC-Unique: P6qL0depMxyqKh9UyI07rg-1 Received: by mail-qt1-f197.google.com with SMTP id 2so4374169qtb.5 for ; Fri, 30 Oct 2020 09:58:53 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:organization :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=gxfqukHcbkTD7X3ox1ou1pebvrWuXAmJeGcia/vnGj8=; b=KFcIGAFjAZKapa5ia9uj30VVOWcNRAbgbNz3Hwf5VGTRrGljwzDOxD8qlLg1TDi42T l4SNdmECFVSWiT5HKSuZ0R9DNMOD/vfNQMwqGxqjtl3S1noKRGjYrMAkqKRVL1clbkR8 oT4jgycL6ve7YTYu9DKsDUTCaYA0shi3VpPGWoAs9o5zDLdeZKS2VyeL7Sb7n0n0lVl2 9URHRatdlu/qcxvxxLme7Xi7ZKZ4Pp8JTuYvKexisKgwyezTBDFIFPMbp4XrZ5tuVb++ AgHEBt0Q2hpH3dts0SnxdwUuPJa36nmQ8GrrKGFA6nslfgCOs0sT5v4lTk30YBsVPeP8 w8rg== X-Gm-Message-State: AOAM533fvCBPzw1Li6bXnNweoLBsZJWUTFTiG7/KQ3rVIoNTZ5I1yqRG Vas0E75WihcseU1Fth2bjGrhxPTRiuH8z46+Afe3E3JYpCQFpH4Zvk7e2aMLvVSJbIxvaQHoNZV VWeYxbMvZvmCFVyPXtk4O X-Received: by 2002:ad4:4841:: with SMTP id t1mr9144560qvy.34.1604077133292; Fri, 30 Oct 2020 09:58:53 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwYy+y4KegMcHE38+ry6q9jqqq9aaJ0lz4oZAPJv96jST8zKUGewygF8ZOWBX+WQqa+NZzz+Q== X-Received: by 2002:ad4:4841:: with SMTP id t1mr9144540qvy.34.1604077133087; Fri, 30 Oct 2020 09:58:53 -0700 (PDT) Received: from [192.168.1.16] (198-84-214-74.cpe.teksavvy.com. [198.84.214.74]) by smtp.gmail.com with ESMTPSA id x5sm2896788qkf.44.2020.10.30.09.58.51 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 30 Oct 2020 09:58:52 -0700 (PDT) Subject: Re: [Y2038][time namespaces] Question regarding CLOCK_REALTIME support plans in Linux time namespaces To: Thomas Gleixner , Zack Weinberg , Cyril Hrubis Cc: Dmitry Safonov , Andrei Vagin , GNU C Library , Linux Kernel Mailing List References: <20201030110229.43f0773b@jawa> <20201030135816.GA1790@yuki.lan> <87sg9vn40t.fsf@nanos.tec.linutronix.de> From: Carlos O'Donell Organization: Red Hat Message-ID: <72bbb207-b041-7710-98ad-b08579fe17e4@redhat.com> Date: Fri, 30 Oct 2020 12:58:51 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.3.1 MIME-Version: 1.0 In-Reply-To: <87sg9vn40t.fsf@nanos.tec.linutronix.de> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-5.7 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, NICE_REPLY_A, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H5, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: libc-alpha@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Libc-alpha mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 30 Oct 2020 16:58:57 -0000 On 10/30/20 11:10 AM, Thomas Gleixner via Libc-alpha wrote: > On Fri, Oct 30 2020 at 10:02, Zack Weinberg wrote: >> On Fri, Oct 30, 2020 at 9:57 AM Cyril Hrubis wrote: >>>> According to patch description [1] and time_namespaces documentation >>>> [2] the CLOCK_REALTIME is not supported (for now?) to avoid complexity >>>> and overhead in the kernel. >> ... >>>> To be more specific - [if this were supported] it would be possible to modify time after time_t >>>> 32 bit overflow (i.e. Y2038 bug) on the process running Y2038 >>>> regression tests on the host system (64 bit one). By using Linux time >>>> namespaces the system time will not be affected in any way. >>> >>> And what's exactly wrong with moving the system time forward for a >>> duration of the test? >> >> Interference with other processes on the same computer? Some of us >> *do* like to run the glibc test suite on computers not entirely >> devoted to glibc CI. > > That's what virtual machines are for. Certainly, that is always an option, just like real hardware. However, every requirement we add to testing reduces the number of times that developer will run the test on their system and potentially catch a problem during development. Yes, CI helps, but "make check" gives more coverage. More kernel variants tested in all downstream rpm %check builds or developer systems. Just like kernel self tests help today. glibc uses namespaces in "make check" to increase the number of userspace and kernel features we can test immediately and easily on developer *or* distribution build systems. So the natural extension is to further isolate the testing namespace using the time namespace to test and verify y2038. If we can't use namespaces then we'll have to move the tests out to the less frequently run scripts we use for cross-target toolchain testing, and so we'll see a 100x drop in coverage. I expect that more requests for further time isolation will happen given the utility of this in containers. If we have to use qemu today then that's where we're at, but again I expect our use case is representative of more than just glibc. Does checkpointing work robustly when userspace APIS use CLOCK_REALTIME (directly or indirectly) in the container? -- Cheers, Carlos.