Re: [PATCH] regmap: introduce regmap_name to fix syscon regmap trace events

From: Steven Rostedt
Date: Thu Mar 19 2015 - 15:52:37 EST



/me decides to continue the "reply backwards" method.

On Mon, 09 Mar 2015 10:48:22 +0100
Philipp Zabel <p.zabel@xxxxxxxxxxxxxx> wrote:

> Am Samstag, den 07.03.2015, 10:57 +0000 schrieb Mark Brown:
> > On Fri, Mar 06, 2015 at 03:16:55PM +0100, Philipp Zabel wrote:
> >
> > > #include <linux/sort.h>
> > > -#include <trace/events/regmap.h>
> > >
> > > #include "internal.h"
> > >
> > > +#include <trace/events/regmap.h>
> > > +
> >
> > The change is basically OK but the above is a bit too funky for my
> > taste - it feels like it's asking for annoying compile breakage if
> > anyone changes anything. I'd be more inclined to move the header
> > somewhere where the events stuff can see it than do this.
>
> Good point. As I see it I have three possiblities now:
>
> a) Just #include "../../../drivers/base/regmap/internal.h" in
> include/trace/events/regmap.h
>
> b) Move drivers/base/regmap/internal.h to
> include/linux/regmap-internal.h and
> #include <linux/regmap-internal.h> in include/trace/events/regmap.h
>
> c) Move include/trace/events/regmap.h to drivers/base/regmap/trace.h
> and just #include "internal.h" in drivers/base/regmap/trace.h
>
> Which, if any, of these options would you prefer? Here is an
> unscientific survey:
>
> a) $ git grep "#include \"\.\." include/
> include/linux/libfdt.h:#include "../../scripts/dtc/libfdt/fdt.h"
> include/linux/libfdt.h:#include "../../scripts/dtc/libfdt/libfdt.h"
> include/xen/interface/io/vscsiif.h:#include "../grant_table.h"
>
> b) $ find include/ -name "*internal.h"
> include/linux/timekeeper_internal.h
>
> c) $ find drivers/ -name trace.h
> drivers/net/wireless/ath/ath10k/trace.h
> drivers/net/wireless/ath/trace.h
> drivers/net/wireless/ath/wil6210/trace.h
> drivers/net/wireless/ath/ath5k/trace.h
> drivers/net/wireless/ath/ath6kl/trace.h
> drivers/usb/dwc3/trace.h
> drivers/misc/cxl/trace.h
>
> a) and b) aren't very common, and c) is mostly used by driver-level, not
> subsystem-level trace events.

I'm not sure what you mean be driver-level vs subsystem-level. How is
this a subsystem level as regmap happens to be in the drivers code.

Also, if you want a more thorough list, try this:

$ find drivers/ -name "*.h" ! -type d | xargs grep -l "TRACE_SYSTEM"
drivers/misc/cxl/trace.h
drivers/usb/host/xhci-trace.h
drivers/usb/dwc3/trace.h
drivers/android/binder_trace.h
drivers/gpu/drm/drm_trace.h
drivers/gpu/drm/i915/i915_trace.h
drivers/gpu/drm/radeon/radeon_trace.h
drivers/staging/android/trace/sync.h
drivers/mtd/devices/docg3.h
drivers/net/wireless/brcm80211/brcmsmac/brcms_trace_events.h
drivers/net/wireless/brcm80211/brcmfmac/tracepoint.h
drivers/net/wireless/iwlwifi/iwl-devtrace.h
drivers/net/wireless/ath/trace.h
drivers/net/wireless/ath/ath6kl/trace.h
drivers/net/wireless/ath/ath5k/trace.h
drivers/net/wireless/ath/wil6210/trace.h
drivers/net/wireless/ath/ath10k/trace.h

And looking outside of drivers and trace:

$ find . -path ./include/trace -prune -o -name drivers -prune -o -name '*.h' -print | xargs grep -l TRACE_SYSTEM
./sound/core/pcm_trace.h
./sound/pci/hda/hda_intel_trace.h
./sound/pci/hda/hda_trace.h
./kernel/trace/trace_benchmark.h
./kernel/trace/trace_events_filter_test.h
./arch/arm64/kernel/trace-events-emulation.h
./arch/arm64/kvm/trace.h
./arch/x86/kernel/vsyscall_trace.h
./arch/x86/include/asm/trace/exceptions.h
./arch/x86/include/asm/trace/irq_vectors.h
./arch/x86/kvm/mmutrace.h
./arch/x86/kvm/trace.h
./arch/s390/kvm/trace.h
./arch/s390/kvm/trace-s390.h
./arch/powerpc/platforms/cell/spufs/sputrace.h
./arch/powerpc/include/asm/trace.h
./arch/powerpc/kvm/trace.h
./arch/powerpc/kvm/trace_hv.h
./arch/powerpc/kvm/trace_pr.h
./arch/powerpc/kvm/trace_booke.h
./arch/mips/kvm/trace.h
./arch/arm/kvm/trace.h
./include/ras/ras_event.h
./net/mac80211/trace.h
./net/wireless/trace.h
./samples/trace_events/trace-events-sample.h
./fs/ocfs2/ocfs2_trace.h
./fs/nfs/nfstrace.h
./fs/nfs/nfs4trace.h
./fs/nfsd/trace.h
./fs/gfs2/trace_gfs2.h
./fs/xfs/xfs_trace.h


-- Steve
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/