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 8115AC5475B for ; Mon, 19 Feb 2024 06:27:38 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 249828D0005; Mon, 19 Feb 2024 01:27:37 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 1AB998D0001; Mon, 19 Feb 2024 01:27:37 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F1B8C8D0005; Mon, 19 Feb 2024 01:27:36 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id DC1068D0001 for ; Mon, 19 Feb 2024 01:27:36 -0500 (EST) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id A896280215 for ; Mon, 19 Feb 2024 06:27:36 +0000 (UTC) X-FDA: 81807572112.10.E552BB2 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) by imf14.hostedemail.com (Postfix) with ESMTP id 2696E10000D for ; Mon, 19 Feb 2024 06:27:32 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b=pKxF6ZaM; dmarc=none; spf=none (imf14.hostedemail.com: domain of BATV+994827af29a55d2021e7+7484+infradead.org+hch@bombadil.srs.infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=BATV+994827af29a55d2021e7+7484+infradead.org+hch@bombadil.srs.infradead.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1708324055; 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-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=vV++dU5JT51ucxUqh6s0pRaBXnOqDkHCc96TVOpagEA=; b=X2fTP4/feZt6w44pn/Uw0hhHg/0tsd2r8f7usU2f9Dx54GRUINpOrtCnOkz+fAu5G8e10w UQWd0dx3vlcJn/nHuFLI+kmNep3pfTPvPy+rnU9cr+CybVqis2MJEnIYaiAK7eOBz1qGvC DmcYv07VtLDj8RJOzONkwH8IkJbfr9U= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=pass header.d=infradead.org header.s=bombadil.20210309 header.b=pKxF6ZaM; dmarc=none; spf=none (imf14.hostedemail.com: domain of BATV+994827af29a55d2021e7+7484+infradead.org+hch@bombadil.srs.infradead.org has no SPF policy when checking 198.137.202.133) smtp.mailfrom=BATV+994827af29a55d2021e7+7484+infradead.org+hch@bombadil.srs.infradead.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1708324055; a=rsa-sha256; cv=none; b=NjFg57mgCSPfX1PYkj8Zh7lUnWAxMl8CQd7uP97PZ6ttmkug+EPq1vB8UBbb9JrO6QSpTv NEqvPuqTuYXl+wPVWOe2ARShEgMSq98kP7KfUg3nunUYVDCEk5S8RwAz2SrBibCvpgsBRD yUQ0nTbEWk1S+sNAmt2tz/t8FJO8lyY= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding: MIME-Version:Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type: Content-ID:Content-Description:In-Reply-To:References; bh=vV++dU5JT51ucxUqh6s0pRaBXnOqDkHCc96TVOpagEA=; b=pKxF6ZaMFOAGiLGlWzCs++QbH9 vQo5toWFiiUUo5YyMhFlp95pga3apgL5nWvGTBqDGgCc8yjXwH0C6kkX8y0xpHHyOJSiYFh9jGR2H XsEBLlzcO2SDf0OIbDUZgofpSemw1p/58JlHu/qeBTpUyJUirxKYB+n8Y4GT2l1iMCw38lRN7Qa3Z vjqizWBV01U+HkBaT9zUapNPoZ2zybCTYKBsOpUIJnCmFKY0SOvx/JDrY4gwXq3VLK0f6ADOP7drO NgMTa5NcedWeqkej8P0YcrxQ6giPcEjMhJGvUwtgsdj3/cbJ6lqJZFOiHNt3bi862DFzUyfBsfTMg 236Gamng==; Received: from 2a02-8389-2341-5b80-39d3-4735-9a3c-88d8.cable.dynamic.v6.surfer.at ([2a02:8389:2341:5b80:39d3:4735:9a3c:88d8] helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.97.1 #2 (Red Hat Linux)) id 1rbx7d-00000009F57-11Zr; Mon, 19 Feb 2024 06:27:25 +0000 From: Christoph Hellwig To: Chandan Babu R , "Darrick J. Wong" , Hugh Dickins , Andrew Morton Cc: Hui Su , linux-xfs@vger.kernel.org, linux-mm@kvack.org Subject: put the xfs xfile abstraction on a diet v4 Date: Mon, 19 Feb 2024 07:27:08 +0100 Message-Id: <20240219062730.3031391-1-hch@lst.de> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: 2696E10000D X-Stat-Signature: fs5zxbj1i388hk7tq1sfqk9wun7d36kz X-HE-Tag: 1708324052-237940 X-HE-Meta: U2FsdGVkX1/D4QUo6LEA1ZkUz34GRpudZ5yKXaQqfqWlALUUwuxMItIKAyxhQDTv3fv08hW17Eu5hJtZbYrpnpfJR+M5U0q9Y1z+83ZXoBr8Qa+DuC02cdiraA/QGHz/0WaDp/mKqysh2/nHY1qMxsT4p55HeHYQ5TD3UdPGvk8eyRM1rEvvRiI4Mi8F7atgYEz+6ZsnG06J+c1HR3iujYAIUn9lEz8WediHyyFOqJpa3Yrx2GEnnnO2rhQZusN4KmXLtVtKBtY6D8pGDijUMAwJV/ejrsG/1FkmajbetzcDOpm7OHSaJtoZj5OQwoZxUGydoZVRuUnLZsCptPd2onQDZpVjGSjwjjFdGqofABVw0lM7DDbXiK1p05szJEi2jwKVEQ5PrOLA2vSPDUCgZa9DVOfopNLByEON6i45mOXqqrLtHDs8Bh/R537nDna6pE9uxMDT2SvlbSb6jF6/n5ZBGO/2dbj6cnpm8EFQ8/TcSbEo4Xs6EIgeOiBOZUORHxHBUxKf3RKeQAC6e9gnvOYSyKKlCstzgAxoAQO2ALhhQ+D892zewIViseHcsk1w1yIwameK+hWDaIqc/Ohq6hkR9r9M7o9/9MIJOHV4560uxm1ETLzfRlUtNg9CzGB+3gUg8RUkM3hYN2NBS3Ac+zOVv1Eo+nSBt2sVDo2tNI+JsjhsawWT4arGeGGreBnwzbWt5+5Gj3m8KDM5MonPfMHEUGS2TrQ5Rnqp0MVr4x7uCUOCKYOm3M6NkaLv4kBKInHxlBocdCCq69YTJbVxuLDaENF+EaPiEwH32bknXx0Uj9E/DTsDDsM9g/mBfYqSlgxU6+JqP/Rg5jIHqpjbpSqRP0Y6Zk5CQzI+vo8TsItAdtpajwe6JQ3cnncwbUx6/QBPf0sdl6IQ2fJK26uM1orTXyXem6CeoIa83zhp8Z1sEO5apXg5130HTc5WhGILrZbdDOGZ+Nzm5UNHTas Yc1MoR22 9gEpknpYTF1RrMP+PNXm92MHuHU6wpxK8et+iSsUvtTEC7tjMxsabYtr/FKkQlAZay/IfL/x9YojP8Fc22vpJjv49q/si6vW0ShMHwW8eKREgBVJGdRvVs8AAcH7h52ndDNClRAp7DB7bA/rQ4AdnwQ62Iy7vDLFUTEmbntcqoBtignSDrb6+E91x1ijFtm3oOEYoPEOn4Bdc7lIyEQCYAXk1RTCaoMwMzXFaSNNvh0w4QnpvpZkPAFidRbssxXVDv08EG+ovQUZE6jBZApsDAwD8hTsphKP49FTB93ANee9lW21KV6R7cjHgaQHynIAs4ikK4r434jFSh/tMKqOiTYo867Mvg5T9tXM8CCjzdTjFEgymMS8u18skIfmru1IsQm+7J6mGLM9U66nuLDQVpjgHoTSU0jSl+MO2 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: Hi all, this series refactors and simplifies the code in the xfs xfile abstraction, which is a thing layer on a kernel-use shmem file. To do this is needs a slighly lower level exports from shmem.c, which I combined with improving an assert and documentation there. As per the previous discussion this should probably be merged through the xfs tree. The series is against current mainline. Changes since v3: - improve the shmem_get_folio documentation - use VM_NORESERVE - split and reorder the file setup patches - improve a commit message Changes since v2: - include internal.h in workingset.h to avoid a buildbot warning - update the usage comment for shmem_get_folio - improve the xfile_load/store documentation - don't use highmem for xfiles for real - only call filemap_check_wb_err to check for errors on the mapping Changes since v1: - fix reading i_blocks - provide wrappers for reading i_size and i_blocks - update the xfile load/store documentation - improve a commit message - use shmem_kernel_file_setup - add a missing folio unlock in the hwpoison path in xfile_get_page - fix checking for shmem mappings - improve I/O error handling (Darrick) - convert to folios (partially from Darrick) Diffstat: Documentation/filesystems/xfs/xfs-online-fsck-design.rst | 25 - fs/xfs/scrub/rtsummary.c | 6 fs/xfs/scrub/trace.h | 81 ++- fs/xfs/scrub/xfarray.c | 234 ++++------ fs/xfs/scrub/xfarray.h | 11 fs/xfs/scrub/xfile.c | 345 +++++---------- fs/xfs/scrub/xfile.h | 62 -- include/linux/shmem_fs.h | 6 include/linux/swap.h | 10 mm/filemap.c | 9 mm/internal.h | 4 mm/shmem.c | 37 + mm/workingset.c | 1 13 files changed, 349 insertions(+), 482 deletions(-)