Received: by 2002:ac0:a582:0:0:0:0:0 with SMTP id m2-v6csp1808308imm; Tue, 2 Oct 2018 14:27:37 -0700 (PDT) X-Google-Smtp-Source: ACcGV63pNNdOYwsYtVAAUMCbk6bRW8Em0ByIyF8D+HgcmS3F6Zpr/FmvtVCYyxL8na7jI1yu/eny X-Received: by 2002:a65:664e:: with SMTP id z14-v6mr15602636pgv.347.1538515657571; Tue, 02 Oct 2018 14:27:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1538515657; cv=none; d=google.com; s=arc-20160816; b=lB789v30zhl1cr6YBdGX0OuZeZOb/T3IFXFrhGDmchGLZltxvKoZzEZMlmi59bY8tY bosVR9Px/7/JMspMVyFvnz74tbFNyadASGRQ2xocywyinxt1FnhB9h6zb9EuyoQKOS4V 5TINfLDD1cXgseECGxyKaH8a7Kr+XHqOHspFsBX6uP3B4kfN7AtZh4TEZgk04BXCaixr vkB7NjeLiYPpQ30O7Y1/Ua/DVAveAVUG4ddE8Ictnjbn4SHFER1XZWUza426Rz2EVvFt /T6xYK+BGS4YePP/+FlEXOTX/m8CFej5jHjzziffGiPc/mYfJcLpoALIpb+8L0pFAiD+ GPYw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :message-id:in-reply-to:subject:cc:to:from:date; bh=aexl+GYOE9FoFMItrcfFHavlgbJuwVyqE1LsVYzPA+Y=; b=0ozZYtyJq4rQ57QR4uSy4OD3I5qbVRKW3+6X9Cz+U+65RTFxQTYV1XCzaQg2OaThCr CPxnpEAGcQBhAgplojlSbMN+jj6LSc6ab9poh+rUP9iYDdmLeCARfc6WjqJBc7RmNTEp BVDTGv6lq0tDxe4uQoG8XcIrpYV6Eo6fLEcSqyyIL/M6MvUtaUZ44DX+nPc5kT/xFi8W mQc5nk2OGjhkz25vT9ir6x9HMTDCnvFyBMuDhmW+3sahFBL1rLm7d6w0IW1td2fjfzI0 iyy99u/ZLBvBzrRtFrnTVfqBe3cLLLi30RnlAg7olC1vk6Rhs5f2U0/dlo24iG0m6p7o XGww== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w5-v6si17332752pgi.254.2018.10.02.14.27.22; Tue, 02 Oct 2018 14:27:37 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728621AbeJCEMZ (ORCPT + 99 others); Wed, 3 Oct 2018 00:12:25 -0400 Received: from Galois.linutronix.de ([146.0.238.70]:32777 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727591AbeJCEMY (ORCPT ); Wed, 3 Oct 2018 00:12:24 -0400 Received: from p5492e4c1.dip0.t-ipconnect.de ([84.146.228.193] helo=nanos) by Galois.linutronix.de with esmtpsa (TLS1.2:DHE_RSA_AES_256_CBC_SHA256:256) (Exim 4.80) (envelope-from ) id 1g7SBb-0003Q4-KB; Tue, 02 Oct 2018 23:26:31 +0200 Date: Tue, 2 Oct 2018 23:26:30 +0200 (CEST) From: Thomas Gleixner To: Dmitry Safonov <0x7f454c46@gmail.com> cc: Andrei Vagin , "Eric W. Biederman" , Dmitry Safonov , open list , Adrian Reber , Andy Lutomirski , Christian Brauner , Cyrill Gorcunov , "H. Peter Anvin" , Ingo Molnar , Jeff Dike , Oleg Nesterov , Pavel Emelyanov , Shuah Khan , containers@lists.linux-foundation.org, crml , Linux API , X86 ML , Alexey Dobriyan , linux-kselftest@vger.kernel.org Subject: Re: [RFC 00/20] ns: Introduce Time Namespace In-Reply-To: Message-ID: References: <20180919205037.9574-1-dima@arista.com> <874lej6nny.fsf@xmission.com> <20180924205119.GA14833@outlook.office365.com> <874leezh8n.fsf@xmission.com> <20180925014150.GA6302@outlook.office365.com> <87zhw4rwiq.fsf@xmission.com> <20181001232033.GA31324@outlook.office365.com> User-Agent: Alpine 2.21 (DEB 202 2017-01-01) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-Linutronix-Spam-Score: -1.0 X-Linutronix-Spam-Level: - X-Linutronix-Spam-Status: No , -1.0 points, 5.0 required, ALL_TRUSTED=-1,SHORTCIRCUIT=-0.0001 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Dmitry, On Tue, 2 Oct 2018, Dmitry Safonov wrote: > On Tue, 2 Oct 2018 at 07:15, Thomas Gleixner wrote: > > I explained that in detail in this thread, but it's not about the initial > > setting of clock mono/boot before any timers have been armed. > > > > It's about setting the offset or clock realtime (via settimeofday) when > > timers are already armed. Also having a entirely different time domain, > > e.g. separate NTP adjustments, makes that necessary. > > It looks like, there is a bit of misunderstanding each other: > Andrei was talking about the current RFC version, where we haven't > introduced offsets for clock realtime. While Thomas IIUC, is looking > how-to expand time namespace over realtime. > > As CLOCK_REALTIME virtualization raises so many complex questions > like a different length of the second or list of realtime timers in ns we > haven't added any realization for it. > > It seems like an initial introduction for timens can be expanded after to cover > realtime clocks too. While it may seem incomplete, it solves issues for > restoring/migration of real-world applications like nodejs, Oracle DB server > which fails after being restored if there is a leap in monotonic time. Well, yes. But you really have to think about the full picture. Just adding part of the overall solution right now, just because it can be glued into the code easily, is not the best approach IMO as it might result in substantial rework of the whole thing sooner than later. I really don't want to end up with something which is not extensible and has to be supported forever. Just for the record, the current approach with name space offsets for monotonic is also prone to malfunction vs. timers, unless you can prevent changing the offset _after_ the namespace has been set up and timers have been armed. I admit, that I did not look close enough to verify that. > While solving the mentioned issues, it doesn't bring overhead. > (well, Andy noted that cmp for zero-offsets on vdso can be optimized too, > which will be done in v1). > > Thomas, thanks much for your input - now we know that we'll need to > introduce list for timers in namespace when we'll add realtime clocks. > Do you believe that CLOCK_MONOTONIC_SYNC would be an easier > concept than offsets per-namespace? Haven't thought it through. This was just an idea in reaction to Eric's question whether setting clock monotonic might be feasible. But yes, it might be worth to think about it. I think you should really define the long term requirements for time namespaces and perhaps set some limitations in functionality upfront. Thanks, tglx