lkml.org 
[lkml]   [2022]   [Jun]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: possible trace_printk() bug in v5.19-rc1
On Thu, 16 Jun 2022 15:36:43 +0000
Chuck Lever III <chuck.lever@oracle.com> wrote:

> > Did you remove any modules before displaying the trace?
>
> I haven't explicitly removed nfsd.ko, and lsmod says it's still there.
> And, trace_printk was working as expected on v5.18.

Are you sure?

I just checkout v5.19-rc2 and added the below patch. Then I did the
following:

# rmmod bridge

# trace-cmd start -p function -l :mod:bridge

# insmod bridge

# trace-cmd show
# tracer: function
#
# entries-in-buffer/entries-written: 23/23 #P:8
#
# _-----=> irqs-off/BH-disabled
# / _----=> need-resched
# | / _---=> hardirq/softirq
# || / _--=> preempt-depth
# ||| / _-=> migrate-disable
# |||| / delay
# TASK-PID CPU# ||||| TIMESTAMP FUNCTION
# | | | ||||| | |
modprobe-2155 [005] ...1. 4732.051406: br_init <-do_one_initcall
modprobe-2155 [005] ..... 4732.051408: br_init: here in bridge
modprobe-2155 [005] ...1. 4732.051408: br_fdb_init <-br_init
modprobe-2155 [005] ...1. 4732.051418: br_device_event <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051418: br_device_event: this is an event
modprobe-2155 [005] ...1. 4732.051418: br_device_event <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051418: br_device_event: this is an event
modprobe-2155 [005] ...1. 4732.051418: br_device_event <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051419: br_device_event: this is an event
modprobe-2155 [005] ...1. 4732.051419: br_device_event <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051419: br_device_event: this is an event
modprobe-2155 [005] ...1. 4732.051419: br_device_event <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051419: br_device_event: this is an event
modprobe-2155 [005] ...1. 4732.051419: br_device_event <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051420: br_device_event: this is an event
modprobe-2155 [005] ...1. 4732.051420: br_device_event <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051420: br_device_event: this is an event
modprobe-2155 [005] ...1. 4732.051420: br_device_event <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051420: br_device_event: this is an event
modprobe-2155 [005] ...1. 4732.051420: br_device_event <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051420: br_device_event: this is an event
modprobe-2155 [005] ...1. 4732.051421: br_netlink_init <-br_init
modprobe-2155 [005] ...1. 4732.051421: br_mdb_init <-br_netlink_init

# rmmod bridge

