当前位置: 首页> 教育> 高考 > 卖货平台排名前十_疫情最新数据消息中高风险地区地图_合肥网站seo推广_互联网推广营销方案

卖货平台排名前十_疫情最新数据消息中高风险地区地图_合肥网站seo推广_互联网推广营销方案

时间:2025/7/10 8:35:34来源:https://blog.csdn.net/weixin_48175016/article/details/145992080 浏览次数:1次
卖货平台排名前十_疫情最新数据消息中高风险地区地图_合肥网站seo推广_互联网推广营销方案

问题描述:

        在使用mtk2715平台的原生态的dts中cpu@100\reg=0x100,这种格式会造成一个Xen可以启动8个cpu,但dom0的kernel只能启动一个的情况如果修改成cpu@0_0的格式,则是Xen无法启动cpu,在浏览Xen源码时有创建cpu节点的操作,并且处理节点的时候会默认跳过cpu节点的处理,Xen自行创建cpu节点信息

问题解决及其原因分析: 

        将dts中cpu节点的格式由cpu@100__100修改成cpu@1_1的格式,其他1-7个cpu节点格式同步。

        将Xen中处理cpu节点默认跳过的操作关闭 --接口:handle_node

        重新编译刷机就会出现问题描述中Xen的cpu启动失败,dom0的kernel虽然失败,但能正常读取到8cpus

        结合日志和Xen的源码追踪,Xen启动cpu的条件依赖于设备树中的reg参数,可以理解为cpu编号,找到Xen通过dts获取cpu编号的接口,并在关键数组赋值将其左移8位即可(dts原生态的cpu编号:cpu@100/reg=0x100)

 static void __init dt_smp_init_cpus(void):

   fixbug之后的日志呈现:

        

        总结: Xen启动cpu必须使用物理cpu的编号,但是dom0的cpu是虚拟cpu。例如cpu@100的编号是256,这个只能用于物理cpu,虚拟cpu的编号应该是1,根据这个结论去灵活修改Xen的源码(如果修改dom0的kernel可能无效,这边尝试从dts读出来的256右移8位,crash依然存在)

关键字:卖货平台排名前十_疫情最新数据消息中高风险地区地图_合肥网站seo推广_互联网推广营销方案

版权声明:

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

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

责任编辑: