Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp4216007ybb; Tue, 7 Apr 2020 03:07:53 -0700 (PDT) X-Google-Smtp-Source: APiQypKxtM2O0uCzxJ7MIXx3YZ+x2t1IXeJPdMIej5pPe5vU82LzYh/LZ9bLswgJVcpLATjmrPk4 X-Received: by 2002:a4a:da1a:: with SMTP id e26mr1207800oou.19.1586254073137; Tue, 07 Apr 2020 03:07:53 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1586254073; cv=none; d=google.com; s=arc-20160816; b=uWUzD/aBSIStby5d+jnB1xkTmjD/ghy4zYB8uPgmeGyZyky4WulCuRRfUrclGDoBUl l4Rfsw4F81HygElakqK2GdZpwa6aCwxxEOXT+/SbM4NHGKC27sH9nSiSXm5S8uDpKRog ArKfz1+/++SsdW2E9bbr0AK+IGrCg70hBKrhatoOfpdah4btG7fgXJiyGrB663QmhZLc H2ml7iapGxgH50+sQCwrEOeo/JGNLCh4SiNA4aqUcrmd4Vvlet8Aw8LYUxDYsPxZVdbb jQ32VBt6gczH7R4rfZstuW9GWDOOBoLSQPdpbsNQmTF2lwfbpakKT58j06wn8Nv1RApK gm7A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature; bh=LjrAHXBmFblw2ctL5EdDdlUX5m8zCapUvLgPLWO2KMo=; b=dJedGBHwZvM/bGzqYfc8FDOfjQv1/PlXhgXv/ixalxZRZMHclZS23hniVgY5aMMSKR Y29UrXIvq7rjysTFPukb+GAGVBH+rq1NMvUqSiqObWSp9kHSVmnd++jZAbSayip5GK9f GxoC8oqBQXL1AXO2U9U8wSsQfOrU7im3RDQkLF24mNV0Vs/3IUYpVdOmB94TkcRQRUf1 r5Vt3AK/ieEZWtleR75dzihii5QHdHZtiy8N5T1cseq53rp522n6joIw+dAlxGxgHptl 2l7QQ6KiRNo1sTkPT8g6IWHsFu11BUCtuDRXL8rk+YZyIfn0n3fnFp6h5jbx5a7yAKmN KY5g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=x0bR0Hru; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w16si959580oti.167.2020.04.07.03.07.40; Tue, 07 Apr 2020 03:07:53 -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; dkim=pass header.i=@kernel.org header.s=default header.b=x0bR0Hru; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728180AbgDGKGx (ORCPT + 99 others); Tue, 7 Apr 2020 06:06:53 -0400 Received: from mail.kernel.org ([198.145.29.99]:56976 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728091AbgDGKGw (ORCPT ); Tue, 7 Apr 2020 06:06:52 -0400 Received: from pali.im (pali.im [31.31.79.79]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 09B772074B; Tue, 7 Apr 2020 10:06:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1586254012; bh=V9cZtdFZm4vp72AYlH0hCNozkSgOmUMQmfD7R0ja7VY=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=x0bR0HrultTum5d1bG8ab+EPJyodFKlXKthf0O7D580Md4C/2E3YhDaDzx+ekGLwG w5svOwJbVmQmleIrjgLhDwNK5MecCA3ykdw78ppmoI0dnnBZGKFlagVOO2Iar4xd8s B3rzQaDzSmMCpxUHwhCcF7Otvyt+x6jg3ftI5VYs= Received: by pali.im (Postfix) id 75F8B5F1; Tue, 7 Apr 2020 12:06:48 +0200 (CEST) Date: Tue, 7 Apr 2020 12:06:48 +0200 From: Pali =?utf-8?B?Um9ow6Fy?= To: "Kohada.Tetsuhiro@dc.MitsubishiElectric.co.jp" Cc: "'linux-fsdevel@vger.kernel.org'" , "'linux-kernel@vger.kernel.org'" , "'namjae.jeon@samsung.com'" , "'sj1557.seo@samsung.com'" , "'viro@zeniv.linux.org.uk'" Subject: Re: [PATCH 1/4] exfat: Simplify exfat_utf8_d_hash() for code points above U+FFFF Message-ID: <20200407100648.phkvxbmv2kootyt7@pali> References: <20200403204037.hs4ae6cl3osogrso@pali> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: NeoMutt/20180716 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Monday 06 April 2020 09:37:38 Kohada.Tetsuhiro@dc.MitsubishiElectric.co.jp wrote: > > > If you want to get an unbiased hash value by specifying an 8 or 16-bit > > > value, > > > > Hello! In exfat we have sequence of 21-bit values (not 8, not 16). > > hash_32() generates a less-biased hash, even for 21-bit characters. > > The hash of partial_name_hash() for the filename with the following character is ... > - 21-bit(surrogate pair): the upper 3-bits of hash tend to be 0. > - 16-bit(mostly CJKV): the upper 8-bits of hash tend to be 0. > - 8-bit(mostly latin): the upper 16-bits of hash tend to be 0. > > I think the more frequently used latin/CJKV characters are more important > when considering the hash efficiency of surrogate pair characters. > > The hash of partial_name_hash() for 8/16-bit characters is also biased. > However, it works well. > > Surrogate pair characters are used less frequently, and the hash of > partial_name_hash() has less bias than for 8/16 bit characters. > > So I think there is no problem with your patch. So partial_name_hash() like I used it in this patch series is enough?