A flow path for ethernet kernel driver
From: Rami Rosen <hidden>
Date: 2015-05-18 20:01:05
Hi, Airton, This is simply a matter of setting dmesg to work with the level which you need in your setup. You should set "dmesg -n" to work with the pr_info() level. Pleas look in man dmesg, for the "-n, --console-level level" part. If you are in a haste and looking for immediate solution, you can also try pr_err() instead, as most distros do print such messages with dmesg without need for any special setup. Regards, Rami Rosen http://ramirose.wix.com/ramirosen On 18 May 2015 at 22:23, Airton Ishimori [off-list ref] wrote:
Hello, everybody,
I'm trying to develop a new Ethernet driver (Realtek) for Linux kernel
4.0.2.
[ 3.612938] r8169 Gigabit Ethernet driver 2.3LK-NAPI loaded
As part of my studies, I'm trying to trace the path for functions defined in
drivers/net/ethernet/realtek/r8169.c, net/core/dev.c and
net/core/dev_ioctl.c. I'm using "printks" for this purpose. For instance,
something like:
printk("TEST: __dev_set_promiscuity\n");
However, I'm not getting what's going on. I can set/unset the promiscuity
behaviour via ifconfig command.
[ 131.330091] device eth0 entered promiscuous mode
[ 170.619086] device eth0 left promiscuous mode
By looking at the dmesg output above, I thought the function that deals with
promiscuity was __dev_set_promiscuity() defined in net/core/dev.c, because
this function calls a function to print the message above:
pr_info("device %s %s promiscuous mode\n", dev->name, dev->flags &
IFF_PROMISC ? "entered" : "left");
But, when I tried to look for my printk message with dmesg after compiling
and running the kernel, I couldn't find it.
$ cd linux-4.0.2/
$ make net && make modules
$ sudo make modules_install && sudo make install
Can somebody help me to understand what's happening?
Thanks in advance,
--
Airton Ishimori
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies at kernelnewbies.org
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies