public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Heiko Carstens <hca@linux.ibm.com>
To: Claudio Imbrenda <imbrenda@linux.ibm.com>
Cc: kvm@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-s390@vger.kernel.org, borntraeger@de.ibm.com,
	frankja@linux.ibm.com, nsg@linux.ibm.com, nrb@linux.ibm.com,
	seiden@linux.ibm.com, schlameuss@linux.ibm.com,
	svens@linux.ibm.com, agordeev@linux.ibm.com, gor@linux.ibm.com,
	david@redhat.com, gerald.schaefer@linux.ibm.com
Subject: Re: [PATCH v3 00/23] KVM: s390: gmap rewrite, the real deal
Date: Tue, 18 Nov 2025 16:28:15 +0100	[thread overview]
Message-ID: <20251118152815.9674D33-hca@linux.ibm.com> (raw)
In-Reply-To: <20251106161117.350395-1-imbrenda@linux.ibm.com>

On Thu, Nov 06, 2025 at 05:10:54PM +0100, Claudio Imbrenda wrote:
> This series is the last big series of the gmap rewrite. It introduces
> the new code and actually uses it. The old code is then removed.
> 
> The insertions/deletions balance is negative both for this series, and
> for the whole rewrite, also considering all the preparatory patches.
> 
> KVM on s390 will now use the mmu_notifier, like most other
> architectures. The gmap address space is now completely separate from
> userspace; no level of the page tables is shared between guest mapping
> and userspace.
> 
> One of the biggest advantages is that the page size of userspace is
> completely independent of the page size used by the guest. Userspace
> can mix normal pages, THPs, hugetlbfs, and more.
> 
> Patches 1 to 6 are mostly preparations; introducing some new bits and
> functions, and moving code around.
> 
> Patch 7 to 16 is the meat of the new gmap code; page table management
> functions and gmap management. This is the code that will be used to
> manage guest memory.
> 
> Patch 18 is unfortunately big; the existing code is converted to use
> the new gmap and all references to the old gmap are removed. This needs
> to be done all at once, unfortunately, hence the size of the patch.
> 
> Patch 19 and 20 remove all the now unused code.
> 
> Patch 21 and 22 allow for 1M pages to be used to back guests, and add
> some more functions that are useful for testing.
> 
> Patch 23 fixes storage key manipulation functions, which would
> otherwise be broken by the new code.

I would guess patch 23 also needs to go into the already huge patch which
switches everything to the new gmap code, since otherwise bisect will not work
for anything that is storage key related.

Anyway, I can imagine some addon cleanups, but that can wait after this series
is upstream.

