From patchwork Wed Aug 16 01:14:31 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Rosenberg X-Patchwork-Id: 13354513 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 lists.sourceforge.net (lists.sourceforge.net [216.105.38.7]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id CC94BC0015E for ; Wed, 16 Aug 2023 02:07:38 +0000 (UTC) Received: from [127.0.0.1] (helo=sfs-ml-2.v29.lw.sourceforge.com) by sfs-ml-2.v29.lw.sourceforge.com with esmtp (Exim 4.95) (envelope-from ) id 1qW5wh-00063x-12; Wed, 16 Aug 2023 02:07:37 +0000 Received: from [172.30.20.202] (helo=mx.sourceforge.net) by sfs-ml-2.v29.lw.sourceforge.com with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.95) (envelope-from <3_CLcZAYKAN8ESPTFOHPPHMF.DPN@flex--drosen.bounces.google.com>) id 1qW5wf-00063o-Pw for linux-f2fs-devel@lists.sourceforge.net; Wed, 16 Aug 2023 02:07:36 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sourceforge.net; s=x; h=Content-Type:Cc:To:From:Subject:Message-ID: Mime-Version:Date:Sender:Reply-To:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:In-Reply-To:References:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=H9VD/R3G+MRr4pzWPFKTK91k5G484Ke6ASD3dpiheZk=; b=bg1UGUwXaPhKEEs6nIuhw4oriw Bx8u+ttd59P2T8PFefqmTCQhGNpIY9DOL0vAt8e6xZVStFuXrSAAJflanqiu+uMwbA2x3kq01xfLn RgSdAu6NbeOjDHGdJbDc2uCK/h2reYFiIA60iwC6xqfhW4p1zYvX+gVGBOGFOk80yKE4=; DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sf.net; s=x ; h=Content-Type:Cc:To:From:Subject:Message-ID:Mime-Version:Date:Sender: Reply-To:Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date :Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To: References:List-Id:List-Help:List-Unsubscribe:List-Subscribe:List-Post: List-Owner:List-Archive; bh=H9VD/R3G+MRr4pzWPFKTK91k5G484Ke6ASD3dpiheZk=; b=k F2/zFhxDtjeKOFvw9pfZhAReiaZjq1JA/Bu0hpDbvDox/tO3/V+G+Pu8VxwCKAUi8YGK2M4osaD2X UNawuLcTVTRKAdDaoQAt1FqCWj9OgLbv6KUdoE92+ZHPcUV0MXN5ZRdETOq7YKRophMutWxzKoNUk 7lk/tGApcW7sEM20=; Received: from mail-qt1-f201.google.com ([209.85.160.201]) by sfi-mx-2.v28.lw.sourceforge.com with esmtps (TLS1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.95) id 1qW5we-0001LY-45 for linux-f2fs-devel@lists.sourceforge.net; Wed, 16 Aug 2023 02:07:36 +0000 Received: by mail-qt1-f201.google.com with SMTP id d75a77b69052e-40ff200f300so75406061cf.2 for ; Tue, 15 Aug 2023 19:07:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1692151650; x=1692756450; h=cc:to:from:subject:message-id:mime-version:date:from:to:cc:subject :date:message-id:reply-to; bh=H9VD/R3G+MRr4pzWPFKTK91k5G484Ke6ASD3dpiheZk=; b=zU/qHpb+xg7Q/ug4ev9aLMM54uBSRj+ITScQNZKjwkpMJpKaAjGF3d/9oZuTcQiYh7 AiuKxKXnDgG8lx9q6SpRet6EcSwsALYktGTJIY65qzkl3JPSJTiojdyrz+jPSsBkmIyb F4EqXgwkKkWpE+zm+Sd7HbAv7rfmhAnv2CjsbP+w+FQiO5ypCu7yofs+72ChvDFxyv2X oDyRFpMZdpuXzewv81CE/W/WPzypx/dqcvUlHTjg9Y5S1Mc0loiaU7aWfipGAxsO66lj arB5fwFBDgRdlWDJ5U+V0rNoB/f+GxXr1LM9rIDrgrywM1Ta8kyNi83n9OO0QVv34f6y 1jVg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692151650; x=1692756450; h=cc:to:from:subject:message-id:mime-version:date:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=H9VD/R3G+MRr4pzWPFKTK91k5G484Ke6ASD3dpiheZk=; b=S70k913llo+YXmCnJNyC43w6HBF1gwOZOTPgwTDZFuxzl86xPbnVFSRuyikirf2uKr Yo7uiGQe5PM/T0gshdy761vFL3cPrEpm4JOCXvGqunos9jBk/eSKTnsak9sJf18/SRLi 0jj3g248XEA2H2veZQsWLdJu0fsgajZcJq/IpZKa3aLUtDKfP19dYiaqqCugzNopbEEI /uds1GBhsRBFEFG+JdXT8WulT6wln9hTZZMzSB8yjT0Wp7jABsGr/l39VsvVwpaHqxG/ 6nP/7jYhPYpClL8mxliqln9SUhu0TeSP0AbF5HFGEplvJSYIa8n2L8Qh9x8oFJ2cigGg 08Og== X-Gm-Message-State: AOJu0YyvdzND3rPVaD7dFwaUwcuEVdvTMxUdfgXnEh2Hg7YgceQytP58 UoBWX1cAzSYLXApO188+RbzQrW9EYRB5ACtmzLdrZICvxO/XD9eRxjERe8XL4RgwSHAULGCGkBx 0Iyr9NHvX0kVfgXUHPhhV37DaG2DZOtcnd4dUmBl8c4EEmzDMwjW53J96A/OG4M/8PPzfdpy0Kw wRunKrymA= X-Google-Smtp-Source: AGHT+IHRLlIGGNwPaRpxAIIhl1cJ1s0NCl5PXS5Bil58d1WAv6OI7FtfbwHuY4ImazllyImjOZPmj1JFiGc= X-Received: from drosen.mtv.corp.google.com ([2620:15c:211:201:19fa:33cd:f272:37ec]) (user=drosen job=sendgmr) by 2002:a05:6902:a08:b0:d42:5cb6:31ff with SMTP id cb8-20020a0569020a0800b00d425cb631ffmr6364ybb.8.1692148476757; Tue, 15 Aug 2023 18:14:36 -0700 (PDT) Date: Tue, 15 Aug 2023 18:14:31 -0700 Mime-Version: 1.0 X-Mailer: git-send-email 2.41.0.694.ge786442a9b-goog Message-ID: <20230816011432.1966838-1-drosen@google.com> To: linux-f2fs-devel@lists.sourceforge.net X-Headers-End: 1qW5we-0001LY-45 Subject: [f2fs-dev] [PATCH 0/1] Add 16K Support for f2fs X-BeenThere: linux-f2fs-devel@lists.sourceforge.net X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Daniel Rosenberg via Linux-f2fs-devel From: Daniel Rosenberg Reply-To: Daniel Rosenberg Cc: Jaegeuk Kim , kernel-team@android.com, linux-kernel@vger.kernel.org, Daniel Rosenberg Errors-To: linux-f2fs-devel-bounces@lists.sourceforge.net F2fs filesystems currently have two large restrictions around block size. The block size must equal the page size, and the block size must be 4096. The following patch, along with the associated f2fs-tools patch set, relax the latter restriction, allowing you to use 16K block size f2fs on a 16K page size system. It does not allow mounting 4K block size f2fs on a 16k page system. Doing that would require a lot more work, requiring a refactor of all block sized struct similar to the userspace patches, as well as handling the block reading/writing at sub page boundaries. As far as I know, buffer_heads are still the main way this is handled in other filesystems. Is there a different option there? I know there's a general desire to move away from buffer_heads, but I don't know of any replacements covering that use case. And it would feel a bit silly to not be able to read older filesystems from a 16k system... Daniel Rosenberg (1): ANDROID: f2fs: Support Block Size == Page Size fs/f2fs/data.c | 2 +- fs/f2fs/node.c | 2 +- fs/f2fs/super.c | 4 +-- include/linux/f2fs_fs.h | 69 ++++++++++++++++++++++++----------------- 4 files changed, 45 insertions(+), 32 deletions(-) base-commit: 0cc81b1ad51287847e494e055e5d3426f95e7921