Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp191710ybt; Tue, 7 Jul 2020 20:11:05 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwM4QqLcCWz4+madHaH44ohAmtXd2SQGt3ufUklBOEDBy+i++K6rLqDQJv8GrEncO3Lb7ip X-Received: by 2002:aa7:d4d2:: with SMTP id t18mr38069153edr.166.1594177864928; Tue, 07 Jul 2020 20:11:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1594177864; cv=none; d=google.com; s=arc-20160816; b=FivxhN97jCqUdrqwjedWiMMXTNJn1li7dUiw2xpF2hYz9D5SxQSVfJFAC5K1P36zSw bNYGTXTE5w4wZyQqrsvIpWDhY4HEg0aSc0kB9nSMDm7SGr/5ZWQJOgwdiXPF+SRwm9/w eH2xCP/gqUDhGmB+3U4TCoTNsxCR5rUKeAjMOvLyxgpUXX8edOoQDugTXtDk1JBg6jZ8 70PfHH6740CRQmjBDKjbai8LIkzLN1TwM0frWg49lEztjd4z1yaaypjioIZvfYe2SKvs nE05CcFk/PSnkmNUH102gROgB4zIMJq9Mg04TnwTmNhwhNcU7asrYoVeluOLvq+zC9rf DspQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:from:subject:mime-version :message-id:date:dkim-signature; bh=sxoy6q+HxdTygJctVhkj+Ncax7HD8YrVRDBUHbmI/GA=; b=R3dipek8SMCL2/XVnOJNE5lR7VIHfmTHxtUfP3lBamxxrOSGufrB+DQfU84L88a7RO zMTqd53s+5o3Kb9q0x516rs0RyaXvweik4Gx8kZeqT9bMhoWbOo2nbuwAbyx9SdSP554 uUHW8FwscnEnhTfKXM4DnBfenpi3K9EvqBmR/ZF4laQ3NbKSjw2pAALE2MSQiOEd6x5k VWtDI4XLnX8qhueDXVcr038m0Zf9tH4C7LQ4VKt4gfAW0QivhOW4dPHiBM66BCbjwI9q UiOgMjLUzdO7QxNQkwvCD25GlvYUQepf4BRphFdczoF9O/8JVqYxfJjmug7Qh97io36F Hiyw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20161025 header.b=jvxGSCDz; 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=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id s25si16414262ejv.413.2020.07.07.20.10.41; Tue, 07 Jul 2020 20:11:04 -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; dkim=pass header.i=@google.com header.s=20161025 header.b=jvxGSCDz; 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=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729080AbgGHDF6 (ORCPT + 99 others); Tue, 7 Jul 2020 23:05:58 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56724 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728657AbgGHDF5 (ORCPT ); Tue, 7 Jul 2020 23:05:57 -0400 Received: from mail-pg1-x54a.google.com (mail-pg1-x54a.google.com [IPv6:2607:f8b0:4864:20::54a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 7C4D5C08C5E2 for ; Tue, 7 Jul 2020 20:05:57 -0700 (PDT) Received: by mail-pg1-x54a.google.com with SMTP id p8so33926370pgj.14 for ; Tue, 07 Jul 2020 20:05:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:message-id:mime-version:subject:from:to:cc; bh=sxoy6q+HxdTygJctVhkj+Ncax7HD8YrVRDBUHbmI/GA=; b=jvxGSCDzgqCSzD3A5CZ6zoxEY3HwELi8FObL00AmNlxQWLpvrUeBFZBc3B9zB5etbX mYEpJX0jRgUUJ4S9ot+BQk61eRDjpYkKZjXS5FkMSOUavjWBlMPiA5+LW/699y0iXpQC s8ynNf8lIHMTPkHzVRmSAVfDowYI++DiMfl/exKk9l+l/8eEG3w0s91A1Ycqqyju5MfB hrssrkk130gtKV4YYHCQ2dycaO4RT4XQHdC+kpGmlUYHSXN8zNcGMq9fWspZLGH9mYPU dePpa1pDLmtFFKbvxkZX6SahRyc7gjEHircUdtQBKPXrVPw+ESEA+mxA7Fqh1xXzohzl +nKg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:message-id:mime-version:subject:from:to:cc; bh=sxoy6q+HxdTygJctVhkj+Ncax7HD8YrVRDBUHbmI/GA=; b=YgDZ23/8ZGW4GfZ1P8qBQqOZ0R4Bj/IfHlURJyUtQHk05IRa3OJrha7qJn6vIOw4P/ E2Jx70WEAGN7Kwb4yaJaSkVx8ZmCTuSXPWY0vL1VVz9HKyzvRMhsFRgHANR0Tvx+jzhJ FbBrLp8MECxN/kX3puCfXgK44Tem4joPaMKwRFwuYDjJvmIaOH/uDB3jA35Vyd2cpf+e MjMA6EJY0InZEYOnHQ2PaMNM4WWBu++6WyatHkf9eShl3P75COBWMuAwA1G65FUZmfdR Oiob0kzpD3i1X3gpZMIPdELtoADA67MEV9DiwEntQfnT9bwRvH60UCmILWqYEMxqsa/B 65og== X-Gm-Message-State: AOAM531KQeFT/KiU38jB0X8h2S/uHjH6u6n/uP/am5GINti5r9b4+zrv imCqtuKm6SWEYfcjLqx0NfQL10Avmk8= X-Received: by 2002:a17:90a:1fcb:: with SMTP id z11mr1032734pjz.1.1594177556279; Tue, 07 Jul 2020 20:05:56 -0700 (PDT) Date: Tue, 7 Jul 2020 20:05:48 -0700 Message-Id: <20200708030552.3829094-1-drosen@google.com> Mime-Version: 1.0 X-Mailer: git-send-email 2.27.0.383.g050319c2ae-goog Subject: [PATCH v11 0/4] Prepare for upcoming Casefolding/Encryption patches From: Daniel Rosenberg To: "Theodore Ts'o" , linux-ext4@vger.kernel.org, Jaegeuk Kim , Chao Yu , linux-f2fs-devel@lists.sourceforge.net, Eric Biggers , linux-fscrypt@vger.kernel.org, Alexander Viro Cc: Andreas Dilger , linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org, Gabriel Krisman Bertazi , kernel-team@android.com, Daniel Rosenberg Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This lays the ground work for enabling casefolding and encryption at the same time for ext4 and f2fs. A future set of patches will enable that functionality. These unify the highly similar dentry_operations that ext4 and f2fs both use for casefolding. In addition, they improve d_hash by not requiring a new string allocation. Daniel Rosenberg (4): unicode: Add utf8_casefold_hash fs: Add standard casefolding support f2fs: Use generic casefolding support ext4: Use generic casefolding support fs/ext4/dir.c | 64 +--------------------------- fs/ext4/ext4.h | 12 ------ fs/ext4/hash.c | 2 +- fs/ext4/namei.c | 20 ++++----- fs/ext4/super.c | 12 +++--- fs/f2fs/dir.c | 84 ++++-------------------------------- fs/f2fs/f2fs.h | 4 -- fs/f2fs/super.c | 10 ++--- fs/f2fs/sysfs.c | 10 +++-- fs/libfs.c | 94 +++++++++++++++++++++++++++++++++++++++++ fs/unicode/utf8-core.c | 23 +++++++++- include/linux/f2fs_fs.h | 3 -- include/linux/fs.h | 16 +++++++ include/linux/unicode.h | 3 ++ 14 files changed, 172 insertions(+), 185 deletions(-) -- 2.27.0.383.g050319c2ae-goog