Received: by 2002:a05:6a10:9848:0:0:0:0 with SMTP id x8csp4610956pxf; Tue, 23 Mar 2021 15:24:32 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxD5o+tbnQfWSVGaWr0e8AvTZIhNb5gZTvFApPpto1y4nTecXNsy2P5hFSjpcOOohU0snwu X-Received: by 2002:a05:6402:51d0:: with SMTP id r16mr114875edd.48.1616538272447; Tue, 23 Mar 2021 15:24:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1616538272; cv=none; d=google.com; s=arc-20160816; b=hwHPCgCaUgQB9COT+LbFG1ZifNqaEpj+zKL22a9fbbW/PEnVe42yZJPfcLxhIRAmww C4FMovbs8Qigrw0JDZCV56LZcy8kqz25VFLcutGSgJ8MR47noYwWMlSo+ttId7wrZr45 SaP9A203cIMQQBXu+ru27rbCg21SBHJUSzBCybRR1GY5zpYr0eh4rLr8hwRyQMaVYqgt sqNXFEA8ACGmg/eHfSEtUlmwyf2Gp73T1GnhCgBC/mizRZwGrqrPrHIfueohDixbtShZ PtRKh/H+TgzuElf+hAlZbmzu/0EJIcUPHqJ4bG6iJM6G+fXvgPpjjPhSRUVd6q9m7s5E wdRA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:message-id:in-reply-to:date:references:organization :subject:cc:to:from; bh=yz4YoUqWICgUianP7PRs/+9vMNRZG8xHvaF7IPueKG8=; b=wOVCt+1hTerKoi5/ZSRgWa6+/T/X/KaynAM9d5XjzrhCo42dHhF8DCH7IpXxE7v1H0 b0UelcRVRrT4T5jCwonuk1RAU0fdth7Xmqh4+BPRSkfGOZDmrWfRwKpaPkPWjIPN5lgK /MJVfpnQ8WbEVBIxKU0OEZQwnTMCyp/iM5Amy7bC7dnL1z9I8UUR/L3n1DdRXQ0osCyx oITbaPnv8s0fThmwZG48jjVayZkX0mO0RM+OzjpyMQcr23Ru7QH3oI8ZpN24YlKU5Pmi Gbkg0L2vuHgtm1bgEe+xBW+qsGgBhlNLNotyk6VESaCAlWW5rdwYu3dWVt42b6RaBlDz hS2Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=collabora.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id gt30si220467ejc.742.2021.03.23.15.24.07; Tue, 23 Mar 2021 15:24:32 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=collabora.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234002AbhCWWWw convert rfc822-to-8bit (ORCPT + 99 others); Tue, 23 Mar 2021 18:22:52 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:38372 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233944AbhCWWUO (ORCPT ); Tue, 23 Mar 2021 18:20:14 -0400 Received: from bhuna.collabora.co.uk (bhuna.collabora.co.uk [IPv6:2a00:1098:0:82:1000:25:2eeb:e3e3]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3D859C0613D9; Tue, 23 Mar 2021 15:19:24 -0700 (PDT) Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: krisman) with ESMTPSA id F19DE1F4561C From: Gabriel Krisman Bertazi To: =?utf-8?Q?Andr=C3=A9?= Almeida Cc: Hugh Dickins , Andrew Morton , Alexander Viro , smcv@collabora.com, kernel@collabora.com, linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, Daniel Rosenberg Subject: Re: [RFC PATCH 4/4] docs: tmpfs: Add casefold options Organization: Collabora References: <20210323195941.69720-1-andrealmeid@collabora.com> <20210323195941.69720-5-andrealmeid@collabora.com> Date: Tue, 23 Mar 2021 18:19:19 -0400 In-Reply-To: <20210323195941.69720-5-andrealmeid@collabora.com> (=?utf-8?Q?=22Andr=C3=A9?= Almeida"'s message of "Tue, 23 Mar 2021 16:59:41 -0300") Message-ID: <87o8f9bjiw.fsf@collabora.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8BIT Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org André Almeida writes: > Document mounting options to enable casefold support in tmpfs. > > Signed-off-by: André Almeida > --- > Documentation/filesystems/tmpfs.rst | 26 ++++++++++++++++++++++++++ > 1 file changed, 26 insertions(+) > > diff --git a/Documentation/filesystems/tmpfs.rst b/Documentation/filesystems/tmpfs.rst > index 0408c245785e..84c87c309bd7 100644 > --- a/Documentation/filesystems/tmpfs.rst > +++ b/Documentation/filesystems/tmpfs.rst > @@ -170,6 +170,32 @@ So 'mount -t tmpfs -o size=10G,nr_inodes=10k,mode=700 tmpfs /mytmpfs' > will give you tmpfs instance on /mytmpfs which can allocate 10GB > RAM/SWAP in 10240 inodes and it is only accessible by root. > > +tmpfs has the following mounting options for case-insesitive lookups support: > + > +========= ============================================================== > +casefold Enable casefold support at this mount point using the given > + argument as enconding. Currently only utf8 encondings are supported. > +cf_strict Enable strict casefolding at this mouting point (disabled by > + default). This means that invalid strings should be reject by the > + file system. strict mode refers to the encoding, not exactly casefold. Maybe we could have a parameter encoding_flags that accepts the flag 'strict'. This would make it closer to the ext4 interface. Alternatively, call this option strict_encoding. > +========= ============================================================== > + > +Note that this option doesn't enable casefold by default, one needs to set > +casefold flag per directory, setting the +F attribute in an empty directory. New > +directories within a casefolded one will inherit the flag. > + > +Example:: > + > + $ mount -t tmpfs -o casefold=utf8-12.1.0,cf_strict tmpfs /mytmpfs > + $ cd /mytmpfs > + $ touch a; touch A > + $ ls > + A a > + $ mkdir dir > + $ chattr +F dir > + $ touch dir/a; touch dir/A > + $ ls dir > + a > > :Author: > Christoph Rohland , 1.12.01 -- Gabriel Krisman Bertazi