mbox series

[v2,0/8] staging: vc04: Drop custom logging based on printk

Message ID 20231024114428.443528-1-umang.jain@ideasonboard.com (mailing list archive)
Headers show
Series staging: vc04: Drop custom logging based on printk | expand

Message

Umang Jain Oct. 24, 2023, 11:44 a.m. UTC
Hello,

This series address the discussion on [1], i.e. removing the printk
based logging mechanism and migrate it use dynamic debug.

Patch 1/8 and 2/8 are prep-up patch to pass struct device pointers
so that we can use dev_dbg() in those functions. 

Patch 3/8 targets migration of vchiq_log_error() to use dynamic debug
Patch 4/8 targets migration of vchiq_log_warning() to use dynamic debug
Patch 5/8 targets rename of vchiq_log_info() to vchiq_log_debug() and
migration to use dynamic debug.
Patch 6/8 targets mirgration of vchiq_log_trace to use dynamic debug.

Patch 7/8 drops a unused macro.
Patch 8/8 is log levels remnants cleanup along with debugfs entries.

Changes in v2:
- Address feedback from v1, added 1/8, 2/8 as new patches
  Hence, Remove pr_*() based logging in few cases
- Cleanup debugfs log entries (8/8) and update TODO list
- Fixed bugs where NULL deference was happening due to unitialised
  pointers.

Testing:
Booted RPi 3-b with:
`dyndbg="file *vchiq_arm* +p" dyndbg="file *vchiq_core* +p"`
on cmdline.txt (kernel args)

And run drivers/staging/vc04_services/interface/TESTING and verify
dynamic debug logs with `dmesg -WH`.

[1] https://lore.kernel.org/linux-media/20230913185528.770634-1-umang.jain@ideasonboard.com/

Umang Jain (8):
  staging: vc04_services: Pass struct device to vchiq_log_dump_mem()
  staging: vc04_services: Pass struct device to vchiq_init_slots()
  staging: vc04: Convert vchiq_log_error() to use dynamic debug
  staging: vc04: Convert vchiq_log_warning() to use dynamic debug
  staging: vc04: Convert(and rename) vchiq_log_info() to use dynamic
    debug
  staging: vc04: Convert vchiq_log_trace() to use dynamic debug
  staging: vc04_services: Drop VCHIQ_LOG_PREFIX macro
  staging: vc04_services: Drop log level mechanisms

 drivers/staging/vc04_services/interface/TODO  |   5 -
 .../interface/vchiq_arm/vchiq_arm.c           | 149 ++++---
 .../interface/vchiq_arm/vchiq_arm.h           |   3 -
 .../interface/vchiq_arm/vchiq_connected.c     |   2 +-
 .../interface/vchiq_arm/vchiq_core.c          | 403 ++++++++----------
 .../interface/vchiq_arm/vchiq_core.h          |  61 +--
 .../interface/vchiq_arm/vchiq_debugfs.c       | 103 -----
 .../interface/vchiq_arm/vchiq_dev.c           |  59 +--
 8 files changed, 327 insertions(+), 458 deletions(-)

Comments

gregkh@linuxfoundation.org Oct. 25, 2023, 11:01 a.m. UTC | #1
On Tue, Oct 24, 2023 at 07:44:20AM -0400, Umang Jain wrote:
> Hello,
> 
> This series address the discussion on [1], i.e. removing the printk
> based logging mechanism and migrate it use dynamic debug.
> 
> Patch 1/8 and 2/8 are prep-up patch to pass struct device pointers
> so that we can use dev_dbg() in those functions. 
> 
> Patch 3/8 targets migration of vchiq_log_error() to use dynamic debug
> Patch 4/8 targets migration of vchiq_log_warning() to use dynamic debug
> Patch 5/8 targets rename of vchiq_log_info() to vchiq_log_debug() and
> migration to use dynamic debug.
> Patch 6/8 targets mirgration of vchiq_log_trace to use dynamic debug.
> 
> Patch 7/8 drops a unused macro.
> Patch 8/8 is log levels remnants cleanup along with debugfs entries.
> 
> Changes in v2:
> - Address feedback from v1, added 1/8, 2/8 as new patches
>   Hence, Remove pr_*() based logging in few cases
> - Cleanup debugfs log entries (8/8) and update TODO list
> - Fixed bugs where NULL deference was happening due to unitialised
>   pointers.

Much better, thanks!

But I don't think you're done here, why not just use "real" dev_dbg()
and the like calls instead of your wrapper #defines?  What is that
helping with?  You now have full debug information so the additional
field should not be needed anymore, right?

I'll take this for now, as any future changes can come on top of this.

thanks,

greg k-h