Quoting Steven Rostedt (2021-03-02 18:01:36)
> On Mon, 1 Mar 2021 09:47:47 -0800
> Stephen Boyd <[email protected]> wrote:
>
> > WARNING: CPU: 4 PID: 3255 at drivers/misc/lkdtm/bugs.c:83
> > lkdtm_WARNING+0x28/0x30 [lkdtm] (ed5019fdf5e53be37cb1ba7899292d7e143b259e)
> > Modules linked in: lkdtm rfcomm algif_hash algif_skcipher af_alg xt_cgroup
> > uinput xt_MASQUERADE
> > CPU: 4 PID: 3255 Comm: bash Not tainted 5.11 #3
> > aa23f7a1231c229de205662d5a9e0d4c580f19a1
> > Hardware name: Google Lazor (rev3+) with KB Backlight (DT)
> > pstate: 00400009 (nzcv daif +PAN -UAO -TCO BTYPE=--)
> > pc : lkdtm_WARNING+0x28/0x30 [lkdtm]
> > (ed5019fdf5e53be37cb1ba7899292d7e143b259e)
> > lr : lkdtm_do_action+0x24/0x40 [lkdtm]
> > (ed5019fdf5e53be37cb1ba7899292d7e143b259e)
>
> Why not just change the "Modules linked in:" portion to show the build IDs
> instead of every function call? Maybe make it a config option to do so?
>
As I wrote in the commit text
│ An alternative to changing the printk format would be to update the
│ "Modules linked in:" line to include the build ID of each module linked
│ in. This can become quite long when many modules are loaded (i.e. on a
│ distro) so I've opted for the printk format instead.
Implementing it is fairly simple compared to a new printk format. In
fact I did that initially but decided against it because it felt
unreadable and provided more information than was necessary if the
stacktrace wasn't in a module.
Example:
Modules linked in: rfcomm 4de3e669b9fee915 algif_hash 915c61c32d476f01
algif_skcipher 53a4a330149bf071 af_alg b49d66496907f376 xt_cgroup
36fbbb65e7620df9 uinput a0ff6a06c1c53685 xt_MASQUERADE d130585f728315d2
snd_soc_sc7180 5c130cd310c81a12 venus_dec 2071e263fde9ca07 qcom_spmi_temp_alarm
41e28f2a9cc8b562 qcom_spmi_adc_tm5 7e0e48d0b6550c7a qcom_spmi_adc5
40b81a00bc2d0c1d qcom_vadc_common 09bb012dd1662dea snd_soc_rt5682_i2c
c92b8935ad4a1729 venus_enc efaf3335b88287bf snd_soc_qcom_common
56d1e87c267ed02e videobuf2_dma_sg e9bc3c9e2758dfc9 snd_soc_rt5682
c4c9b31bf9a43f8b snd_soc_rl6231 908446e32436898c hci_uart 107b5fe6884df077
btqca 401a2fcc17b80a39 bluetooth 3369c881496a3cf8 venus_core a11eee3aa201ad8e
ecdh_generic 883e01f98b778108 ecc 226b258cf40ad1ba v4l2_mem2mem
592f197cbad39e6b snd_soc_lpass_sc7180 42a99cb812d5e2e3 snd_soc_lpass_hdmi
95cce2160cfc58e2 snd_soc_lpass_cpu 475a4b395577affd snd_soc_lpass_platform
67517083263035ec snd_soc_max98357a 03ec1af0493d1c59
fuse 82d170244a4d4ac6 iio_trig_sysfs b879a6228e059834 cros_ec_lid_angle
a713c5f0a06a7a82 cros_ec_sensors 03f0c142ec521f67 cros_ec_sensors_core
ada3f44647980056 cros_ec_sensors_ring f99590e87e998485
industrialio_triggered_buffer c697969d67f73d77 kfifo_buf e8a3aeb3069188f0
cros_ec_sensorhub 041ed1ffcefc991b ath10k_snoc 2f60802a74ff6ca7 lzo_rle
49a6228cec0c6885 ath10k_core 9407c36a2b8f8fae lzo_compress e9b4375d4bad668a ath
20c585ba6f3998f0 zram c5cdfc1d7d8a35d9 mac80211 9eaed1c76e000c02 cfg80211
872178d2dcebb722 cdc_ether 2baa214f72289402 usbnet 2bec73d0922ade28 uvcvideo
eee0352cb1846ee4 r8152 47b76561b78e9b1b mii b306d150923fe614 videobuf2_vmalloc
55431ec52fa6af84 videobuf2_memops 4d43ad18fa7b1e4e videobuf2_v4l2
cdda06b9d95ab11d videobuf2_common 69cef0ca55a70a4a joydev 148399325b72d4a0
compared to
Modules linked in: rfcomm algif_hash algif_skcipher af_alg xt_cgroup uinput
xt_MASQUERADE snd_soc_sc7180 venus_dec qcom_spmi_temp_alarm qcom_spmi_adc_tm5
qcom_spmi_adc5 qcom_vadc_common snd_soc_rt5682_i2c venus_enc
snd_soc_qcom_common videobuf2_dma_sg snd_soc_rt5682 snd_soc_rl6231 hci_uart
btqca bluetooth venus_core ecdh_generic ecc v4l2_mem2mem snd_soc_lpass_sc7180
snd_soc_lpass_hdmi snd_soc_lpass_cpu snd_soc_lpass_platform snd_soc_max98357a
fuse iio_trig_sysfs cros_ec_lid_angle cros_ec_sensors cros_ec_sensors_core
cros_ec_sensors_ring industrialio_triggered_buffer kfifo_buf cros_ec_sensorhub
ath10k_snoc lzo_rle ath10k_core lzo_compress ath zram mac80211 cfg80211
cdc_ether usbnet uvcvideo r8152 mii videobuf2_vmalloc videobuf2_memops
videobuf2_v4l2 videobuf2_common joydev
I suppose it could be surrounded by parenthesis or brackets and that
would be a little better? I'll try this approach again and see what
folks think.