At least from a "core s390 code view", without considering kvm this looks good
to me. There is at least one known bug hiding in this huge rewrite - but just
wanted to let you know that my concerns with the previous version have been
addressed.

  parent reply	other threads:[~2025-11-18 15:28 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-11-06 16:10 [PATCH v3 00/23] KVM: s390: gmap rewrite, the real deal Claudio Imbrenda
2025-11-06 16:10 ` [PATCH v3 01/23] KVM: s390: Refactor pgste lock and unlock functions Claudio Imbrenda
2025-11-11 11:19   ` Christoph Schlameuss
2025-11-06 16:10 ` [PATCH v3 02/23] KVM: s390: add P bit in table entry bitfields, move union vaddress Claudio Imbrenda
2025-11-06 16:10 ` [PATCH v3 03/23] s390: Move sske_frame() to a header Claudio Imbrenda
2025-11-06 16:10 ` [PATCH v3 04/23] KVM: s390: Add gmap_helper_set_unused() Claudio Imbrenda
2025-11-12  6:25   ` Christoph Schlameuss
2025-11-06 16:10 ` [PATCH v3 05/23] KVM: s390: Enable KVM_GENERIC_MMU_NOTIFIER Claudio Imbrenda
2025-11-13  9:46   ` Christoph Schlameuss
2025-11-06 16:11 ` [PATCH v3 06/23] KVM: s390: Rename some functions in gaccess.c Claudio Imbrenda
2025-11-13  9:52   ` Christoph Schlameuss
2025-11-06 16:11 ` [PATCH v3 07/23] KVM: s390: KVM-specific bitfields and helper functions Claudio Imbrenda
2025-11-13 10:18   ` Christoph Schlameuss
2025-11-06 16:11 ` [PATCH v3 08/23] KVM: s390: KVM page table management functions: allocation Claudio Imbrenda
2025-11-20  8:50   ` Heiko Carstens
2025-11-06 16:11 ` [PATCH v3 09/23] KVM: s390: KVM page table management functions: clear and replace Claudio Imbrenda
2025-11-06 16:11 ` [PATCH v3 10/23] KVM: s390: KVM page table management functions: walks Claudio Imbrenda
2025-11-06 16:11 ` [PATCH v3 11/23] KVM: s390: KVM page table management functions: storage keys Claudio Imbrenda
2025-11-06 16:11 ` [PATCH v3 12/23] KVM: s390: KVM page table management functions: lifecycle management Claudio Imbrenda
2025-11-06 16:11 ` [PATCH v3 13/23] KVM: s390: KVM page table management functions: CMMA Claudio Imbrenda
2025-11-06 16:11 ` [PATCH v3 14/23] KVM: s390: New gmap code Claudio Imbrenda
2025-11-06 16:11 ` [PATCH v3 15/23] KVM: s390: Add helper functions for fault handling Claudio Imbrenda
2025-11-18 15:10   ` Heiko Carstens
2025-11-19 11:06     ` Claudio Imbrenda
2025-11-06 16:11 ` [PATCH v3 16/23] KVM: s390: Add some helper functions needed for vSIE Claudio Imbrenda
2025-11-06 16:11 ` [PATCH v3 17/23] KVM: s390: Stop using CONFIG_PGSTE Claudio Imbrenda
2025-11-06 16:11 ` [PATCH v3 18/23] KVM: s390: Switch to new gmap Claudio Imbrenda
2025-11-18 15:14   ` Heiko Carstens
2025-11-19 11:12     ` Claudio Imbrenda
2025-11-19 13:00     ` Claudio Imbrenda
2025-11-18 15:18   ` Heiko Carstens
2025-11-19 11:13     ` Claudio Imbrenda
2025-11-06 16:11 ` [PATCH v3 19/23] KVM: s390: Remove gmap from s390/mm Claudio Imbrenda
2025-11-06 16:11 ` [PATCH v3 20/23] KVM: S390: Remove PGSTE code from linux/s390 mm Claudio Imbrenda
2025-11-06 16:11 ` [PATCH v3 21/23] KVM: s390: Enable 1M pages for gmap Claudio Imbrenda
2025-11-06 16:22   ` Christian Borntraeger
2025-11-06 16:36     ` Claudio Imbrenda
2025-11-06 16:37       ` Christian Borntraeger
2025-11-06 16:11 ` [PATCH v3 22/23] KVM: s390: Storage key manipulation IOCTL Claudio Imbrenda
2025-11-06 16:11 ` [PATCH v3 23/23] KVM: s390: Fix storage key memop IOCTLs Claudio Imbrenda
2025-11-18 15:28 ` Heiko Carstens [this message]
2025-11-19 11:14   ` [PATCH v3 00/23] KVM: s390: gmap rewrite, the real deal Claudio Imbrenda

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20251118152815.9674D33-hca@linux.ibm.com \
    --to=hca@linux.ibm.com \
    --cc=agordeev@linux.ibm.com \
    --cc=borntraeger@de.ibm.com \
    --cc=david@redhat.com \
    --cc=frankja@linux.ibm.com \
    --cc=gerald.schaefer@linux.ibm.com \
    --cc=gor@linux.ibm.com \
    --cc=imbrenda@linux.ibm.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=nrb@linux.ibm.com \
    --cc=nsg@linux.ibm.com \
    --cc=schlameuss@linux.ibm.com \
    --cc=seiden@linux.ibm.com \
    --cc=svens@linux.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox