当前位置: 首页> 游戏> 手游 > 手机微信公众号怎么创建_by12777 coon域名查询_必应bing国内版_太原seo排名收费

手机微信公众号怎么创建_by12777 coon域名查询_必应bing国内版_太原seo排名收费

时间:2025/7/9 12:20:27来源:https://blog.csdn.net/qq_28347599/article/details/144459705 浏览次数:0次
手机微信公众号怎么创建_by12777 coon域名查询_必应bing国内版_太原seo排名收费

最近有个项目需要将Linux虚拟成UVC摄像头,开发过程中遇到一个奇怪的事情,通过V4l2框架接口申请内存时,相同的板子,只是内存一个4G一个8G。4G的内存可以申请成功,8G就不行。提示“内存不足”

内存更大反而内存不足?嗯?玄学?

转念一想,是不是UVC所使用的DMA无法使用4G以外的内存地址导致的?

咨询RK官方答复果然:

可能是超过4G使用了swiotlb buf,这个buf大小只有64M,最在连续块只有256K。

swiotlb据我的理解,应该就是在低于4G的内存空间当中预留一部分空间。当设备分配到高于4G的寻址空间的内存时,将内容拷贝到预留的空间内,供DMA访问。

如下修改后正常。

diff --git a/kernel-6.1/include/linux/swiotlb.h b/kernel-6.1/include/linux/swiotlb.h
index 35bc4e281..9f5799d15 100644
--- a/kernel-6.1/include/linux/swiotlb.h
+++ b/kernel-6.1/include/linux/swiotlb.h
@@ -22,7 +22,7 @@ struct scatterlist;* must be a power of 2.  What is the appropriate value ?* The complexity of {map,unmap}_single is linearly dependent on this value.*/
-#define IO_TLB_SEGSIZE    128
+#define IO_TLB_SEGSIZE    1024

关键字:手机微信公众号怎么创建_by12777 coon域名查询_必应bing国内版_太原seo排名收费

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: