All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tsuchiya Yuto <kitakar@gmail.com>
To: Mauro Carvalho Chehab <mchehab@kernel.org>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>,
	Sakari Ailus <sakari.ailus@linux.intel.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	 linux-media@vger.kernel.org, linux-staging@lists.linux.dev,
	 linux-kernel@vger.kernel.org,
	Nable <nable.maininbox@googlemail.com>,
	Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
	Fabio Aiuto <fabioaiuto83@gmail.com>,
	 "andrey.i.trufanov" <andrey.i.trufanov@gmail.com>,
	Patrik Gfeller <patrik.gfeller@gmail.com>
Subject: Re: [PATCH 14/17] media: atomisp: pci: Remove remaining instance of call to trace_printk
Date: Thu, 28 Oct 2021 18:34:47 +0900	[thread overview]
Message-ID: <c55212feff3212c27360f2c49f5c4023a95f5b7c.camel@gmail.com> (raw)
In-Reply-To: <20211026093224.6c7f7fbf@sal.lan>

<Adding back people/list to Cc>

On Tue, 2021-10-26 at 09:32 +0100, Mauro Carvalho Chehab wrote:
> Em Mon, 18 Oct 2021 01:19:54 +0900
> Tsuchiya Yuto <kitakar@gmail.com> escreveu:
> 
> > (patch based on intel-aero kernel patch:
> >  https://github.com/intel-aero/meta-intel-aero-base/commit/26fc9fe5030b63bc9dcf0b5f32981948911ca272)
> > 
> > Here is the original commit message from the aforementioned patch:
> > 
> > 	From 26fc9fe5030b63bc9dcf0b5f32981948911ca272 Mon Sep 17 00:00:00 2001
> > 	From: Lucas De Marchi <lucas.demarchi@intel.com>
> > 	Date: Fri, 7 Jul 2017 14:23:53 -0700
> > 	Subject: [PATCH] linux-yocto: Remove remaining instance of call to
> > 	 trace_printk
> > 
> > 	It's not sufficient to leave trace_printk() out of "normal call chains" since
> > 	the way trace infrastructure works is that it will allocate the trace_printk
> > 	buffers if the symbol is there (by using a separate section for the function
> > 	and checking if __start_* and __stop_* symbols are different.
> > 
> > 	Therefore, even if the default value for the param tells the module to use
> > 	printk(), just the fact that it can be changed to trace_printk() means the
> > 	initialization code will be called.
> > 
> > The trace_printk() was replaced by pr_info() on commit 3d81099c75a6
> > ("media: atomisp: Replace trace_printk by pr_info") for the upstreamed
> > atomisp, too. However, as the aforementioned commit message says, there
> > is still a remaining instance. This causes the "trace_printk() being
> > used" kernel warning message to still appear on the first driver load.
> > 
> > Based on the aforementioned patch, this patch removes the call to
> > ftrace_vprintk(). This removes that kernel warning.
> > 
> > In addition to this, this patch also removes the following now unused
> > things:
> > 
> >     - now empty atomisp_css2_dbg_ftrace_print()
> >     - trace_printk option from dbg_func kernel parameter
> 
> This patch is incomplete. I mean, if the idea is to drop support for
> trace, dbg_func parameter becomes obsolete, and a lot of code can be
> dropped/cleaned.

I left __set_css_print_env() and dbg_func module parameter intentionally
because there is still the option "non", which means do not use any
function to log. Yes, I don't know if it's really useful since the module
parameter dbg_level=0 (this is the default value) means no debug output.

However, they (those who originally wrote atomisp) added the option "non"
anyway. So, I thought there is a use case for this.

If everyone thinks it's useless, I can additionally remove them. In this
case, indeed a lot of code may be additionally removed (I haven't checked
yet).

> That's said, I don't see a good reason to drop it, at least while
> this driver is not 100%.

This driver is not 100% yet, but at least it can capture images now
(at least on ISP2401). So, I thought this is the right time to remove
it when I wrote this patch.

But yes, we don't necessarily have to drop it. The other idea is hide
it by default using a macro, and still can be enabled by manual edit.
Here is the example from drivers/usb/dwc2/core.h:

        49-/*
        50- * Suggested defines for tracers:
        51- * - no_printk:    Disable tracing
        52- * - pr_info:      Print this info to the console
        53- * - trace_printk: Print this info to trace buffer (good for verbose logging)
        54- */
        55-
        56:#define DWC2_TRACE_SCHEDULER		no_printk
        57:#define DWC2_TRACE_SCHEDULER_VB		no_printk
        58-
        59-/* Detailed scheduler tracing, but won't overwhelm console */
        60-#define dwc2_sch_dbg(hsotg, fmt, ...)					\
        61:	DWC2_TRACE_SCHEDULER(pr_fmt("%s: SCH: " fmt),			\
        62-			     dev_name(hsotg->dev), ##__VA_ARGS__)
        63-
        64-/* Verbose scheduler tracing */
        65-#define dwc2_sch_vdbg(hsotg, fmt, ...)					\
        66:	DWC2_TRACE_SCHEDULER_VB(pr_fmt("%s: SCH: " fmt),		\
        67-				dev_name(hsotg->dev), ##__VA_ARGS__)

with using pr_info by default for atomisp (the parameter dbg_level is
0 by default, so still no output by default). If this sounds OK, I'd
like to try this way.

> > 
> > Signed-off-by: Tsuchiya Yuto <kitakar@gmail.com>
> > ---
> >  .../staging/media/atomisp/pci/atomisp_compat_css20.c   | 10 ----------
> >  drivers/staging/media/atomisp/pci/atomisp_v4l2.c       |  4 ++--
> >  2 files changed, 2 insertions(+), 12 deletions(-)
> > 
> > diff --git a/drivers/staging/media/atomisp/pci/atomisp_compat_css20.c b/drivers/staging/media/atomisp/pci/atomisp_compat_css20.c
> > index 99a632f33d2d..d81d55c6f1fa 100644
> > --- a/drivers/staging/media/atomisp/pci/atomisp_compat_css20.c
> > +++ b/drivers/staging/media/atomisp/pci/atomisp_compat_css20.c
> > @@ -159,13 +159,6 @@ static void atomisp_css2_hw_load(hrt_address addr, void *to, uint32_t n)
> >  	spin_unlock_irqrestore(&mmio_lock, flags);
> >  }
> >  
> > -static int  __printf(1, 0) atomisp_css2_dbg_ftrace_print(const char *fmt,
> > -							 va_list args)
> > -{
> > -	ftrace_vprintk(fmt, args);
> > -	return 0;
> > -}
> > -
> >  static int  __printf(1, 0) atomisp_vprintk(const char *fmt, va_list args)
> >  {
> >  	vprintk(fmt, args);
> > @@ -860,9 +853,6 @@ static inline int __set_css_print_env(struct atomisp_device *isp, int opt)
> >  	if (opt == 0)
> >  		isp->css_env.isp_css_env.print_env.debug_print = NULL;
> >  	else if (opt == 1)
> > -		isp->css_env.isp_css_env.print_env.debug_print =
> > -		    atomisp_css2_dbg_ftrace_print;
> > -	else if (opt == 2)
> >  		isp->css_env.isp_css_env.print_env.debug_print = atomisp_vprintk;
> >  	else
> >  		ret = -EINVAL;
> > diff --git a/drivers/staging/media/atomisp/pci/atomisp_v4l2.c b/drivers/staging/media/atomisp/pci/atomisp_v4l2.c
> > index f5362554638e..720963156d24 100644
> > --- a/drivers/staging/media/atomisp/pci/atomisp_v4l2.c
> > +++ b/drivers/staging/media/atomisp/pci/atomisp_v4l2.c
> > @@ -87,10 +87,10 @@ module_param(dbg_level, int, 0644);
> >  MODULE_PARM_DESC(dbg_level, "debug message level (default:0)");
> >  
> >  /* log function switch */
> > -int dbg_func = 2;
> > +int dbg_func = 1;
> >  module_param(dbg_func, int, 0644);
> >  MODULE_PARM_DESC(dbg_func,
> > -		 "log function switch non/trace_printk/printk (default:printk)");
> > +		 "log function switch non/printk (default:printk)");
> >  
> >  int mipicsi_flag;
> >  module_param(mipicsi_flag, int, 0644);



  parent reply	other threads:[~2021-10-28  9:34 UTC|newest]

Thread overview: 98+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-17 16:19 [PATCH 00/17] various fixes for atomisp to make it work Tsuchiya Yuto
2021-10-17 16:19 ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 01/17] media: atomisp: pci: add missing media_device_cleanup() in atomisp_unregister_entities() Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 02/17] media: atomisp: pci: fix punit_ddr_dvfs_enable() argument for mrfld_power up case Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
2021-10-18 11:07   ` Andy Shevchenko
2021-10-20 13:25     ` Tsuchiya Yuto
2021-12-01 12:07       ` Tsuchiya Yuto
2021-11-02 11:26   ` Dan Carpenter
2021-11-08 14:48     ` Tsuchiya Yuto
2021-11-08 15:10       ` Dan Carpenter
2021-10-17 16:19 ` [PATCH 03/17] media: atomisp: pci: fix inverted logic in buffers_needed() Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 04/17] media: atomisp: pci: do not use err var when checking port validity for ISP2400 Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
2021-10-26  8:26   ` Mauro Carvalho Chehab
2021-10-28  4:12     ` Tsuchiya Yuto
2021-10-28  6:52       ` Mauro Carvalho Chehab
2021-10-28 11:39       ` Mauro Carvalho Chehab
2021-11-01 13:38         ` Tsuchiya Yuto
2021-11-01 14:10           ` Mauro Carvalho Chehab
2021-11-01 19:06             ` Hans de Goede
2021-11-01 19:27               ` Andy Shevchenko
2021-11-01 19:52                 ` Hans de Goede
2021-11-01 20:03               ` Mauro Carvalho Chehab
2021-11-01 21:06                 ` Hans de Goede
2021-11-01 21:33                   ` Mauro Carvalho Chehab
2021-11-11 14:34             ` Tsuchiya Yuto
2021-11-11 16:09               ` Andy Shevchenko
2021-11-11 19:37                 ` Mauro Carvalho Chehab
2021-11-11 20:39                   ` Andy Shevchenko
2021-11-11 18:38               ` Mauro Carvalho Chehab
2021-11-17 22:24                 ` Mauro Carvalho Chehab
2021-12-01 11:30                   ` Tsuchiya Yuto
2021-12-01 11:35                 ` Tsuchiya Yuto
2021-12-01 12:00                   ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 05/17] media: atomisp: pci: fix inverted error check for ia_css_mipi_is_source_port_valid() Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
2021-11-02 11:33   ` Dan Carpenter
2021-11-08 15:00     ` Tsuchiya Yuto
2021-11-08 15:14       ` Dan Carpenter
2021-11-08 15:25         ` Tsuchiya Yuto
2021-11-08 15:33           ` Dan Carpenter
2021-11-08 16:35           ` Mauro Carvalho Chehab
2021-12-01 12:15             ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 06/17] media: atomisp: pci: use IA_CSS_ERROR() for error messages in sh_css_mipi.c Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
2021-11-02 11:35   ` Dan Carpenter
2021-11-08 15:39     ` Tsuchiya Yuto
2021-11-08 16:39       ` Mauro Carvalho Chehab
2021-10-17 16:19 ` [PATCH 07/17] media: atomisp: pci: fix ifdefs in sh_css.c Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 08/17] media: atomisp: pci: make fw ver irci_stable_candrpv_0415_20150521_0458 work - 1/5 Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 09/17] media: atomisp: pci: make fw ver irci_stable_candrpv_0415_20150521_0458 work - 2/5 Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 10/17] media: atomisp: pci: make fw ver irci_stable_candrpv_0415_20150521_0458 work - 3/5 Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 11/17] media: atomisp: pci: make fw ver irci_stable_candrpv_0415_20150521_0458 work - 4/5 Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 12/17] media: atomisp: pci: make fw ver irci_stable_candrpv_0415_20150521_0458 work - 5/5 Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 13/17] media: atomisp: pci: release_version is now irci_stable_candrpv_0415_20150521_0458 Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 14/17] media: atomisp: pci: Remove remaining instance of call to trace_printk Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
     [not found]   ` <20211026093224.6c7f7fbf@sal.lan>
2021-10-28  9:34     ` Tsuchiya Yuto [this message]
2021-10-28 11:42       ` Mauro Carvalho Chehab
2021-11-01 14:22         ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 15/17] media: atomsip: pci: add Microsoft Surface 3 ACPI vars Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
2021-10-17 16:19 ` [PATCH 16/17] [NOT-FOR-MERGE] media: atomsip: pci: add DMI match for Microsoft Surface 3 with broken DMI (OEMB) Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
2021-10-18  7:56   ` Hans de Goede
2021-10-21  9:46     ` Tsuchiya Yuto
2021-10-21 18:46       ` Hans de Goede
2021-10-27 14:47         ` Tsuchiya Yuto
2021-10-27 15:30           ` Hans de Goede
2021-10-18  7:56   ` Hans de Goede
2021-10-17 16:19 ` [PATCH 17/17] [NOT-FOR-MERGE] atomisp: Fix up the open v load race Tsuchiya Yuto
2021-10-17 16:19   ` Tsuchiya Yuto
2021-10-18  7:48 ` [PATCH 00/17] various fixes for atomisp to make it work Hans de Goede
2021-10-19 13:50   ` Tsuchiya Yuto
2021-10-19 16:36     ` Andy Shevchenko
2021-10-20 13:17       ` Tsuchiya Yuto
2021-10-18  7:56 ` Andy Shevchenko
2021-10-20  6:50   ` Mauro Carvalho Chehab
2021-10-20 12:44     ` Tsuchiya Yuto
2021-10-18 11:04 ` Andy Shevchenko
2021-10-20 12:48   ` Tsuchiya Yuto
2021-10-28  4:32 ` Tsuchiya Yuto
2021-10-28 10:58   ` Mauro Carvalho Chehab
2021-10-30  9:50     ` Tsuchiya Yuto
2021-10-30 10:49       ` Mauro Carvalho Chehab
2021-10-30 11:01         ` Andy Shevchenko
2021-10-30 18:30           ` Mauro Carvalho Chehab
2021-10-28 12:51 ` Mauro Carvalho Chehab

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=c55212feff3212c27360f2c49f5c4023a95f5b7c.camel@gmail.com \
    --to=kitakar@gmail.com \
    --cc=andrey.i.trufanov@gmail.com \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=fabioaiuto83@gmail.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=linux-staging@lists.linux.dev \
    --cc=mchehab@kernel.org \
    --cc=nable.maininbox@googlemail.com \
    --cc=patrik.gfeller@gmail.com \
    --cc=sakari.ailus@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.