如何將 driver value傳到user space - Linux

Table of Contents

最近想把 802.11 driver 檢查CRC封包 error counter的結果
送到user space


Linux/drivers/net/wireless/ath/ath9k/recv.c

int wifi_frame_recv_counter = 0;
int wifi_frame_error_counter = 0;

static bool ath9k_rx_accept()
{

if(ieee80211_is_data(fc))
{
wifi_frame_recv_counter++;
printk("frame_recv_counter: %d\n",wifi_frame_recv_counter);

if(rx_stats->rs_status & ATH9k_RXERR_CRC)
{
wifi_frame_error_counter++;
}

}

}

想要把

wifi_frame_error_counter
wifi_frame_recv_counter

傳到 user space 不曉得要怎麼傳上去

我用copy_to_user不行= =

謝謝!!

--

All Comments

John avatarJohn2015-09-25
copy_to_user太麻煩了,去/sys/kernel/debug/ieee8021
1/找看看有沒有可以cat的檔案
Ina avatarIna2015-09-29
不然就自己照netlink的方式去實作你的需求
Skylar DavisLinda avatarSkylar DavisLinda2015-09-29
不知你 copy_to_user() 是如何使用的?
Brianna avatarBrianna2015-10-02
也就是說, user space process 如何跟你的 driver 要資料?