tracing/treewide: Remove second parameter of __assign_str()
authorSteven Rostedt (Google) <rostedt@goodmis.org>
Thu, 16 May 2024 17:34:54 +0000 (13:34 -0400)
committerSteven Rostedt (Google) <rostedt@goodmis.org>
Thu, 23 May 2024 00:14:47 +0000 (20:14 -0400)
commit2c92ca849fcc6ee7d0c358e9959abc9f58661aea
tree0db4e762ad0b20f05d41bcfa53df57a46fa46ec3
parentde7e71ef8bed222dd144d8878091ecb6d5dfd208
tracing/treewide: Remove second parameter of __assign_str()

With the rework of how the __string() handles dynamic strings where it
saves off the source string in field in the helper structure[1], the
assignment of that value to the trace event field is stored in the helper
value and does not need to be passed in again.

This means that with:

  __string(field, mystring)

Which use to be assigned with __assign_str(field, mystring), no longer
needs the second parameter and it is unused. With this, __assign_str()
will now only get a single parameter.

There's over 700 users of __assign_str() and because coccinelle does not
handle the TRACE_EVENT() macro I ended up using the following sed script:

  git grep -l __assign_str | while read a ; do
      sed -e 's/\(__assign_str([^,]*[^ ,]\) *,[^;]*/\1)/' $a > /tmp/test-file;
      mv /tmp/test-file $a;
  done

I then searched for __assign_str() that did not end with ';' as those
were multi line assignments that the sed script above would fail to catch.

Note, the same updates will need to be done for:

  __assign_str_len()
  __assign_rel_str()
  __assign_rel_str_len()

I tested this with both an allmodconfig and an allyesconfig (build only for both).

[1] https://lore.kernel.org/linux-trace-kernel/20240222211442.634192653@goodmis.org/

