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

东莞网站建设17做个软件需要多少钱

东莞网站建设17,做个软件需要多少钱,文化建设方案,广州网站建设电话大全背景 最近移植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.w-s-a.com/news/438783/

相关文章:

  • 医院网站建设的特点怎么查看网站百度快照
  • 网站 如何备案一般网站开发公司
  • 做网站的公司 贵阳郑州新像素ui设计培训收费
  • 温州网站建设公司电话给个免费的网址
  • 个人做电子商务网站备案软考高级
  • 淘宝客需要自己做网站吗四川遂宁做网站的公司
  • 编写网站策划书缘魁上海网站建设
  • 梧州外贸网站推广设计wordpress 上传 七牛
  • 增加网站备案千灯做网站
  • 深圳做网站的公php做简易网站
  • 徐州哪家做网站好商业空间设计效果图
  • 重庆建网站cqiezscom大学毕业做网站插画师好吗
  • 在门户网站做产品seo怎么样做网站管理员
  • 动画做视频在线观看网站字体安装+wordpress
  • vs2015网站开发做珠宝建个网站推广怎么样
  • 大桥外语官方网站星做宝贝佛山微信网站开发
  • 河南建设网站公司哪家好怎样做一家网站
  • 安阳市哪里做网站建设网站流量怎么赚钱
  • 网站开发与优化课程总结软件班级网站建设
  • py网站开发wordpress 公司网站 模板 下载
  • 长春城乡建设部网站首页英文网站推广服务
  • wordpress实训上海整站seo
  • 福建自己建设网站义乌市企推网络科技有限公司
  • 宁波优化网站哪家好织梦网站地图怎么做
  • 怎么在自己的网站加关键词烟台企业网站建设
  • 中山网站建设界面设计职业技能等级证书
  • 做网站首页多少钱免费版企业邮箱注册
  • ppp模式在网站建设的南昌专业做网站公司哪家好
  • 泰安网站建设制作电话号码百度sem竞价托管公司
  • 苏网站建设网页设计和网页美工