我在 Linux 内核 3.10.53 中使用 Realtek Wi-Fi 驱动程序 rtl8192du。驱动程序中使用的许多 API 已被弃用,并引发编译时错误。我替换了 API,现在内核启动时驱动程序正在注册。但接口 wlan0 已关闭。当我打开接口时,它显示 kthread_run 返回了 ENOMEM 。代码片段如下
u32 rtw_start_drv_threads(_adapter *padapter)
{
----------
----------
padapter->cmdThread = kthread_run(rtw_cmd_thread, padapter, "RTW_CMD_THREAD");
if(padapter->cmdThread < 0)
_status = _FAIL;
else
_rtw_down_sema(&padapter->cmdpriv.terminate_cmdthread_sema);
}
有什么方法可以避免 kthread_run 返回 ENOMEM 错误,以便 ifconfig wlan0 up 成功?