Link: https://lore.kernel.org/linux-trace-kernel/20240516133454.681ba6a0@rorschach.local.home
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Julia Lawall <Julia.Lawall@inria.fr>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Acked-by: Jani Nikula <jani.nikula@intel.com>
Acked-by: Christian König <christian.koenig@amd.com> for the amdgpu parts.
Acked-by: Thomas Hellström <thomas.hellstrom@linux.intel.com> #for
Acked-by: Rafael J. Wysocki <rafael@kernel.org> # for thermal
Acked-by: Takashi Iwai <tiwai@suse.de>
Acked-by: Darrick J. Wong <djwong@kernel.org> # xfs
Tested-by: Guenter Roeck <linux@roeck-us.net>
147 files changed:
arch/arm64/kernel/trace-events-emulation.h
arch/powerpc/include/asm/trace.h
arch/x86/kvm/trace.h
drivers/base/regmap/trace.h
drivers/base/trace.h
drivers/block/rnbd/rnbd-srv-trace.h
drivers/bus/mhi/host/trace.h
drivers/cxl/core/trace.h
drivers/dma-buf/sync_trace.h
drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h
drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_trace.h
drivers/gpu/drm/i915/display/intel_display_trace.h
drivers/gpu/drm/lima/lima_trace.h
drivers/gpu/drm/msm/disp/dpu1/dpu_trace.h
drivers/gpu/drm/scheduler/gpu_scheduler_trace.h
drivers/gpu/drm/virtio/virtgpu_trace.h
drivers/infiniband/core/cma_trace.h
drivers/infiniband/hw/hfi1/hfi.h
drivers/infiniband/hw/hfi1/trace_dbg.h
drivers/infiniband/hw/hfi1/trace_rx.h
drivers/infiniband/hw/hfi1/trace_tid.h
drivers/infiniband/hw/hfi1/trace_tx.h
drivers/infiniband/sw/rdmavt/trace.h
drivers/infiniband/sw/rdmavt/trace_rvt.h
drivers/interconnect/trace.h
drivers/iommu/intel/trace.h
drivers/media/platform/nvidia/tegra-vde/trace.h
drivers/misc/mei/mei-trace.h
drivers/net/dsa/mv88e6xxx/trace.h
drivers/net/ethernet/freescale/dpaa/dpaa_eth_trace.h
drivers/net/ethernet/freescale/dpaa2/dpaa2-eth-trace.h
drivers/net/ethernet/fungible/funeth/funeth_trace.h
drivers/net/ethernet/hisilicon/hns3/hns3_trace.h
drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_trace.h
drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_trace.h
drivers/net/ethernet/intel/i40e/i40e_trace.h
drivers/net/ethernet/intel/iavf/iavf_trace.h
drivers/net/ethernet/intel/ice/ice_trace.h
drivers/net/ethernet/marvell/octeontx2/af/rvu_trace.h
drivers/net/ethernet/mellanox/mlx5/core/diag/cmd_tracepoint.h
drivers/net/ethernet/mellanox/mlx5/core/diag/en_rep_tracepoint.h
drivers/net/ethernet/mellanox/mlx5/core/diag/en_tc_tracepoint.h
drivers/net/ethernet/mellanox/mlx5/core/diag/fw_tracer_tracepoint.h
drivers/net/ethernet/mellanox/mlx5/core/esw/diag/qos_tracepoint.h
drivers/net/ethernet/mellanox/mlx5/core/sf/dev/diag/dev_tracepoint.h
drivers/net/ethernet/mellanox/mlx5/core/sf/diag/sf_tracepoint.h
drivers/net/ethernet/mellanox/mlx5/core/sf/diag/vhca_tracepoint.h
drivers/net/fjes/fjes_trace.h
drivers/net/hyperv/netvsc_trace.h
drivers/net/wireless/ath/ath10k/trace.h
drivers/net/wireless/ath/ath11k/trace.h
drivers/net/wireless/ath/ath12k/trace.h
drivers/net/wireless/ath/ath6kl/trace.h
drivers/net/wireless/ath/trace.h
drivers/net/wireless/broadcom/brcm80211/brcmfmac/tracepoint.h
drivers/net/wireless/broadcom/brcm80211/brcmsmac/brcms_trace_brcmsmac.h
drivers/net/wireless/broadcom/brcm80211/brcmsmac/brcms_trace_brcmsmac_msg.h
drivers/net/wireless/broadcom/brcm80211/brcmsmac/brcms_trace_brcmsmac_tx.h
drivers/net/wireless/intel/iwlwifi/iwl-devtrace-msg.h
drivers/net/wireless/intel/iwlwifi/iwl-devtrace.h
drivers/soc/qcom/pmic_pdcharger_ulog.h
drivers/soc/qcom/trace-aoss.h
drivers/soc/qcom/trace-rpmh.h
drivers/thermal/thermal_trace.h
drivers/usb/cdns3/cdns3-trace.h
drivers/usb/cdns3/cdnsp-trace.h
drivers/usb/chipidea/trace.h
drivers/usb/dwc3/trace.h
drivers/usb/gadget/udc/cdns2/cdns2-trace.h
drivers/usb/gadget/udc/trace.h
drivers/usb/mtu3/mtu3_trace.h
drivers/usb/musb/musb_trace.h
fs/bcachefs/trace.h
fs/nfs/nfs4trace.h
fs/nfs/nfstrace.h
fs/nfsd/trace.h
fs/ocfs2/ocfs2_trace.h
fs/smb/client/trace.h
fs/xfs/scrub/trace.h
fs/xfs/xfs_trace.h
include/ras/ras_event.h
include/trace/events/asoc.h
include/trace/events/avc.h
include/trace/events/bridge.h
include/trace/events/btrfs.h
include/trace/events/cgroup.h
include/trace/events/clk.h
include/trace/events/cma.h
include/trace/events/devfreq.h
include/trace/events/devlink.h
include/trace/events/dma_fence.h
include/trace/events/erofs.h
include/trace/events/f2fs.h
include/trace/events/habanalabs.h
include/trace/events/huge_memory.h
include/trace/events/hwmon.h
include/trace/events/initcall.h
include/trace/events/intel_ish.h
include/trace/events/io_uring.h
include/trace/events/iocost.h
include/trace/events/iommu.h
include/trace/events/irq.h
include/trace/events/iscsi.h
include/trace/events/kmem.h
include/trace/events/lock.h
include/trace/events/mmap_lock.h
include/trace/events/mmc.h
include/trace/events/module.h
include/trace/events/napi.h
include/trace/events/neigh.h
include/trace/events/net.h
include/trace/events/netlink.h
include/trace/events/oom.h
include/trace/events/osnoise.h
include/trace/events/power.h
include/trace/events/pwc.h
include/trace/events/qdisc.h
include/trace/events/qla.h
include/trace/events/qrtr.h
include/trace/events/regulator.h
include/trace/events/rpcgss.h
include/trace/events/rpcrdma.h
include/trace/events/rpm.h
include/trace/events/sched.h
include/trace/events/sof.h
include/trace/events/sof_intel.h
include/trace/events/sunrpc.h
include/trace/events/swiotlb.h
include/trace/events/target.h
include/trace/events/tegra_apb_dma.h
include/trace/events/ufs.h
include/trace/events/workqueue.h
include/trace/events/xdp.h
include/trace/stages/stage6_event_callback.h
kernel/trace/bpf_trace.h
net/batman-adv/trace.h
net/dsa/trace.h
net/ieee802154/trace.h
net/mac80211/trace.h
net/openvswitch/openvswitch_trace.h
net/smc/smc_tracepoint.h
net/tipc/trace.h
net/wireless/trace.h
samples/trace_events/trace-events-sample.h
sound/core/pcm_trace.h
sound/hda/trace.h
sound/soc/intel/avs/trace.h