From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id B66B3C3ABC9 for ; Fri, 16 May 2025 12:39:55 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4643B6B0155; Fri, 16 May 2025 08:39:54 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3EA8B6B0156; Fri, 16 May 2025 08:39:54 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 266B36B0157; Fri, 16 May 2025 08:39:54 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id 040066B0155 for ; Fri, 16 May 2025 08:39:53 -0400 (EDT) Received: from smtpin20.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 712F88037D for ; Fri, 16 May 2025 12:39:54 +0000 (UTC) X-FDA: 83448727908.20.5632631 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf20.hostedemail.com (Postfix) with ESMTP id 1909A1C0010 for ; Fri, 16 May 2025 12:39:51 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=C+GyJ8dj; spf=pass (imf20.hostedemail.com: domain of dhildenb@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=dhildenb@redhat.com; dmarc=pass (policy=quarantine) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1747399192; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:in-reply-to: references:dkim-signature; bh=uhz3U140ohpt6ccWc+FSce3umZsRmkKP4Ya4jbqjSpE=; b=kuX2KdQIBoLyE4s0p9+Cz9OtZNu5ODxugQ0Jqror8+sRtrxlfj1KkZfr+WBvLNuUzelboK EcJ9bUA8V19/0gbMSqMNGXmOMf2aYAWe+7X6l0Ki7Y7t5y2fAFfKfA61WBYM/WAU5Vx6aP RXr3Tgn3XSqft+5W8WktKm6JeGOlOjI= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=C+GyJ8dj; spf=pass (imf20.hostedemail.com: domain of dhildenb@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=dhildenb@redhat.com; dmarc=pass (policy=quarantine) header.from=redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1747399192; a=rsa-sha256; cv=none; b=ETKnFVP1NUlIdZYg8h4AcypoXhzC+5NIFNYEhy/HyTRaO1l0C5JjkDKPjJJMoWowSJ0SNO iGdpart/q0LqkjXdg640vlUXFP8On1QzleX/eV0+eEXinDbiizHFLyfojDXK3X3UY2VN2E /PdeGhcimA7g1qf08BfHXMTNvbTd4kU= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1747399191; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=uhz3U140ohpt6ccWc+FSce3umZsRmkKP4Ya4jbqjSpE=; b=C+GyJ8djE58NwbVhIUWpL+fPMLvlCMy7LUdDr3vwCIEXOnOCUbGyZpSrnlxtbySRrYURif gIeZMQay7MkNlTX+QIwak5dk/1gvI9Idv+rCDxfhrC7tgK4ewN1MnttT466efVikcQk0Iw 727RBPZKHl1rWyq5jPmpHtRyw9+uM3E= Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com [209.85.128.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-696-Jp9fZVfaN0-WUXDVr3IAOA-1; Fri, 16 May 2025 08:39:49 -0400 X-MC-Unique: Jp9fZVfaN0-WUXDVr3IAOA-1 X-Mimecast-MFC-AGG-ID: Jp9fZVfaN0-WUXDVr3IAOA_1747399189 Received: by mail-wm1-f70.google.com with SMTP id 5b1f17b1804b1-43ceeaf1524so12066475e9.1 for ; Fri, 16 May 2025 05:39:49 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1747399188; x=1748003988; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=uhz3U140ohpt6ccWc+FSce3umZsRmkKP4Ya4jbqjSpE=; b=CGpq+N33Nonkj0RGcvoUxyUtgUMI+oev9bnEo3pO9sfM0lpztjzL/13bA9pTH9I6rw nk3quLwXz+7M55vIAML5Ze/hqDsCIkmswMSKKL6vVab5lXUjTCGw0RY/tNRqZzcl4mch EK/9+Pc+XWHa7HeUesHMevUxDqYM2uC0GYkKE/h8Ze/BFneIeXGIvzakGsxTt2cLdd+9 ClDsawwcYSXWPRPpL91QNxPEpoNYWm1VNwobhIZwPm9+YsYRou0dEPBdWinOeyQiytDZ mWvgCVhPSzkBs9kBOhPRgBSV1bNLaEdqkBeaAkJni68xAXQYnccNmaiorFmMmsZCIHfY Ovjw== X-Forwarded-Encrypted: i=1; AJvYcCUSAvf3lVRg4uBUHVDTs2UHgmVz+SEZWXqCXDmGofg6bDtZrU71VjdUw/97lR+ThMG7rlBzyHcMRQ==@kvack.org X-Gm-Message-State: AOJu0YzYGtiFnhlY7GoC2YhqUH83ed9SvIRaW5adSe/NxkKmgU5g3lVy cyyuIEYp9fQ7qtgMVI64Oa/EVN3/ekxrPSgzbGsdb6ukG8IJWEGZVO3oHCSKVb2d8mzIn0mXbfV aai5q/r0aEjNGa+vY86n7ndDNZ7v9OE2A4hdwC21MOp04GbdSrayV X-Gm-Gg: ASbGncud+MqBc0diwTM4Fss1UE3LVGbEyoxvDDH+Tk3cNB5Z58mPio9T4vfza9FZoqh Xqy60L8tCu5y8AjBaQqzznWsRU5WIF1k4D1J6bt2aRQAR0RmYbFO5nw+XB8RkB0vydgUD8EzJ9m AOA3TuZH+REownkZVCSxBhk0pAy4K2imYspUjLGOVoh+8kEHIF8zrMkgYi0nk0ZchBcmEcX8g0q dfv6zruKoAPLHutWhbjj+44opUcw1mM9x8skiXl5qSOmWgMApR2XGoQd9gri7mv7lTmCvaPOOLS qHToAiDB7KmFkviYHfMsNjN678oqyZtIYXo2nKUJ3jUoCEzAuYjuvX8Sepimn8eD2p021jbA X-Received: by 2002:a05:600c:154c:b0:43b:c857:e9d7 with SMTP id 5b1f17b1804b1-442fd93d4fcmr26794515e9.5.1747399188649; Fri, 16 May 2025 05:39:48 -0700 (PDT) X-Google-Smtp-Source: AGHT+IG02eCs69TcqCLt8j2+2wKH4FlJPCCyiADW1BjCbtX8Ej+iIBeRfP51iBLLuyg6K1U4dIYtGg== X-Received: by 2002:a05:600c:154c:b0:43b:c857:e9d7 with SMTP id 5b1f17b1804b1-442fd93d4fcmr26794325e9.5.1747399188282; Fri, 16 May 2025 05:39:48 -0700 (PDT) Received: from localhost (p200300d82f474700e6f9f4539ece7602.dip0.t-ipconnect.de. [2003:d8:2f47:4700:e6f9:f453:9ece:7602]) by smtp.gmail.com with UTF8SMTPSA id 5b1f17b1804b1-442fd50b30csm31929825e9.9.2025.05.16.05.39.46 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Fri, 16 May 2025 05:39:47 -0700 (PDT) From: David Hildenbrand To: linux-kernel@vger.kernel.org Cc: linux-s390@vger.kernel.org, kvm@vger.kernel.org, linux-mm@kvack.org, David Hildenbrand , Christian Borntraeger , Janosch Frank , Claudio Imbrenda , Heiko Carstens , Vasily Gorbik , Alexander Gordeev , Sven Schnelle , Thomas Huth , Matthew Wilcox , Zi Yan , Sebastian Mitterle Subject: [PATCH v1 0/3] s390/uv: handle folios that cannot be split while dirty Date: Fri, 16 May 2025 14:39:43 +0200 Message-ID: <20250516123946.1648026-1-david@redhat.com> X-Mailer: git-send-email 2.49.0 MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: JEFGEaIeYYkYY3NQHcEY0oDxzTeK1V3l8rpbgXRlpt0_1747399189 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit content-type: text/plain; charset="US-ASCII"; x-default=true X-Rspam-User: X-Rspamd-Queue-Id: 1909A1C0010 X-Rspamd-Server: rspam09 X-Stat-Signature: ix4wh8bjznbxo3pg4jjpm9q1niz4kfru X-HE-Tag: 1747399191-721922 X-HE-Meta: U2FsdGVkX19T4sIuDfbWdbWNxfjqCANLJUTQsUF/hCcVm0GlGmu80kZatyeMiWs/QNGl1gF6+BZoxRx0zgUqHl6s9L0rfvv7nCKy5Np2g2Sk8z/Sq3+7RJVnvihWZW+qU7cmfqwTsOm6anshShDbqiwN9e+0LqMfVopBNZx8UXlSAoMoW6X1n/W0MJsneczsx5ungEInapR040g3xMLmCAAP7d+p6Dr/Ulf7/Rc6pfQxLK5pSasjTYQdp3f9zl9AL8D1ErAxXVVm1KQaALffKbj1H+vU2+yU/FZ5YHdUB98WEfutWdQYXok7P7X37Dkix8/YEJFIO2hLeT1IEFYlDXaFfA6SZZt6z585CsvXk62e+PyvXZ2zLkKcZWbFCMQIeKlZ9aDJbE/4Ef1u4eoG3GGGmiHttDnLWopJKXRboD/OS75d+P0IytJcxGcQC64SSyRzTccAOaj1admb3ivj58Q+S17AKYZ2whteeokB1LNNBVnF/BD9rJ48sXVPri5nkLKLQ649fRYiUvK7zbz0HCnxYo+WSPjtpfvWW9Y6TPP0SOOGc3zUvNMMa0G3T08D90+1kEuHQ32048Oe2YI4TkYajh+zbGHbuChEWp2jqr1lYAuRwYmlbYRORM+KNCL9lPg7g3O8xnru6rZxzgjK/u7SIjdyqBqSxqw7UCrbJEUFpvLR/SH4bxQllkY5OWfT68UNK9FVmaSaf8hWDkADx753G/c4T00q5GVm6aCaPBhbzPfMKjfGDCYDVcjlfRfQvhXFJDTA2pkX2svgX1LZk4fGpK0CuZ/akxRyRfJ/AbNe8SChkQsu2pTMvWfafSCtm+2+jIdbb5s2EaOCcTIBOcUYIxU6lSnGXAYM35aYUvkr9q+8F1nL3GKP+LU30AL5DRq6HKOQRZNmKtnA6CrGX/AI2yJpdc4gx8FF9+I2dBT3qeubDUFezOxdccWW0hX1urHsXcg+w0C9uGlpZ0E OVnLy7sg pOM7SKfIaPghhjTOxEG4YsX87y14WawJjwmSrx+v3oN6mt5lsot0w47YRn3U5shLXQM9k8WIw3JTNg+7Ude4wfe4MWGybs4ho645locYqR4fL5OEWzDoibgRZv4i1JtHpBHPa34t+5prteJ7M5uTukOyKjh9Q3t6OHpmgOrJGdFfprgydtqi7lYEJGSO8dui+NZ/llRu2unqB/5tswtbUOlMixJZkT7akWEQO1KrGwzqG+uN04YOjJ49jccD73JBmgR7GCWTOeiH0xP3sSQD2KdjiPHh7I9Sb7rZvor8NVNQW5N86GslTGvpS6HxxX35DIlhNtL8fpoqBrBpLnWE4VccLUldd7Hah9ITt4ZGgJQCHs2CJMpHZz3bElPqXoM/fH5BSOsoIR/KK++dv3XMjVUD2ma7bNzdbU7n9J7a4qbNWHowSBaxStsl/eemP/0jLLiR56lpkGmKuKehPgeIcZlaS2ZZfi1QIQJctvES2PZBDINq7v4N8ht1/FRqegzl6LghP+mlE/QJD8QLlfL83/olpFjd6HEOb3QGktykGPicJbH3WkOfY8/zlj+3n/+T31ij/a7SZjXeJaehherUBQ3nFfQ== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: >From patch #3: " Currently, starting a PV VM on an iomap-based filesystem with large folio support, such as XFS, will not work. We'll be stuck in unpack_one()->gmap_make_secure(), because we can't seem to make progress splitting the large folio. The problem is that we require a writable PTE but a writable PTE under such filesystems will imply a dirty folio. So whenever we have a writable PTE, we'll have a dirty folio, and dirty iomap folios cannot currently get split, because split_folio()->split_huge_page_to_list_to_order()->filemap_release_folio() will fail in iomap_release_folio(). So we will not make any progress splitting such large folios. " Let's fix one related problem during unpack first, to then handle such folios by triggering writeback before immediately trying to split them again. This makes it work on XFS with large folios again. Long-term, we should cleanly supporting splitting such folios even without writeback, but that's a bit harder to implement and not a quick fix. Cc: Christian Borntraeger Cc: Janosch Frank Cc: Claudio Imbrenda Cc: David Hildenbrand Cc: Heiko Carstens Cc: Vasily Gorbik Cc: Alexander Gordeev Cc: Sven Schnelle Cc: Thomas Huth Cc: Matthew Wilcox Cc: Zi Yan Cc: Sebastian Mitterle David Hildenbrand (3): s390/uv: don't return 0 from make_hva_secure() if the operation was not successful s390/uv: always return 0 from s390_wiggle_split_folio() if successful s390/uv: improve splitting of large folios that cannot be split while dirty arch/s390/kernel/uv.c | 85 ++++++++++++++++++++++++++++++++++++------- 1 file changed, 72 insertions(+), 13 deletions(-) base-commit: 088d13246a4672bc03aec664675138e3f5bff68c -- 2.49.0