From: Jani Nikula <jani.nikula@intel.com> To: Pankaj Bharadiya <pankaj.laxminarayan.bharadiya@intel.com>, daniel@ffwll.ch, sam@ravnborg.org, sudeep.dutt@intel.com, intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org Cc: pankaj.laxminaryan.bharadiya@outlook.iglb.intel.com Subject: Re: [Intel-gfx] [PATCH 0/6]: drm: Introduce struct drm_device based WARN* and use them in i915 Date: Mon, 13 Jan 2020 14:33:36 +0200 [thread overview] Message-ID: <87d0bnmt7j.fsf@intel.com> (raw) In-Reply-To: <20200113115557.32713-1-pankaj.laxminarayan.bharadiya@intel.com> On Mon, 13 Jan 2020, Pankaj Bharadiya <pankaj.laxminarayan.bharadiya@intel.com> wrote: > Device specific dev_WARN and dev_WARN_ONCE macros available in kernel > include device information in the backtrace, so we know what device > the warnings originate from. > > Similar to this, add new struct drm_device based drm_WARN* macros. These > macros include device information in the backtrace, so we know > what device the warnings originate from. Knowing the device specific > information in the backtrace would be helpful in development all > around. > > This patch series aims to convert calls of WARN(), WARN_ON(), > WARN_ONCE() and WARN_ON_ONCE() in i916 driver to use the drm > device-specific variants automatically wherever struct device pointer > is available. > > To do this, this patch series - > - introduces new struct drm_device based WARN* macros > - automatically converts WARN* with device specific dev_WARN* > variants using coccinelle semantic patch scripts. > > The goal is to convert all the calls of WARN* with drm_WARN* in i915, > but there are still cases where device pointer is not readily > available in some functions (or I missed them somehow) using WARN* > hence some manual churning is needed. Handle such remaining cases > separately later. > > Changes since RFC at [1] > - Introduce drm_WARN* macros and use them as suggested by Sam and Jani > - Get rid of extra local variables > > [1] https://patchwork.freedesktop.org/series/71668/ > > Pankaj Bharadiya (6): > drm/print: introduce new struct drm_device based WARN* macros > drm/i915: add helper functions to get device ptr > drm/i915: Make WARN* drm specific where drm_device ptr available > drm/i915: Make WARN* drm specific where drm_priv ptr is available > drm/i915: Make WARN* drm specific where dev_priv can be extracted. > drm/i915: Make WARN* drm specific for various cases. I think the last four patches actually making the conversions are too big, and need to be split out to smaller pieces. These are bound to conflict in annoying ways. The absolute minimum I think it splitting by directory, and in particular the changes to gvt needs to be handled by gvt maintainers. BR, Jani. > > drivers/gpu/drm/i915/display/icl_dsi.c | 14 +- > drivers/gpu/drm/i915/display/intel_atomic.c | 6 +- > drivers/gpu/drm/i915/display/intel_audio.c | 19 +- > drivers/gpu/drm/i915/display/intel_bios.c | 10 +- > drivers/gpu/drm/i915/display/intel_bw.c | 3 +- > drivers/gpu/drm/i915/display/intel_cdclk.c | 81 +++--- > drivers/gpu/drm/i915/display/intel_color.c | 3 +- > .../gpu/drm/i915/display/intel_combo_phy.c | 2 +- > .../gpu/drm/i915/display/intel_connector.c | 3 +- > drivers/gpu/drm/i915/display/intel_crt.c | 10 +- > drivers/gpu/drm/i915/display/intel_ddi.c | 100 ++++---- > drivers/gpu/drm/i915/display/intel_display.c | 239 ++++++++++-------- > .../drm/i915/display/intel_display_power.c | 170 +++++++------ > .../drm/i915/display/intel_display_types.h | 14 + > drivers/gpu/drm/i915/display/intel_dp.c | 121 +++++---- > drivers/gpu/drm/i915/display/intel_dp_mst.c | 10 +- > drivers/gpu/drm/i915/display/intel_dpio_phy.c | 3 +- > drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 39 +-- > drivers/gpu/drm/i915/display/intel_dsb.c | 6 +- > .../i915/display/intel_dsi_dcs_backlight.c | 2 +- > drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 5 +- > drivers/gpu/drm/i915/display/intel_fbc.c | 23 +- > drivers/gpu/drm/i915/display/intel_fbdev.c | 13 +- > drivers/gpu/drm/i915/display/intel_gmbus.c | 3 +- > drivers/gpu/drm/i915/display/intel_hdcp.c | 21 +- > drivers/gpu/drm/i915/display/intel_hdmi.c | 71 +++--- > drivers/gpu/drm/i915/display/intel_hotplug.c | 7 +- > .../gpu/drm/i915/display/intel_lpe_audio.c | 2 +- > drivers/gpu/drm/i915/display/intel_lvds.c | 7 +- > drivers/gpu/drm/i915/display/intel_opregion.c | 7 +- > drivers/gpu/drm/i915/display/intel_overlay.c | 18 +- > drivers/gpu/drm/i915/display/intel_panel.c | 21 +- > drivers/gpu/drm/i915/display/intel_pipe_crc.c | 7 +- > drivers/gpu/drm/i915/display/intel_psr.c | 32 ++- > drivers/gpu/drm/i915/display/intel_sdvo.c | 17 +- > drivers/gpu/drm/i915/display/intel_sprite.c | 5 +- > drivers/gpu/drm/i915/display/intel_tc.c | 17 +- > drivers/gpu/drm/i915/display/intel_vdsc.c | 2 +- > drivers/gpu/drm/i915/display/vlv_dsi.c | 2 +- > .../gpu/drm/i915/gem/i915_gem_execbuffer.c | 4 +- > drivers/gpu/drm/i915/gem/i915_gem_pm.c | 4 +- > drivers/gpu/drm/i915/gem/i915_gem_shmem.c | 3 +- > drivers/gpu/drm/i915/gem/i915_gem_shrinker.c | 13 +- > drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 15 +- > drivers/gpu/drm/i915/gt/intel_engine_cs.c | 10 +- > drivers/gpu/drm/i915/gt/intel_engine_user.c | 3 +- > drivers/gpu/drm/i915/gt/intel_gt_irq.c | 15 +- > drivers/gpu/drm/i915/gt/intel_gt_pm_irq.c | 2 +- > drivers/gpu/drm/i915/gt/intel_gtt.c | 6 +- > drivers/gpu/drm/i915/gt/intel_mocs.c | 4 +- > drivers/gpu/drm/i915/gt/intel_rc6.c | 2 +- > .../gpu/drm/i915/gt/intel_ring_submission.c | 7 +- > drivers/gpu/drm/i915/gt/intel_rps.c | 21 +- > drivers/gpu/drm/i915/gt/intel_workarounds.c | 2 +- > drivers/gpu/drm/i915/gvt/aperture_gm.c | 6 +- > drivers/gpu/drm/i915/gvt/cfg_space.c | 20 +- > drivers/gpu/drm/i915/gvt/cmd_parser.c | 4 +- > drivers/gpu/drm/i915/gvt/display.c | 5 +- > drivers/gpu/drm/i915/gvt/dmabuf.c | 4 +- > drivers/gpu/drm/i915/gvt/edid.c | 13 +- > drivers/gpu/drm/i915/gvt/gtt.c | 15 +- > drivers/gpu/drm/i915/gvt/gvt.c | 4 +- > drivers/gpu/drm/i915/gvt/gvt.h | 5 + > drivers/gpu/drm/i915/gvt/handlers.c | 18 +- > drivers/gpu/drm/i915/gvt/interrupt.c | 11 +- > drivers/gpu/drm/i915/gvt/kvmgt.c | 8 +- > drivers/gpu/drm/i915/gvt/mmio.c | 29 ++- > drivers/gpu/drm/i915/gvt/mmio_context.c | 6 +- > drivers/gpu/drm/i915/gvt/scheduler.c | 5 +- > drivers/gpu/drm/i915/gvt/vgpu.c | 5 +- > drivers/gpu/drm/i915/i915_drv.c | 19 +- > drivers/gpu/drm/i915/i915_drv.h | 11 + > drivers/gpu/drm/i915/i915_gem.c | 7 +- > drivers/gpu/drm/i915/i915_irq.c | 85 ++++--- > drivers/gpu/drm/i915/i915_perf.c | 40 +-- > drivers/gpu/drm/i915/i915_pmu.c | 6 +- > drivers/gpu/drm/i915/intel_csr.c | 4 +- > drivers/gpu/drm/i915/intel_pch.c | 68 +++-- > drivers/gpu/drm/i915/intel_pm.c | 95 ++++--- > drivers/gpu/drm/i915/intel_sideband.c | 7 +- > drivers/gpu/drm/i915/intel_uncore.c | 57 +++-- > include/drm/drm_print.h | 30 +++ > 82 files changed, 1065 insertions(+), 768 deletions(-) -- Jani Nikula, Intel Open Source Graphics Center _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
WARNING: multiple messages have this Message-ID (diff)
From: Jani Nikula <jani.nikula@intel.com> To: Pankaj Bharadiya <pankaj.laxminarayan.bharadiya@intel.com>, daniel@ffwll.ch, sam@ravnborg.org, sudeep.dutt@intel.com, intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org Cc: pankaj.laxminaryan.bharadiya@outlook.iglb.intel.com Subject: Re: [Intel-gfx] [PATCH 0/6]: drm: Introduce struct drm_device based WARN* and use them in i915 Date: Mon, 13 Jan 2020 14:33:36 +0200 [thread overview] Message-ID: <87d0bnmt7j.fsf@intel.com> (raw) In-Reply-To: <20200113115557.32713-1-pankaj.laxminarayan.bharadiya@intel.com> On Mon, 13 Jan 2020, Pankaj Bharadiya <pankaj.laxminarayan.bharadiya@intel.com> wrote: > Device specific dev_WARN and dev_WARN_ONCE macros available in kernel > include device information in the backtrace, so we know what device > the warnings originate from. > > Similar to this, add new struct drm_device based drm_WARN* macros. These > macros include device information in the backtrace, so we know > what device the warnings originate from. Knowing the device specific > information in the backtrace would be helpful in development all > around. > > This patch series aims to convert calls of WARN(), WARN_ON(), > WARN_ONCE() and WARN_ON_ONCE() in i916 driver to use the drm > device-specific variants automatically wherever struct device pointer > is available. > > To do this, this patch series - > - introduces new struct drm_device based WARN* macros > - automatically converts WARN* with device specific dev_WARN* > variants using coccinelle semantic patch scripts. > > The goal is to convert all the calls of WARN* with drm_WARN* in i915, > but there are still cases where device pointer is not readily > available in some functions (or I missed them somehow) using WARN* > hence some manual churning is needed. Handle such remaining cases > separately later. > > Changes since RFC at [1] > - Introduce drm_WARN* macros and use them as suggested by Sam and Jani > - Get rid of extra local variables > > [1] https://patchwork.freedesktop.org/series/71668/ > > Pankaj Bharadiya (6): > drm/print: introduce new struct drm_device based WARN* macros > drm/i915: add helper functions to get device ptr > drm/i915: Make WARN* drm specific where drm_device ptr available > drm/i915: Make WARN* drm specific where drm_priv ptr is available > drm/i915: Make WARN* drm specific where dev_priv can be extracted. > drm/i915: Make WARN* drm specific for various cases. I think the last four patches actually making the conversions are too big, and need to be split out to smaller pieces. These are bound to conflict in annoying ways. The absolute minimum I think it splitting by directory, and in particular the changes to gvt needs to be handled by gvt maintainers. BR, Jani. > > drivers/gpu/drm/i915/display/icl_dsi.c | 14 +- > drivers/gpu/drm/i915/display/intel_atomic.c | 6 +- > drivers/gpu/drm/i915/display/intel_audio.c | 19 +- > drivers/gpu/drm/i915/display/intel_bios.c | 10 +- > drivers/gpu/drm/i915/display/intel_bw.c | 3 +- > drivers/gpu/drm/i915/display/intel_cdclk.c | 81 +++--- > drivers/gpu/drm/i915/display/intel_color.c | 3 +- > .../gpu/drm/i915/display/intel_combo_phy.c | 2 +- > .../gpu/drm/i915/display/intel_connector.c | 3 +- > drivers/gpu/drm/i915/display/intel_crt.c | 10 +- > drivers/gpu/drm/i915/display/intel_ddi.c | 100 ++++---- > drivers/gpu/drm/i915/display/intel_display.c | 239 ++++++++++-------- > .../drm/i915/display/intel_display_power.c | 170 +++++++------ > .../drm/i915/display/intel_display_types.h | 14 + > drivers/gpu/drm/i915/display/intel_dp.c | 121 +++++---- > drivers/gpu/drm/i915/display/intel_dp_mst.c | 10 +- > drivers/gpu/drm/i915/display/intel_dpio_phy.c | 3 +- > drivers/gpu/drm/i915/display/intel_dpll_mgr.c | 39 +-- > drivers/gpu/drm/i915/display/intel_dsb.c | 6 +- > .../i915/display/intel_dsi_dcs_backlight.c | 2 +- > drivers/gpu/drm/i915/display/intel_dsi_vbt.c | 5 +- > drivers/gpu/drm/i915/display/intel_fbc.c | 23 +- > drivers/gpu/drm/i915/display/intel_fbdev.c | 13 +- > drivers/gpu/drm/i915/display/intel_gmbus.c | 3 +- > drivers/gpu/drm/i915/display/intel_hdcp.c | 21 +- > drivers/gpu/drm/i915/display/intel_hdmi.c | 71 +++--- > drivers/gpu/drm/i915/display/intel_hotplug.c | 7 +- > .../gpu/drm/i915/display/intel_lpe_audio.c | 2 +- > drivers/gpu/drm/i915/display/intel_lvds.c | 7 +- > drivers/gpu/drm/i915/display/intel_opregion.c | 7 +- > drivers/gpu/drm/i915/display/intel_overlay.c | 18 +- > drivers/gpu/drm/i915/display/intel_panel.c | 21 +- > drivers/gpu/drm/i915/display/intel_pipe_crc.c | 7 +- > drivers/gpu/drm/i915/display/intel_psr.c | 32 ++- > drivers/gpu/drm/i915/display/intel_sdvo.c | 17 +- > drivers/gpu/drm/i915/display/intel_sprite.c | 5 +- > drivers/gpu/drm/i915/display/intel_tc.c | 17 +- > drivers/gpu/drm/i915/display/intel_vdsc.c | 2 +- > drivers/gpu/drm/i915/display/vlv_dsi.c | 2 +- > .../gpu/drm/i915/gem/i915_gem_execbuffer.c | 4 +- > drivers/gpu/drm/i915/gem/i915_gem_pm.c | 4 +- > drivers/gpu/drm/i915/gem/i915_gem_shmem.c | 3 +- > drivers/gpu/drm/i915/gem/i915_gem_shrinker.c | 13 +- > drivers/gpu/drm/i915/gem/i915_gem_stolen.c | 15 +- > drivers/gpu/drm/i915/gt/intel_engine_cs.c | 10 +- > drivers/gpu/drm/i915/gt/intel_engine_user.c | 3 +- > drivers/gpu/drm/i915/gt/intel_gt_irq.c | 15 +- > drivers/gpu/drm/i915/gt/intel_gt_pm_irq.c | 2 +- > drivers/gpu/drm/i915/gt/intel_gtt.c | 6 +- > drivers/gpu/drm/i915/gt/intel_mocs.c | 4 +- > drivers/gpu/drm/i915/gt/intel_rc6.c | 2 +- > .../gpu/drm/i915/gt/intel_ring_submission.c | 7 +- > drivers/gpu/drm/i915/gt/intel_rps.c | 21 +- > drivers/gpu/drm/i915/gt/intel_workarounds.c | 2 +- > drivers/gpu/drm/i915/gvt/aperture_gm.c | 6 +- > drivers/gpu/drm/i915/gvt/cfg_space.c | 20 +- > drivers/gpu/drm/i915/gvt/cmd_parser.c | 4 +- > drivers/gpu/drm/i915/gvt/display.c | 5 +- > drivers/gpu/drm/i915/gvt/dmabuf.c | 4 +- > drivers/gpu/drm/i915/gvt/edid.c | 13 +- > drivers/gpu/drm/i915/gvt/gtt.c | 15 +- > drivers/gpu/drm/i915/gvt/gvt.c | 4 +- > drivers/gpu/drm/i915/gvt/gvt.h | 5 + > drivers/gpu/drm/i915/gvt/handlers.c | 18 +- > drivers/gpu/drm/i915/gvt/interrupt.c | 11 +- > drivers/gpu/drm/i915/gvt/kvmgt.c | 8 +- > drivers/gpu/drm/i915/gvt/mmio.c | 29 ++- > drivers/gpu/drm/i915/gvt/mmio_context.c | 6 +- > drivers/gpu/drm/i915/gvt/scheduler.c | 5 +- > drivers/gpu/drm/i915/gvt/vgpu.c | 5 +- > drivers/gpu/drm/i915/i915_drv.c | 19 +- > drivers/gpu/drm/i915/i915_drv.h | 11 + > drivers/gpu/drm/i915/i915_gem.c | 7 +- > drivers/gpu/drm/i915/i915_irq.c | 85 ++++--- > drivers/gpu/drm/i915/i915_perf.c | 40 +-- > drivers/gpu/drm/i915/i915_pmu.c | 6 +- > drivers/gpu/drm/i915/intel_csr.c | 4 +- > drivers/gpu/drm/i915/intel_pch.c | 68 +++-- > drivers/gpu/drm/i915/intel_pm.c | 95 ++++--- > drivers/gpu/drm/i915/intel_sideband.c | 7 +- > drivers/gpu/drm/i915/intel_uncore.c | 57 +++-- > include/drm/drm_print.h | 30 +++ > 82 files changed, 1065 insertions(+), 768 deletions(-) -- Jani Nikula, Intel Open Source Graphics Center _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2020-01-13 12:33 UTC|newest] Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-01-13 11:55 [Intel-gfx] [PATCH 0/6]: drm: Introduce struct drm_device based WARN* and use them in i915 Pankaj Bharadiya 2020-01-13 11:55 ` Pankaj Bharadiya 2020-01-13 11:55 ` [Intel-gfx] [PATCH 1/6] drm/print: introduce new struct drm_device based WARN* macros Pankaj Bharadiya 2020-01-13 11:55 ` Pankaj Bharadiya 2020-01-13 12:30 ` Jani Nikula 2020-01-13 12:30 ` Jani Nikula 2020-01-13 18:54 ` Sam Ravnborg 2020-01-13 18:54 ` Sam Ravnborg 2020-01-13 11:55 ` [Intel-gfx] [PATCH 2/6] drm/i915: add helper functions to get device ptr Pankaj Bharadiya 2020-01-13 11:55 ` Pankaj Bharadiya 2020-01-13 12:14 ` Jani Nikula 2020-01-13 12:14 ` Jani Nikula 2020-01-13 18:31 ` Bharadiya,Pankaj 2020-01-13 18:31 ` Bharadiya,Pankaj 2020-01-14 7:51 ` Jani Nikula 2020-01-14 7:51 ` Jani Nikula 2020-01-13 11:55 ` [Intel-gfx] [PATCH 3/6] drm/i915: Make WARN* drm specific where drm_device ptr available Pankaj Bharadiya 2020-01-13 11:55 ` Pankaj Bharadiya 2020-01-13 11:55 ` [Intel-gfx] [PATCH 4/6] drm/i915: Make WARN* drm specific where drm_priv ptr is available Pankaj Bharadiya 2020-01-13 11:55 ` Pankaj Bharadiya 2020-01-13 11:55 ` [Intel-gfx] [PATCH 5/6] drm/i915: Make WARN* drm specific where dev_priv can be extracted Pankaj Bharadiya 2020-01-13 11:55 ` Pankaj Bharadiya 2020-01-13 11:55 ` [Intel-gfx] [PATCH 6/6] drm/i915: Make WARN* drm specific for various cases Pankaj Bharadiya 2020-01-13 11:55 ` Pankaj Bharadiya 2020-01-13 12:33 ` Jani Nikula [this message] 2020-01-13 12:33 ` [Intel-gfx] [PATCH 0/6]: drm: Introduce struct drm_device based WARN* and use them in i915 Jani Nikula 2020-01-13 18:34 ` Bharadiya,Pankaj 2020-01-13 18:34 ` Bharadiya,Pankaj 2020-01-13 15:08 ` [Intel-gfx] ✗ Fi.CI.BUILD: failure for : " Patchwork
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=87d0bnmt7j.fsf@intel.com \ --to=jani.nikula@intel.com \ --cc=daniel@ffwll.ch \ --cc=dri-devel@lists.freedesktop.org \ --cc=intel-gfx@lists.freedesktop.org \ --cc=pankaj.laxminarayan.bharadiya@intel.com \ --cc=pankaj.laxminaryan.bharadiya@outlook.iglb.intel.com \ --cc=sam@ravnborg.org \ --cc=sudeep.dutt@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: linkBe 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.