Received: by 2002:a05:6a10:2726:0:0:0:0 with SMTP id ib38csp668487pxb; Thu, 24 Mar 2022 04:59:21 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxQQEYpIZKjXBGvnfZ13Vpx5HS15xzJDztAAIYPXWuV1AtYD3uv7vbTQDwMhbzCu+yA4L0P X-Received: by 2002:a05:6402:51c7:b0:419:2bd7:efa4 with SMTP id r7-20020a05640251c700b004192bd7efa4mr6308684edd.135.1648123161259; Thu, 24 Mar 2022 04:59:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1648123161; cv=none; d=google.com; s=arc-20160816; b=uCrdemgD32Hza+0uuLxsHnUnUkGS9sABpI64cgiMR4ozrog58aKYKg3nnSPQ5oHUPz OaiSdGGxShkGHkQc0RdsIRpWxPy5TJj4RSQ4Ha2ZyCODSf6DCfLcbl6XALYqvF9erPfb 0XRYdssj9OimC3A62DGEHDsk9gIcEcNvX78gobPcRY6Czejf7Uwo6yk9Omvn1VF6xX3E JbpRTs6TpF3Kc54AxYdUjWUqEI84WJlVGquK/0kIxQxIB/cbTeyITJpEGyntuO1SwJv7 RoAD9DDB1xzmX0jecFq943ADd2fxH7q4wRubjdNROdWPDts1qQR4r+lASH+qNGh+6DKA jbew== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:user-agent:message-id:in-reply-to :date:references:subject:cc:to:from; bh=5HliAc1gAVFvRQ4eDUrIxeICJJas4rq85O3Vixfn6Ao=; b=S4jx2jEW7UbYwUGpPaBpLNPpIwLd5FdT5S0AyUaEgSVrTT9jZvq8hvycjma+aP810U siIupAX8ecov6aSRp2lHmilLnWjmr6+R1/Dluw1bh4hMEJg7FyRGEl/yBCwb9je6a9HE WrIL0C/frbb4n1EanbKZ6mKejPZ+Gvdyzgsd3L6RWY82pSdwWl5d1b2q0A3ZseJ2w4Of jdi7Wbnz/T8LzMl/nOHISbkGuNv4TXL7auypMIIAHm0tJnDvZqKpmntEB2v+BDNaVkXv fKH+StbvWD9ALTCeITr3SsHtCm3yGGQ/5CqvyPhFhxWDooz9zpuA2PkRXxOmLEUMA3yI Jniw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id b11-20020a170906150b00b006df80878726si14503570ejd.705.2022.03.24.04.58.51; Thu, 24 Mar 2022 04:59:20 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S241041AbiCXFq6 (ORCPT + 99 others); Thu, 24 Mar 2022 01:46:58 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44588 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232029AbiCXFq5 (ORCPT ); Thu, 24 Mar 2022 01:46:57 -0400 Received: from mail.parknet.co.jp (mail.parknet.co.jp [210.171.160.6]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id C7D2F4F469 for ; Wed, 23 Mar 2022 22:45:24 -0700 (PDT) Received: from ibmpc.myhome.or.jp (server.parknet.ne.jp [210.171.168.39]) by mail.parknet.co.jp (Postfix) with ESMTPSA id 48ED115F93B; Thu, 24 Mar 2022 14:45:24 +0900 (JST) Received: from devron.myhome.or.jp (foobar@devron.myhome.or.jp [192.168.0.3]) by ibmpc.myhome.or.jp (8.16.1/8.16.1/Debian-2) with ESMTPS id 22O5jNXF013758 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Thu, 24 Mar 2022 14:45:24 +0900 Received: from devron.myhome.or.jp (foobar@localhost [127.0.0.1]) by devron.myhome.or.jp (8.16.1/8.16.1/Debian-2) with ESMTPS id 22O5jMcD042673 (version=TLSv1.3 cipher=TLS_AES_256_GCM_SHA384 bits=256 verify=NOT); Thu, 24 Mar 2022 14:45:23 +0900 Received: (from hirofumi@localhost) by devron.myhome.or.jp (8.16.1/8.16.1/Submit) id 22O5jMuC042672; Thu, 24 Mar 2022 14:45:22 +0900 From: OGAWA Hirofumi To: Jonathan Lassoff Cc: Andrew Morton , linux-kernel@vger.kernel.org, kernel test robot Subject: Re: [PATCH v2] Add FAT messages to printk index References: <20220324021957.20173-1-jof@thejof.com> Date: Thu, 24 Mar 2022 14:45:22 +0900 In-Reply-To: <20220324021957.20173-1-jof@thejof.com> (Jonathan Lassoff's message of "Thu, 24 Mar 2022 02:19:58 +0000") Message-ID: <87fsn79a4t.fsf@mail.parknet.co.jp> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/29.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_LOW, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Jonathan Lassoff writes: > In order for end users to quickly react to new issues that come up in > production, it is proving useful to leverage the printk indexing system. This > printk index enables kernel developers to use calls to printk() with changable > ad-hoc format strings, while still enabling end users to detect changes and > develop a semi-stable interface for detecting and parsing these messages. > > So that detailed FAT messages are captured by this printk index, this patch > wraps fat_msg with a macro. > > PATCH v1 -- Fix indentation with tabs in fat_msg macro > PATCH v2 -- Define FAT_PRINTK_PREFIX > PATCH v3 -- Fix kernel-doc comment for _fat_msg() > > Reported-by: kernel test robot Acked-by: OGAWA Hirofumi Thanks. > --- > fs/fat/fat.h | 9 ++++++++- > fs/fat/misc.c | 14 ++++++++++---- > 2 files changed, 18 insertions(+), 5 deletions(-) > > diff --git a/fs/fat/fat.h b/fs/fat/fat.h > index 02d4d4234956..2a20a21f2fb9 100644 > --- a/fs/fat/fat.h > +++ b/fs/fat/fat.h > @@ -433,8 +433,15 @@ void __fat_fs_error(struct super_block *sb, int report, const char *fmt, ...); > __fat_fs_error(sb, 1, fmt , ## args) > #define fat_fs_error_ratelimit(sb, fmt, args...) \ > __fat_fs_error(sb, __ratelimit(&MSDOS_SB(sb)->ratelimit), fmt , ## args) > + > +#define FAT_PRINTK_PREFIX "%sFAT-fs (%s): " > +#define fat_msg(sb, level, fmt, args...) \ > +do { \ > + printk_index_subsys_emit(FAT_PRINTK_PREFIX, level, fmt, ##args);\ > + _fat_msg(sb, level, fmt, ##args); \ > +} while(0) > __printf(3, 4) __cold > -void fat_msg(struct super_block *sb, const char *level, const char *fmt, ...); > +void _fat_msg(struct super_block *sb, const char *level, const char *fmt, ...); > #define fat_msg_ratelimit(sb, level, fmt, args...) \ > do { \ > if (__ratelimit(&MSDOS_SB(sb)->ratelimit)) \ > diff --git a/fs/fat/misc.c b/fs/fat/misc.c > index 91ca3c304211..855477d89f41 100644 > --- a/fs/fat/misc.c > +++ b/fs/fat/misc.c > @@ -42,10 +42,16 @@ void __fat_fs_error(struct super_block *sb, int report, const char *fmt, ...) > EXPORT_SYMBOL_GPL(__fat_fs_error); > > /** > - * fat_msg() - print preformated FAT specific messages. Every thing what is > - * not fat_fs_error() should be fat_msg(). > + * _fat_msg() - Print a preformatted FAT message based on a superblock. > + * @sb: A pointer to a &struct super_block > + * @level: A Kernel printk level constant > + * @fmt: The printf-style format string to print. > + * > + * Everything that is not fat_fs_error() should be fat_msg(). > + * > + * fat_msg() wraps _fat_msg() for printk indexing. > */ > -void fat_msg(struct super_block *sb, const char *level, const char *fmt, ...) > +void _fat_msg(struct super_block *sb, const char *level, const char *fmt, ...) > { > struct va_format vaf; > va_list args; > @@ -53,7 +59,7 @@ void fat_msg(struct super_block *sb, const char *level, const char *fmt, ...) > va_start(args, fmt); > vaf.fmt = fmt; > vaf.va = &args; > - printk("%sFAT-fs (%s): %pV\n", level, sb->s_id, &vaf); > + _printk(FAT_PRINTK_PREFIX "%pV\n", level, sb->s_id, &vaf); > va_end(args); > } -- OGAWA Hirofumi