为什么ioctl会返回“糟糕的地址”
发布时间:2020-12-13 19:04:33 所属栏目:Linux 来源:网络整理
导读:我使用下面的代码从嵌入式电路板的SPI端口输出数据(olimex imx233-micro 它不是特定于电路板的问题).当我运行代码ioctl返回“坏地址”.我正在修改http://twilight.ponies.cz/spi-test.c上的代码,工作正常.谁能告诉我我做错了什么? root@ubuntu:/home# gcc t
我使用下面的代码从嵌入式电路板的SPI端口输出数据(olimex imx233-micro – 它不是特定于电路板的问题).当我运行代码ioctl返回“坏地址”.我正在修改http://twilight.ponies.cz/spi-test.c上的代码,工作正常.谁能告诉我我做错了什么?
码:
谢谢! 最佳答案
错误消息“错误地址”来自错误代码EFAULT,当您将地址传递给内核时会发生这种情况,该内核不是进程虚拟地址空间中的有效虚拟地址. tr结构的地址显然是有效的,因此问题必须与其中一个成员有关.
根据definition of 我不熟悉这个IOCTL,所以我最好的猜测是你需要用二进制来对数据进行低音.一种方法是这样做:
如果您需要将其作为ASCII发送,那么您应该使用诸如 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |