[Intel-gfx] [PATCH] drm/i915: fix header test with GCOV

Masahiro Yamada masahiroy at kernel.org
Sat Feb 22 04:53:07 UTC 2020


On Sat, Feb 22, 2020 at 1:43 PM Masahiro Yamada <masahiroy at kernel.org> wrote:
>
> Hi Jani,
>
> On Fri, Feb 21, 2020 at 7:54 PM Jani Nikula <jani.nikula at intel.com> wrote:
> >
> > $(CC) with $(CFLAGS_GCOV) assumes the output filename with .gcno suffix
> > appended is writable. This is not the case when the output filename is
> > /dev/null:
> >
> >   HDRTEST drivers/gpu/drm/i915/display/intel_frontbuffer.h
> > /dev/null:1:0: error: cannot open /dev/null.gcno
> >   HDRTEST drivers/gpu/drm/i915/display/intel_ddi.h
> > /dev/null:1:0: error: cannot open /dev/null.gcno
> > make[5]: *** [../drivers/gpu/drm/i915/Makefile:307:
> > drivers/gpu/drm/i915/display/intel_ddi.hdrtest] Error 1
> > make[5]: *** Waiting for unfinished jobs....
> > make[5]: *** [../drivers/gpu/drm/i915/Makefile:307:
> > drivers/gpu/drm/i915/display/intel_frontbuffer.hdrtest] Error 1
> >
> > Filter out $(CFLAGS_GVOC) from the header test $(c_flags) as they don't
> > make sense here anyway.
>
>
>
> Is GCOV the only case that produces a separate file?
>
> Could you also test CONFIG_DEBUG_INFO_SPLIT, please ?
>
>
> The GCC manual says this:
>
> -gsplit-dwarf
>
>    Separate as much DWARF debugging information as possible into a
> separate output
>    file with the extension .dwo. This option allows the build system
> to avoid linking
>    files with debug information. To be useful, this option requires a debugger
>    capable of reading .dwo files.
>


I just tested it.

This is not a problem for header test
because cmd_hdrtest uses '-S' instead of '-c'.

If '-c' were used, we would see a similar error.


So, gsplit-dwarf is OK.




>
>
> If this does not work, filtering flags
> does not seem to be a maintainable way.
>
>
>
>
> >
> > References: http://lore.kernel.org/r/d8112767-4089-4c58-d7d3-2ce03139858a@infradead.org
> > Reported-by: Randy Dunlap <rdunlap at infradead.org>
> > Fixes: c6d4a099a240 ("drm/i915: reimplement header test feature")
> > Cc: Masahiro Yamada <masahiroy at kernel.org>
> > Signed-off-by: Jani Nikula <jani.nikula at intel.com>
> > ---
> >  drivers/gpu/drm/i915/Makefile | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/i915/Makefile b/drivers/gpu/drm/i915/Makefile
> > index b314d44ded5e..bc28c31c4f78 100644
> > --- a/drivers/gpu/drm/i915/Makefile
> > +++ b/drivers/gpu/drm/i915/Makefile
> > @@ -301,7 +301,7 @@ extra-$(CONFIG_DRM_I915_WERROR) += \
> >                 $(shell cd $(srctree)/$(src) && find * -name '*.h')))
> >
> >  quiet_cmd_hdrtest = HDRTEST $(patsubst %.hdrtest,%.h,$@)
> > -      cmd_hdrtest = $(CC) $(c_flags) -S -o /dev/null -x c /dev/null -include $<; touch $@
> > +      cmd_hdrtest = $(CC) $(filter-out $(CFLAGS_GCOV), $(c_flags)) -S -o /dev/null -x c /dev/null -include $<; touch $@
> >
> >  $(obj)/%.hdrtest: $(src)/%.h FORCE
> >         $(call if_changed_dep,hdrtest)
> > --
> > 2.20.1
> >
>
>
> --
> Best Regards
> Masahiro Yamada



-- 
Best Regards
Masahiro Yamada


More information about the Intel-gfx mailing list