我在tcp_cubic.c中包含了以下 printk 语句
static u32 bictcp_recalc_ssthresh(struct sock *sk)
{
..
if (tp->snd_cwnd < ca->last_max_cwnd && fast_convergence)
ca->last_max_cwnd = (tp->snd_cwnd * (BICTCP_BETA_SCALE + beta))
/ (2 * BICTCP_BETA_SCALE);
else
ca->last_max_cwnd = tp->snd_cwnd;
ca->loss_cwnd = tp->snd_cwnd;
printk(KERN_INFO "ssthresh is %s", snd_cwnd); // <<<--- here
return max((tp->snd_cwnd * beta) / BICTCP_BETA_SCALE, 2U);
}
但它不是在dmesg或syslog中打印值。那是为什么?
答案 0 :(得分:0)
在Linux 3.1(例如)中,DEFAULT_MESSAGE_LOGLEVEL
值为4,KERN_INFO
为6.尝试使用KERN_ALERT
(值为1)打印。
您可以通过阅读/修改此proc文件来检查或更改默认日志级别:
cat /proc/sys/kernel/printk
有关此文件的详细信息,请参阅man 5 proc
。