# trace-cmd show
# tracer: function
#
# entries-in-buffer/entries-written: 56/56 #P:8
#
# _-----=> irqs-off/BH-disabled
# / _----=> need-resched
# | / _---=> hardirq/softirq
# || / _--=> preempt-depth
# ||| / _-=> migrate-disable
# |||| / delay
# TASK-PID CPU# ||||| TIMESTAMP FUNCTION
# | | | ||||| | |
modprobe-2155 [005] ...1. 4732.051406: 0xffffffffc0cc7000 <-do_one_initcall
modprobe-2155 [005] ..... 4732.051408: 0xffffffffc0cc702b: here in bridge
modprobe-2155 [005] ...1. 4732.051408: 0xffffffffc0cc7101 <-0xffffffffc0cc7043
modprobe-2155 [005] ...1. 4732.051418: 0xffffffffc0d81340 <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051418: 0xffffffffc0d81345: this is an event
modprobe-2155 [005] ...1. 4732.051418: 0xffffffffc0d81340 <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051418: 0xffffffffc0d81345: this is an event
modprobe-2155 [005] ...1. 4732.051418: 0xffffffffc0d81340 <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051419: 0xffffffffc0d81345: this is an event
modprobe-2155 [005] ...1. 4732.051419: 0xffffffffc0d81340 <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051419: 0xffffffffc0d81345: this is an event
modprobe-2155 [005] ...1. 4732.051419: 0xffffffffc0d81340 <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051419: 0xffffffffc0d81345: this is an event
modprobe-2155 [005] ...1. 4732.051419: 0xffffffffc0d81340 <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051420: 0xffffffffc0d81345: this is an event
modprobe-2155 [005] ...1. 4732.051420: 0xffffffffc0d81340 <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051420: 0xffffffffc0d81345: this is an event
modprobe-2155 [005] ...1. 4732.051420: 0xffffffffc0d81340 <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051420: 0xffffffffc0d81345: this is an event
modprobe-2155 [005] ...1. 4732.051420: 0xffffffffc0d81340 <-call_netdevice_register_net_notifiers
modprobe-2155 [005] ..... 4732.051420: 0xffffffffc0d81345: this is an event
modprobe-2155 [005] ...1. 4732.051421: 0xffffffffc0cc7132 <-0xffffffffc0cc70a3
modprobe-2155 [005] ...1. 4732.051421: 0xffffffffc0da1500 <-0xffffffffc0cc713e
kworker/u16:2-2023 [004] ...1. 4737.946576: 0xffffffffc0d81340 <-raw_notifier_call_chain
kworker/u16:2-2023 [004] ..... 4737.946578: 0xffffffffc0d81345: this is an event
kworker/u16:2-2023 [004] ...1. 4737.946634: 0xffffffffc0d8e1a0 <-if_nlmsg_size
kworker/u16:2-2023 [004] ...1. 4737.946735: 0xffffffffc0d81340 <-raw_notifier_call_chain
kworker/u16:2-2023 [004] ..... 4737.946735: 0xffffffffc0d81345: this is an event
kworker/u16:2-2023 [004] ...1. 4737.946833: 0xffffffffc0d81340 <-raw_notifier_call_chain
kworker/u16:2-2023 [004] ..... 4737.946833: 0xffffffffc0d81345: this is an event
kworker/u16:2-2023 [004] ...1. 4737.946834: 0xffffffffc0d8e1a0 <-if_nlmsg_size
kworker/u16:2-2023 [004] ...1. 4737.957648: 0xffffffffc0d81190 <-cleanup_net
rmmod-2206 [000] ...1. 5739.459376: 0xffffffffc0d8f880 <-0xffffffffc0da3d1d
rmmod-2206 [000] ...1. 5739.459378: 0xffffffffc0da1570 <-0xffffffffc0d8f88a
rmmod-2206 [000] ...1. 5739.471367: 0xffffffffc0d81340 <-call_netdevice_unregister_notifiers
rmmod-2206 [000] ..... 5739.471368: 0xffffffffc0d81345: this is an event
rmmod-2206 [000] ...1. 5739.471369: 0xffffffffc0d81340 <-call_netdevice_unregister_notifiers
rmmod-2206 [000] ..... 5739.471369: 0xffffffffc0d81345: this is an event
rmmod-2206 [000] ...1. 5739.471369: 0xffffffffc0d81340 <-call_netdevice_unregister_notifiers
rmmod-2206 [000] ..... 5739.471369: 0xffffffffc0d81345: this is an event
rmmod-2206 [000] ...1. 5739.471370: 0xffffffffc0d81340 <-call_netdevice_unregister_notifiers
rmmod-2206 [000] ..... 5739.471370: 0xffffffffc0d81345: this is an event
rmmod-2206 [000] ...1. 5739.471370: 0xffffffffc0d81340 <-call_netdevice_unregister_notifiers
rmmod-2206 [000] ..... 5739.471370: 0xffffffffc0d81345: this is an event
rmmod-2206 [000] ...1. 5739.471370: 0xffffffffc0d81340 <-call_netdevice_unregister_notifiers
rmmod-2206 [000] ..... 5739.471370: 0xffffffffc0d81345: this is an event
rmmod-2206 [000] ...1. 5739.471371: 0xffffffffc0d81340 <-call_netdevice_unregister_notifiers
rmmod-2206 [000] ..... 5739.471371: 0xffffffffc0d81345: this is an event
rmmod-2206 [000] ...1. 5739.471371: 0xffffffffc0d81340 <-call_netdevice_unregister_notifiers
rmmod-2206 [000] ..... 5739.471371: 0xffffffffc0d81345: this is an event
rmmod-2206 [000] ...1. 5739.471371: 0xffffffffc0d81340 <-call_netdevice_unregister_notifiers
rmmod-2206 [000] ..... 5739.471372: 0xffffffffc0d81345: this is an event
rmmod-2206 [000] ...1. 5739.471372: 0xffffffffc0d81340 <-call_netdevice_unregister_notifiers
rmmod-2206 [000] ..... 5739.471372: 0xffffffffc0d81345: this is an event
rmmod-2206 [000] ...1. 5739.477366: 0xffffffffc0d81190 <-unregister_pernet_operations
rmmod-2206 [000] ...1. 5739.477375: 0xffffffffc0d84910 <-__do_sys_delete_module.constprop.0

Before removing the module, the names were all present. Then after I
removed the module, they did not exist.

Other than that, I cannot reproduce the issue.

-- Steve


diff --git a/net/bridge/br.c b/net/bridge/br.c
index 96e91d69a9a8..4067760d3763 100644
--- a/net/bridge/br.c
+++ b/net/bridge/br.c
@@ -36,6 +36,7 @@ static int br_device_event(struct notifier_block *unused, unsigned long event, v
bool changed_addr;
int err;

+ trace_printk("this is an event\n");
if (netif_is_bridge_master(dev)) {
err = br_vlan_bridge_event(dev, event, ptr);
if (err)
@@ -385,6 +386,7 @@ static int __init br_init(void)
return err;
}

+ trace_printk("here in bridge\n");
err = br_fdb_init();
if (err)
goto err_out;
\
 
 \ /
  Last update: 2022-06-17 21:52    [W:0.385 / U:0.052 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site