From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pg1-f200.google.com (mail-pg1-f200.google.com [209.85.215.200]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7A370488762 for ; Fri, 11 Sep 2026 13:44:53 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.200 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789134299; cv=none; b=dscPYpBpec2wLloJEufPVjl0E6pebNIIFw4u3m99l5xWTk+sR6Sf/m0IxOowD68MjvnyDbZ0lK4j5vENPEn+KGvEcGgMGyRuAJhdHaqXWoyqXOFBInAqPhj6OnO1wAKMwXQW8WxMFVb+9LYYGTRGazLYIH8ES0eX3b/MPI4n6Ks= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1789134299; c=relaxed/simple; bh=z1IBBN+1WUfDf5cT8bAka5f8p45OV+l+sxZzQy3xMvk=; h=Date:In-Reply-To:Mime-Version:References:Message-ID:Subject:From: To:Cc:Content-Type; b=lBXUhCHKlKbyMytlKYaU78oe7PC9CGDGEHOcg1uZCOil0q+ymOTPQhpKAdZEfZ+tgvYQyx07APXZ6864BqlYTIosjJmXwbU71zTIoUvOnltWvVvN+tKp9TFxQ5caHnpQA61l5QVWFN7McGK0f9gyz3cPbGdwocL2l5x69mkqgng= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--seanjc.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=PJxXdm+a; arc=none smtp.client-ip=209.85.215.200 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=flex--seanjc.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="PJxXdm+a" Received: by mail-pg1-f200.google.com with SMTP id 41be03b00d2f7-cb6cf425e86so1189389a12.1 for ; Fri, 11 Sep 2026 06:44:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20251104; t=1789134291; x=1789739091; darn=vger.kernel.org; h=content-type:cc:to:from:subject:message-id:references:mime-version :in-reply-to:date:from:to:cc:subject:date:message-id:reply-to :content-type; bh=35qTFGciq12kEJU+EMJ4woELZzEj6I4YMtoPAd4aNAQ=; b=PJxXdm+a+euQUyQZMaj+1xNum8ZW6CpqOCX567sqtcKG76RNivO5/ngMhvgSK08Ljm J+tnQGPEU6Zqh+X9i8fCKegkiG+g24cFjyry4l1+Sg/rJkymCKLxCavFK+B5p5UVggpt bz1UiQfHa58So2MfZgi8VqAjc1NSH0Z9S2noWjY+bnpsv0Ixkax2xy9qYh4gicLzODB5 rB6X326hXNCSZTSklfDlQnqEJ0XjbqiwewmXPw44IVEgkvOl75gxoVGey3TMqhJ26krr yXHlQNz4p3K64BQnpKrsNuAMNM2ISyge59NUZ/8FJbZeN1NT64bmlSilrEYfi1KK+umI Glig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1789134291; x=1789739091; h=content-type:cc:to:from:subject:message-id:references:mime-version :in-reply-to:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=35qTFGciq12kEJU+EMJ4woELZzEj6I4YMtoPAd4aNAQ=; b=CcyHnX3GHcanm3d2KgYhBEkhyBR0N5Gy8Y9OjGvBUNLDpaB/8TjCVHDVUAqWjBe2PB c9aQ1I1GIOHXgM1qTUdeeVNAIsSPoM4fLHO5VTKJi2a0y7QiAijtbyhQr2pObrYD949b W9leWoy9yLqv9MEaD3sDSByPRB4caKyURVgLaF+ZplY4rRBCLwKR3qvAPJcGhOIq6FoM aEAf8/1hbUM93ChSFgU9KBiSw9S3/XhlYmHDIDfFvIuW1nJDqY8UsEFYe+OxtWwSCFgs 1L1etMZ5LcPB5+koRu3g5IGYHsCKHEyp+tRSYjXNfnrHzS2Yr+MJJMIA+7fV4kFOGiCy X5cg== X-Forwarded-Encrypted: i=1; AKwUvBxL9rlrKFEm48db22vvSqEZAekKDKW3es3FBI2FHWJp7hlU3A/9tOC9gowfWWuHOKcjggF7OKzHy7YYSzo=@vger.kernel.org X-Gm-Message-State: AFuF++kPaK2jUWkqc/iofpdeFRl6t5kUAZ2GNXHnn78XKZyaDuC4+akf Ie2ouEgY5Ze1SR9R1E3/WBeYlh47tdEBRQ4aVC4LF8KGHM80TrZCRmBYQsJEg6XockGEeF2iLm8 ZaC0/WQ== X-Received: from pgjj10.prod.google.com ([2002:a63:230a:0:b0:cc4:5907:21e9]) (user=seanjc job=prod-delivery.src-stubby-dispatcher) by 2002:a05:6a20:b08d:b0:3c6:61b9:917c with SMTP id adf61e73a8af0-3daed1fd3cfmr8633653637.11.1789134291123; Fri, 11 Sep 2026 06:44:51 -0700 (PDT) Date: Fri, 11 Sep 2026 06:44:50 -0700 In-Reply-To: <20260910225728.GB857650@nvidia.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 References: <20260905012403.GX4157646@nvidia.com> <20260910143448.GD3968357@nvidia.com> <20260910171210.GF3968357@nvidia.com> <20260910221832.GH3968357@nvidia.com> <20260910225728.GB857650@nvidia.com> Message-ID: Subject: Re: [RFC PATCH 0/3] liveupdate: Move to feature flags for LUO and memfd ABI compatibility From: Sean Christopherson To: Jason Gunthorpe Cc: David Matlack , Logan Odell , arnd@arndb.de, pasha.tatashin@soleen.com, rppt@kernel.org, pratyush@kernel.org, graf@amazon.com, akpm@linux-foundation.org, pbonzini@redhat.com, maz@kernel.org, oupton@kernel.org, bhelgaas@google.com, alex@shazbot.org, kevin.tian@intel.com, dwmw2@infradead.org, baolu.lu@linux.intel.com, joro@8bytes.org, will@kernel.org, robin.murphy@arm.com, linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org, kexec@lists.infradead.org, linux-mm@kvack.org, kvm@vger.kernel.org, linux-arm-kernel@lists.infradead.org, kvmarm@lists.linux.dev, linux-pci@vger.kernel.org, iommu@lists.linux.dev Content-Type: text/plain; charset="us-ascii" On Thu, Sep 10, 2026, Jason Gunthorpe wrote: > On Thu, Sep 10, 2026 at 03:42:36PM -0700, Sean Christopherson wrote: > > On Thu, Sep 10, 2026, Jason Gunthorpe wrote: > > > Sean's initial email was asking for strict never-break ABI compatability > > > rules on top, and that is what I've been reacting to. > > > > No, I was never asking for that. I think we just have a different interpretation > > of ABI, or rather are talking about different pieces of ABI. > > > > I am still asking for never-break serialization format compatibility, i.e. the > > more literal save/restore ABI. I'm not asking for full backwards/forwards > > compatibility across all kernels version, i.e. the higher level "kernel" ABI. > > > > To phrase things differently: I am a-ok if kernels are inherently incompatible > > because they fundamentally operate differently and/or support different features. > > I am not ok if we end up with incompatible kernels because the save/restore > > interfaces and payloads are poorly designed, lack abstraction, etc. > > I can more agree with this, it is mostly what I thought we'd end up > doing anyhow with version numbers and growing the structs not > replacing them. > > So you still end up with a version label (string I guess?) because we > can break it from time to time, Why bother with a label/string? I don't understand what it buys us; I see only pain. Make the features discoverable and punt on all of the "is this pile of insanity my company has created compatible with this other pile of insanity?" to layers above the kernel. IMO, trying to capture compatibility in a version string is doomed to fail. To be useful, the version would have to be extremely sensitive to changes, otherwise userspace will have to do its own compatibility analysis/checks anyways. And at that point, a verson string will be too restrictive, e.g. will mismatch due to changes in features the deployment isn't using. > just the version should have the feature mechanism layered under it? I'm fine > with that > > Jason