Received: by 2002:a25:e74b:0:0:0:0:0 with SMTP id e72csp1660356ybh; Thu, 16 Jul 2020 19:43:32 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyIedLlzEE6m9dtnhiV5EXRJ4EuSuHLkDCEgBituqKkQY8smrdCGWi8T9U38Qcens84FFqU X-Received: by 2002:a17:906:eb93:: with SMTP id mh19mr6395180ejb.552.1594953812725; Thu, 16 Jul 2020 19:43:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1594953812; cv=none; d=google.com; s=arc-20160816; b=OUNq2WAlni9gV03ftN0nl9nrQ78Lq8Mj8gslEB703gI1G2yq/yVmQZLFKMW6uenFBP EtFGAWnWsrsWYATV1TOhtBcWf+YqVOzP4KoK/ItKClpWXmpemtXA1k2eQ3L9Y1dHP+L/ YfNkannP71jnN/bM6gLUvMtWhwUlmDYDoGnv1T/LBU71aSR0fAbJ3i5wvDPG67hZowuy cJGv81LIrxIu4KqjT85a+aBM2LnfNOan7UxFBgBzBR7XZnZR0+o/Dx3dPP6uT0RYYDQD wnVByc40mM4j3yxOA5Iy1pDh6lXMJ7v9PTbzSKPP3M4yFGwZgR5K1VgDjIgoekKdVsRE e5yg== 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=sivLHFNN5MN9GXUwifeZhxCLfmOx7zN2DMRWPUsgHtE=; b=NEarMzCQ/LNR2tUzrkf5A/If5FqG1BHNZoCdD9x9PZbmFUg9/rMdNhQFQ1TE6BKGnT DRul0xRMYNwoF9nuFpeigC1qPBYZRCeHfcc+GGGC0uu3xzwjHkFQg+1T/Jd8gtLdX4Cj VXt7/wkmTrN5nvgkZHgbjoAZEy6jfn+6Icw4QWlIp97J4ykNCmCnEQmqoGJSTU5y13BI IEhQ0y9vzFZTKz6xkuyddVvXCSEmmvAZ/8a+p3+M02cnStAyWqL3jXu//3ErBkLQiX0M 45bposECwtHnpQp69EneXvCx4Em/U8N2TY/lm4+25XiY7AYdWqWpq8ifrvhHMm7C/vjz tRIQ== 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id gh11si4364835ejb.442.2020.07.16.19.42.53; Thu, 16 Jul 2020 19:43: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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726234AbgGQCmp (ORCPT + 99 others); Thu, 16 Jul 2020 22:42:45 -0400 Received: from szxga04-in.huawei.com ([45.249.212.190]:8311 "EHLO huawei.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726138AbgGQCmp (ORCPT ); Thu, 16 Jul 2020 22:42:45 -0400 Received: from DGGEMS411-HUB.china.huawei.com (unknown [172.30.72.58]) by Forcepoint Email with ESMTP id 33245918CCE680B2C4B2; Fri, 17 Jul 2020 10:42:43 +0800 (CST) Received: from [127.0.0.1] (10.174.179.91) by DGGEMS411-HUB.china.huawei.com (10.3.19.211) with Microsoft SMTP Server id 14.3.487.0; Fri, 17 Jul 2020 10:42:33 +0800 Subject: Re: [PATCH -next] bcache: Convert to DEFINE_SHOW_ATTRIBUTE To: Coly Li CC: Greg Kroah-Hartman , Kent Overstreet , , , References: <20200716090313.13216-1-miaoqinglang@huawei.com> <639a9561-2824-b668-42b3-b69f016f54e1@suse.de> From: miaoqinglang Message-ID: Date: Fri, 17 Jul 2020 10:42:33 +0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.7.0 MIME-Version: 1.0 In-Reply-To: <639a9561-2824-b668-42b3-b69f016f54e1@suse.de> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 8bit X-Originating-IP: [10.174.179.91] X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 在 2020/7/17 10:22, Coly Li 写道: > On 2020/7/16 17:54, Coly Li wrote: >> On 2020/7/16 17:03, Qinglang Miao wrote: >>> From: Yongqiang Liu >>> >> >> Hi Qianlang and Yongqiang, >> >>> Use DEFINE_SHOW_ATTRIBUTE macro to simplify the code. >>> >>> Signed-off-by: Yongqiang Liu >>> --- >>> drivers/md/bcache/closure.c | 16 +++------------- >>> 1 file changed, 3 insertions(+), 13 deletions(-) >>> >>> diff --git a/drivers/md/bcache/closure.c b/drivers/md/bcache/closure.c >>> index 99222aa5d..37b9c5d49 100644 >>> --- a/drivers/md/bcache/closure.c >>> +++ b/drivers/md/bcache/closure.c >>> @@ -159,7 +159,7 @@ void closure_debug_destroy(struct closure *cl) >>> >>> static struct dentry *closure_debug; >>> >>> -static int debug_seq_show(struct seq_file *f, void *data) >>> +static int debug_show(struct seq_file *f, void *data) >>> { >>> struct closure *cl; >>> >>> @@ -188,17 +188,7 @@ static int debug_seq_show(struct seq_file *f, void *data) >>> return 0; >>> } >>> >>> -static int debug_seq_open(struct inode *inode, struct file *file) >>> -{ >>> - return single_open(file, debug_seq_show, NULL); >>> -} >>> - >> >> Here NULL is sent to single_open(), in DEFINE_SHOW_ATTRIBUTE() >> inode->i_private is sent into single_open(). I don't see the commit log >> mentions or estimates such change. >> > > Still this change modifies original code logic, I need to know the exact > effect before taking this patch.I've noticed this diffrence and I'm testing bcache on a new qemu environment with this patch applied. > >> >>> -static const struct file_operations debug_ops = { >>> - .owner = THIS_MODULE, >>> - .open = debug_seq_open, >>> - .read_iter = seq_read_iter, >> >> I doubt this patch applies to Linux v5.8-rc, this is how debug_ops is >> defined in Linux v5.8-rc5, >> > > I realize your patch is against linux-next, which is ahead of both > linux-block and mainline tree. So this patch does not apply to > linux-block tree, which is my upstream for bcache going to upstream. > > I suggest to generate the patch against latest mainline kernel, or > linux-block branch for next merge window (for 5.9 it is branch > remotes/origin/for-5.9/drivers). > Yes you're right, this patch is based on linux-next with commit <4d4901c6d7>. Sorry I didn't mention it in commit log. > >> 196 static const struct file_operations debug_ops = { >> 197 .owner = THIS_MODULE, >> 198 .open = debug_seq_open, >> 199 .read = seq_read, >> 200 .release = single_release >> 201 }; >> >>> - .release = single_release >>> -}; >>> +DEFINE_SHOW_ATTRIBUTE(debug); >>> >>> void __init closure_debug_init(void) >>> { >>> @@ -209,7 +199,7 @@ void __init closure_debug_init(void) >>> * about this. >>> */ >>> closure_debug = debugfs_create_file( >>> - "closures", 0400, bcache_debug, NULL, &debug_ops); >>> + "closures", 0400, bcache_debug, NULL, &debug_fops); >>> } >>> #endif >> >> Do you test your change with upstream kernel ? Or at least you should >> try to apply and compile the patch with latest upstream kernel. > > I withdraw the above wrong word, the -next tag in patch subject was > overlooked by me. Next time I will try to avoid such mistake. > > Coly Li > > > . > I will send a new patch based on 5.9 mainline after more detailed analysis and test. Thanks. Qinglang .