From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f202.google.com (mail-pl1-f202.google.com [209.85.214.202]) (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 E79693A7F61 for ; Thu, 23 Apr 2026 17:40:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.202 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776966041; cv=none; b=VVI81ASP9iBBS6HDBehdnQ93GmGnEa9hXNhiJDuj1KEBfIWOrGe+PXO1PZgS/nSViIQtDD44CEhzeNLm9hFQRs7+IhKUyU+kRLHqvNV7H9xXF6QzuuKCIF1j/eYpeRZm3Crn7mNvFHjhj6V18oRMcYObUtWV2x/2HgrryyIb+z0= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1776966041; c=relaxed/simple; bh=0VHCqYaUGTwkri/0lO1JbNTkKUS3VSZoNOCwgLcsc2Y=; h=Date:Mime-Version:Message-ID:Subject:From:To:Cc:Content-Type; b=JPHe21299pc5eyXaC6FYpr4LNpNFFLbF0xbvqKPEw8UZrips7f8NPSmF5+DpJl/B0dJ5ZypvlOzsHIHjZRB8rH7dw7GnArA6dwe7EDOirt0Yfu0mh1tHcSIS5n8014RNiCvavw3u+QOgni9iIgXvuADNzIVd+ZluINvBjV6mhXQ= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=google.com; spf=pass smtp.mailfrom=flex--dmatlack.bounces.google.com; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b=km2oArkw; arc=none smtp.client-ip=209.85.214.202 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--dmatlack.bounces.google.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="km2oArkw" Received: by mail-pl1-f202.google.com with SMTP id d9443c01a7336-2b242b9359aso69120395ad.0 for ; Thu, 23 Apr 2026 10:40:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20251104; t=1776966039; x=1777570839; darn=vger.kernel.org; h=cc:to:from:subject:message-id:mime-version:date:from:to:cc:subject :date:message-id:reply-to; bh=jsuDoVVwG8v3ccyCTNTqT9CBU6c/j0vFXwihEdOJxZo=; b=km2oArkwTpOijVGBItMHcYtcSuMijmZs3qHkTUSLn5Jr+Hehxence5FuoXoPPtbcxA FSRgMpFjVe/By3Q0WQSDJiREclCE1JIzdd0sQWj5xkIsJGEwLGJzc/UBvq5HxYXzuxzA cSvIL9DcEFcin8DkQCXySkhPkh2hRNfvTyona6b+3SUTqLiFJdMZ3T57BXMT5ZfoGkyP tL6fhfhhAeuodO54WKt4kz8n+R15RznD3XSLJKiSIOuTci+Q7PguQKAKSFVjC/s1nPHW 6F6zocSVQN9BSvuO5ZyV68BuwIzVS/CnjBkgI+ayPHczWjboowwLEqNcKwskzXuR0NEU OmAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776966039; x=1777570839; h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=jsuDoVVwG8v3ccyCTNTqT9CBU6c/j0vFXwihEdOJxZo=; b=JhXAPHGTFSraHQlqCNino7NpVR8u3XqvPf+NGwQSx0UFLf9a81E2zKaPm/wUzJZVhm BNRNyDFovOzPspr/Q2D121prwlfn/78v8kSv+aK636JBK7Rk9C0EXc1J1f28h5aaM/uO cIz6xN2a/FVUYebzM/fCbr+jB/KSOlqzYGnBd7AkkdKKC70fTt75jVK7MecOXgQ0hQKP B9Zs0k8a9ruinvwhKIaWUNlxNAVUh/3bSOfLpfDE30Cyvq+NAwfequKnHWQeRiua6SkD fQKXXh8Ma/N5IrqQQL/LZI1VvfRAvim8n3Ok9sihBl+yfiMSHo0qxRKm6Bdp9Is8plcq 9CKg== X-Gm-Message-State: AOJu0YymbLBu/3bUKixBZZAy4jsPHq6ryi2ptfPB3BbSAxi2PsKM9H7l oOwgx2IqPFzthckZbFCS1cy09wnaNdrjY/+s9u0FZKzF6XnDe6rv6u/LWxV8mNxtlaG7luXo12u vcutOBh1SS6ggJg/8brh5ZGjIkN+UoybTZw/gdJ5cItj05jvM9SqAvnm9v4KG2tqWQ7+oZJ8tSA QREf5jCKQfy/sCIMHsrq86P1WHHHB96QhruRgS8XEZwe3jBU7GMYjQy5w= X-Received: from plnw7.prod.google.com ([2002:a17:902:da47:b0:2b2:4c1c:26de]) (user=dmatlack job=prod-delivery.src-stubby-dispatcher) by 2002:a17:903:4310:b0:2b2:4194:9521 with SMTP id d9443c01a7336-2b5f9f3646emr209548635ad.25.1776966038839; Thu, 23 Apr 2026 10:40:38 -0700 (PDT) Date: Thu, 23 Apr 2026 17:40:27 +0000 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 X-Mailer: git-send-email 2.54.0.rc2.544.gc7ae2d5bb8-goog Message-ID: <20260423174032.3140399-1-dmatlack@google.com> Subject: [PATCH 0/2] liveupdate: FLB refcounting improvements From: David Matlack To: linux-kernel@vger.kernel.org Cc: Andrew Morton , Mike Rapoport , Pasha Tatashin , Pratyush Yadav , Samiullah Khawaja , David Matlack Content-Type: text/plain; charset="UTF-8" This series can be found on GitHub: https://github.com/dmatlack/linux/tree/liveupdate/flb/refcount/v1 This series has 2 patches to improve how FLB refcounting works in preparation for using FLB in the PCI core. The first patch converts the existing refcounting to use refcount_t, and the second patch allows users of the incoming FLB to hold references to the FLB to avoid it getting freed. Users of the outgoing FLB don't need to take an extra reference yet since it's always done in the context of a preserve/unpreserve file callback, which are already synchronized with outgoing FLB creation and destruction. This series has been tested against the existing Live Update selftests (liveupdate, luo_kexec_simple, and luo_multi_session) on an Intel EMR host. David Matlack (2): liveupdate: Use refcount_t for FLB reference counts liveupdate: Reference count incoming FLB data include/linux/liveupdate.h | 9 ++++++- kernel/liveupdate/luo_flb.c | 52 ++++++++++++++++++------------------- lib/tests/liveupdate.c | 3 +++ 3 files changed, 37 insertions(+), 27 deletions(-) base-commit: 2a4c0c11c0193889446cdb6f1540cc2b9aff97dd -- 2.54.0.rc2.544.gc7ae2d5bb8-goog