Received: by 2002:a25:ad19:0:0:0:0:0 with SMTP id y25csp6626567ybi; Sun, 21 Jul 2019 22:25:57 -0700 (PDT) X-Google-Smtp-Source: APXvYqx4WWUh+ww6yDTSLktR1IyhVBTuEvwnwK2lI2ydF+kf3ynS1KR7q8jSx9g3Vb7PKvR37YqB X-Received: by 2002:a17:90a:3aed:: with SMTP id b100mr75791309pjc.63.1563773157619; Sun, 21 Jul 2019 22:25:57 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1563773157; cv=none; d=google.com; s=arc-20160816; b=L5/m4QZb7LBamoRRB30c9YV59oNHUwwEqFPyeDO894+a3eGINYtuk9gTymJEF/5xac ziHOBL7Th0XBUP8dZaJPQW0OZ8Q27qd5ZiC2Mie8uC5+yHLQ8vHXPYqDEtVA4zHp0h4p NK9WL+2s4rXwDvH/DelotrkPqplLWgTMxGD2wSSg1ACwRXXY7gXz/skA23jEYMQsCeix 4LOYpg6j6zMexsV3O6sHxu3sgum2e9b9Qiqjwlp2WpDxI3pqlJT8engGFCjFmsyJrilp 7mMoGcKJeOeefWD1rLJy7DUXK+5CyqCFB+8IjCgJxvhUGvwf059O7jNcnWvKhepDxT9l TSXg== 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:from:references:cc:to :subject; bh=L3pPt8xCj0l0Opk/fcMWBu3gwAbz9p183li75O85KMQ=; b=VD3sq//jgJvXlFxeyQZteaCvT97LvZgB5Hc7/sb9g21JR9zlGhbPq+95WrP5/shLE0 tFITsvN1zzeumySTbve/X5qu81TaldCsJyCSejUW5+2fHBL8lC3fYJl7Tc9HDGSiSBNg KvN/06Tq21/ySjVxK9TBK9x4Aj+wC3+QoTvZadJz41kIolgXTrAuILsZ6oq+ktcDdeVc 1MFg6+VaBm2HQGsySJlPe6WXNWXC9MWTBG+1u9xg7VBcodWclvJ04Eck4rUgvvAbDew9 OB9kRTfOjpjoLQyCxRWARnp/8EpNz/ba0ICgwQ+WA+C3m9HyjEKvi9yE039Rre/I1djs ToKw== 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 d23si7153329pjv.56.2019.07.21.22.25.41; Sun, 21 Jul 2019 22:25:57 -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 S1726748AbfGVFSU (ORCPT + 99 others); Mon, 22 Jul 2019 01:18:20 -0400 Received: from szxga07-in.huawei.com ([45.249.212.35]:58252 "EHLO huawei.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1725795AbfGVFSU (ORCPT ); Mon, 22 Jul 2019 01:18:20 -0400 Received: from DGGEMS410-HUB.china.huawei.com (unknown [172.30.72.60]) by Forcepoint Email with ESMTP id 393D483F44B3A87A86CF; Mon, 22 Jul 2019 13:02:06 +0800 (CST) Received: from [10.151.23.176] (10.151.23.176) by smtp.huawei.com (10.3.19.210) with Microsoft SMTP Server (TLS) id 14.3.439.0; Mon, 22 Jul 2019 13:01:58 +0800 Subject: Re: [PATCH v3 12/24] erofs: introduce tagged pointer To: Amir Goldstein CC: Alexander Viro , Greg Kroah-Hartman , Andrew Morton , Stephen Rothwell , Theodore Ts'o , "Linus Torvalds" , linux-fsdevel , , LKML , , Chao Yu , Miao Xie , Li Guifu , Fang Wei References: <20190722025043.166344-1-gaoxiang25@huawei.com> <20190722025043.166344-13-gaoxiang25@huawei.com> From: Gao Xiang Message-ID: <39fad3ab-c295-5f6f-0a18-324acab2f69e@huawei.com> Date: Mon, 22 Jul 2019 13:01:44 +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 Hi Amir, On 2019/7/22 12:39, Amir Goldstein wrote: > On Mon, Jul 22, 2019 at 5:54 AM Gao Xiang wrote: >> >> Currently kernel has scattered tagged pointer usages >> hacked by hand in plain code, without a unique and >> portable functionset to highlight the tagged pointer >> itself and wrap these hacked code in order to clean up >> all over meaningless magic masks. >> >> This patch introduces simple generic methods to fold >> tags into a pointer integer. Currently it supports >> the last n bits of the pointer for tags, which can be >> selected by users. >> >> In addition, it will also be used for the upcoming EROFS >> filesystem, which heavily uses tagged pointer pproach >> to reduce extra memory allocation. >> >> Link: https://en.wikipedia.org/wiki/Tagged_pointer > > Well, it won't do much good for other kernel users in fs/erofs/ ;-) Thanks for your reply and interest in this patch.... :) Sigh... since I'm not sure kernel folks could have some interests in that stuffs. Actually at the time once I coded EROFS I found tagged pointer had 2 main advantages: 1) it saves an extra field; 2) it can keep the whole stuff atomicly... And I observed the current kernel uses tagged pointer all around but w/o a proper wrapper... and EROFS heavily uses tagged pointer... So I made a simple tagged pointer wrapper to avoid meaningless magic masks and type casts in the code... > > I think now would be a right time to promote this facility to > include/linux as you initially proposed. > I don't recall you got any objections. No ACKs either, but I think > that was the good kind of silence (?) Yes, no NAK no ACK...(it seems the ordinary state for all EROFS stuffs... :'( sigh...) Therefore I decided to leave it in fs/erofs/ in this series... > > You might want to post the __fdget conversion patch [1] as a > bonus patch on top of your series. I am not sure if another potential users could be quite happy with my ("sane?" or not) implementation... (Is there some use scenerios in overlayfs and fanotify?...) and I'm not sure Al could accept __fdget conversion (I just wanted to give a example then...) Therefore, I tend to keep silence and just promote EROFS... some better ideas?... Thanks, Gao Xiang