Received: by 2002:ac0:a5a7:0:0:0:0:0 with SMTP id m36-v6csp276101imm; Thu, 26 Jul 2018 18:57:23 -0700 (PDT) X-Google-Smtp-Source: AAOMgpetjsiV+XxpLS+09Ow8cgSqOiutTKB1BcxiXc6/Vd1d3XgaSLbn5VVAm1BthgflEYTapTDQ X-Received: by 2002:a63:cf4a:: with SMTP id b10-v6mr4136289pgj.235.1532656643786; Thu, 26 Jul 2018 18:57:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1532656643; cv=none; d=google.com; s=arc-20160816; b=acEmlNvwSFahsiDlZWDSqN2sA4q4N9VQsJjK63U6/Jqrp1LBhIy8i4/Am9eUP8ilER lctOp/cYxHmLqUhixvKA5ArAp5UZWLYEuAzKbKaVYVWANNG6I/9BF0QSFwpk33nV26Cn hUXl++VFq4xxQDdKSJL8EqJIrJx/ZTsyEjwHKhoV6gOpELfaAHXs4yKpPsG9rOyvAB1G J73cVUhV2LWFOnatT24eKn4QXemVSxBV8M9Bn5gZRP+gS8o2lRlKkMno2+5WcGs5rFWl 40eaIaTq6gS8wXDEjy7IDnp9mwvJXyPyl0HOf9Ix6OFFV/gmSoiypUhWGpj+TSGBHeoe 6KuA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:in-reply-to :mime-version:user-agent:date:message-id:references:cc:to:from :subject:arc-authentication-results; bh=EMO+lm9s4vsA3tNIrHR3J0+o1b+5Jo6d/4lW4enhtBE=; b=pztBqzuUiM/xx3zlvSlhPhMPmoFp/fNY4RaO45kwtant+w++Nrk7KwDf7H10arbwzm GCadjmjYxpYqIH+yugHSybHfK2HjXcJZ9owpH8R4CAJkqgUOQO4M0xqND6L75flNpAxl Iaf/LEYMFI8sTRO98ME/xNaGc8eigkiPtVcYmVsN2muMZfL6htp5uLH3chLR0YvAqr/8 R0uGHA9HlOqf3KKWFMiWkHSScc0xyec0bsQuHWzj+7mKQjQTMBwXGfEILHz2gV1b3ifb BAwpmtgZ9XMS3Pv5KEj1jfxGTjn7zzn2YUl8FcQWw1zTXZJxNxHwEEfVrxAt0ZD3asir WtMA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w65-v6si2610516pgb.377.2018.07.26.18.57.08; Thu, 26 Jul 2018 18:57:23 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1732075AbeG0DPt (ORCPT + 99 others); Thu, 26 Jul 2018 23:15:49 -0400 Received: from szxga04-in.huawei.com ([45.249.212.190]:10138 "EHLO huawei.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1731737AbeG0DPt (ORCPT ); Thu, 26 Jul 2018 23:15:49 -0400 Received: from DGGEMS405-HUB.china.huawei.com (unknown [172.30.72.59]) by Forcepoint Email with ESMTP id B8CDA43FD835F; Fri, 27 Jul 2018 09:56:16 +0800 (CST) Received: from [10.151.23.176] (10.151.23.176) by smtp.huawei.com (10.3.19.205) with Microsoft SMTP Server (TLS) id 14.3.382.0; Fri, 27 Jul 2018 09:56:17 +0800 Subject: Re: [PATCH 00/25] staging: erofs: introduce erofs file system From: Gao Xiang To: Christian Kujau CC: , , References: <1527764767-22190-1-git-send-email-gaoxiang25@huawei.com> <1532607728-103372-1-git-send-email-gaoxiang25@huawei.com> Message-ID: <26709565-786c-2876-b504-f8d68e95928f@huawei.com> Date: Fri, 27 Jul 2018 09:56:09 +0800 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.3.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-Originating-IP: [10.151.23.176] X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2018/7/27 9:39, Gao Xiang wrote: > Every file system has its typical usage case. > > I don't think there exists a silver bullet solving all usage cases optimally. > JFFS2, YAFFS and UBIFS are designed for raw flash, we use UFS or eMMC solution > rather than raw nand flash. > > Cramfs and ROMFS are too simple for us, and it is actually useless because no > similar & duplicate code with EROFS. > > We can save about 200MB+ metadata space than EXT4 by just using EROFS > _without_ compression support in our products, which could be more compared > with F2FS(F2FS has more useless metadata for read-only use such as SIT, and SSA). > Since we are a read-only file system, we could use aggressive inline(compact) and data > deduplication approach. It is not a small number storage space because we > leave some compression ratio for better performance in low memory scenario. > > and I don't think SquashFS is optimal for us, 1) it doesn't have the inline > consideration by design (inline could save storage space also reduce extra data IOs), > 2) it is designed for saving more storage space rather than keeping high performance > for limited physical memory scenario; 3) it has many compatible code for its historial > design, actually its on-disk layout design is hard to be extended considering its > historial images 4) It is not designed for VLE, we need to rewrite more than half of > its current code 5) EROFS has no similar code with the current SquashFS. > > In the end, I don't think F2FS could be an expansion of NILFS2, BTRFS > is an b-tree expansion of some read-write file system. You could call EROFS > as ROMFS2 or Squashfs+ but EROFS is a completely different solution. > We need to evaluate the optimal file system for each specific usage case (actually > we think erofs almost reaches our requirements for our Android products rather > than SquashFS) and KISS for each solution. One more to say, if we could make a rather complicated final file system, and you can imagine it has average or even worse performance, lots of limitation and historial issues(just complicated as the C++ language), and hard to maintain by some individuals and debug. Thanks, Gao Xiang