發現內核模塊中的printk打印沒有及時輸出。如下方語句:
printk(KERN_ERR "%s called!",__func__);
如果在終端中echo一個數據到kmsg中,立即顯示出來了。爲什麼呢? 因爲上方的printk打印輸出缺少換行符‘\n’,導致不能刷新出來。
把printk語句增加上\n換行符後,打印及時輸出。
總結: 內核打印函數,需要在打印語句的結尾增加換行符,以便輸出。
發現內核模塊中的printk打印沒有及時輸出。如下方語句:
printk(KERN_ERR "%s called!",__func__);
如果在終端中echo一個數據到kmsg中,立即顯示出來了。爲什麼呢? 因爲上方的printk打印輸出缺少換行符‘\n’,導致不能刷新出來。
把printk語句增加上\n換行符後,打印及時輸出。
總結: 內核打印函數,需要在打印語句的結尾增加換行符,以便輸出。