当前位置: 首页 > news >正文

湖北智能网站建设制作济南网页设计招聘

湖北智能网站建设制作,济南网页设计招聘,wordpress地址和找点地址,网站seo搜索背景 最近移植TI电量计芯片bq40z50的驱动#xff0c;移植完毕后#xff0c;能正常读取电池信息了#xff0c;但是无意中发现驱动卸载会导致Linux卡死#xff0c;死前终端闪过大量打印#xff0c;将putty的缓冲区都耗尽了#xff0c;必须启用syslog转发并用visual syslog…背景 最近移植TI电量计芯片bq40z50的驱动移植完毕后能正常读取电池信息了但是无意中发现驱动卸载会导致Linux卡死死前终端闪过大量打印将putty的缓冲区都耗尽了必须启用syslog转发并用visual syslog server接收才能全部看到 虽然实际应用中一般不会卸载此类驱动但考虑到后果严重还是想解决一下。 问题根因 其实这是一个double freeBUG。 驱动在加载时调用devm_power_supply_register()注册了一个power_supply对象在卸载时调用power_supply_unregister() 释放了之前注册的power_supply对象。 看上去一切正常然而devm前缀意味着Linux会在驱动卸载后再次调用一次power_supply_unregister() 释放devm_power_supply_register()之前注册的对象——即刚才已经释放了的power_supply对象——从而产生了double free操作导致Linux卡死。 解决方法 将fg_psy_register()函数里的devm_power_supply_register()替换成power_supply_register()即去掉devm前缀。 直接删除fg_psy_unregister函数及对其的调用更好吧 是的这样更好因为devres会在驱动加载失败时或卸载时自动逆序释放devm_xxx申请的资源。 不过考虑到有些设备相关操作可能会在第m个资源和第n个资源之间执行如果用devm接口则该操作就提前到所有资源释放前执行可能会引入问题还是保守点吧。
http://www.hkea.cn/news/14301363/

相关文章:

  • 网站建设中最重要的是什么室内设计找哪个公司好
  • 济南网站建设培训厦门做网站优化多少钱
  • 网站建设与管理教学视频西安旅游攻略自由行
  • 为某公司或企业做的门户网站网站 尺寸
  • 做网站开发电脑配置沈阳网站建设公众号
  • 建设小游戏网站空间类型选择网站内外链接怎么做
  • 建筑公司网站排名大丰有做网站的
  • 余江网站建设如何建微信公众号
  • 厦门站长优化工具企业建站网站认证
  • 长沙生活网武威网站seo
  • 茂名公司网站开发公司襄樊seo
  • 哪个行业必须做网站久久建筑网免费下载
  • 学校网站建设的目的wordpress怎么做多级分类
  • 网站别人帮做的要注意什么手续关键词搜索热度查询
  • 分销网站开发合同资源优化排名网站
  • 北京高档网站建设网站建设怎么找客源?
  • 大连做网站哪家公司好小程序模板指令
  • 商城网站建设实训报告模板邢台龙天网络科技有限公司
  • 淘宝内部卷怎么做网站桂林景区网站策划
  • 简单手机网站如何制作福州设计公司
  • 建设银行网站怎么注销网银网站灰色代码
  • 怎么检查网站死链太原做网站的公司
  • 儿童摄影网站源码企业网站建设开发服务
  • 网站关键词分割深圳之窗手机版
  • 老榕树网站建设教学开通网站需要什么手续
  • 中国wix网站制作公司襄汾县住房和建设局网站
  • 网站怎么样建设中国做水产的有什么网站
  • 怎么用源码搭建网站用别人的公司名字做网站
  • 网站频繁被攻击怎么办手机网站大全免费下载
  • 十年经验网站开发企业营销型制作网站公司