0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Linus亲自修改英特尔的“屎山”代码

OSC开源社区 来源:OSC开源社区 2023-05-10 10:53 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

去年年底英特尔将 LAM(Linear Address Masking :线性地址掩码) 功能提交到 Linux 6.2 的合并窗口,但该功能受到 Linus 的批评并拒绝合并。在经历了一段时间的代码改进后,Linus 终于同意将 LAM 代码合并到 Linux 6.4 窗口。

但 Linus 似乎仍对英特尔工程师提交的代码不太满意,在合并了 LAM 代码后,先是写了一个使 access_ok () 独立于 LAM 的新补丁,而后又亲手写了多个补丁对 LAM 代码进行了优化。

f1377054-ee70-11ed-90ce-dac502259ad0.png

在最新提交的 LAM 优化补丁中,Linus 解释了自己的动机:

我对此版本中的 LAM(“线性地址掩码”)的 “access_ok ()” 的完成方式感到很不爽,而且它实际上也有一些小 Bug ,所以我动手清理了代码。

改动主要集中在以下几方面:

使用 __user 指针的符号位而不是屏蔽地址,并根据 TASK_SIZE 范围检查它。 get/put_user () 端做了这部分,但是 ‘access_ok ()’ 做了天真的 “掩码和范围检查”,它不仅生成多余的代码,还意味着 __access_ok 本身的任务做得不好, copy_from_user_nmi () 没有得到正确的检查。

将所有 64 位代码仅移动到 64 位版本的头文件中,这样就不会污染共享的 x86 代码,也不会误导用户 LAM 可以在 32 位环境中工作。

修复地址掩码中的 Bug(这不重要,只是完全删除了错误的代码)。

几个简单的清理,并添加了关于 access_ok () 规则的注释。

Linus 重新编写了约一百行代码来清理 LAM ,这意味着如果测试没问题, 就可以在 Linux 6.4 中顺利启用 LAM 功能。不过这次 Linus 竟然亲自动手为英特尔工程师修改 “有瑕疵的代码”,这种情况相当少见。

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 英特尔
    +关注

    关注

    61

    文章

    10316

    浏览量

    181051
  • Linux
    +关注

    关注

    88

    文章

    11810

    浏览量

    219513
  • 代码
    +关注

    关注

    30

    文章

    4976

    浏览量

    74358

原文标题:Linus亲自修改英特尔的“屎山”代码

文章出处:【微信号:OSC开源社区,微信公众号:OSC开源社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    超越台积电?英特尔首个18A工艺芯片迈向大规模量产

    电子发烧友网报道(文/李弯弯)10月9日,英特尔公布了代号Panther Lake的新一代客户端处理器英特尔®酷睿™Ultra(第三代)的架构细节,这款产品预计于今年晚些时候出货。Panther
    的头像 发表于 10-11 08:14 9372次阅读
    超越台积电?<b class='flag-5'>英特尔</b>首个18A工艺芯片迈向大规模量产

    锐宝智联入选英特尔首批尊享级合作伙伴

    近日,英特尔全球战略级生态计划---英特尔合作伙伴联盟完成里程碑式战略升级,原最高等级 “钛金级” 正式迭代为 “尊享级”,标志着英特尔生态合作体系迈入更高质量、更深度协同的新阶段。锐宝智联凭借十
    的头像 发表于 12-02 18:16 1580次阅读
    锐宝智联入选<b class='flag-5'>英特尔</b>首批尊享级合作伙伴

    吉方工控亮相2025英特尔技术创新与产业生态大会

    2025年11月19日至20日,由英特尔公司主办的年度重磅盛会——2025英特尔技术创新与产业生态大会(Intel Connection)暨英特尔行业解决方案大会(Edge Industry Summit)在重庆悦来国际会议中心
    的头像 发表于 11-24 16:57 739次阅读

    英特尔举办行业解决方案大会,共同打造机器人“芯”动脉

    11月19日,在2025英特尔行业解决方案大会上,英特尔展示了基于英特尔® 酷睿™ Ultra平台的最新边缘AI产品及解决方案,并预览了针对边缘侧的英特尔® 酷睿™ Ultra处理器(
    的头像 发表于 11-19 21:51 7073次阅读
    <b class='flag-5'>英特尔</b>举办行业解决方案大会,共同打造机器人“芯”动脉

    英特尔修改芯片法案协议 提前获得约57亿美元现金支援

    据外媒报道;   在美东时间周五英特尔公司传出好消息。英特尔宣布已修改与美国商务部达成的芯片法案资金协议,新协议取消此前设定的项目里程碑要求,并提前获得约57亿美元现金。但是该笔资金有一些限制要求
    的头像 发表于 08-31 20:19 942次阅读

    美国商务部推进收购英特尔10%股份 估值约达105亿美元

    据外媒报道;美国商务部正在积极推进收购英特尔10%股份。特朗普政府此前已经明确表示政府考虑将英特尔获批的联邦补贴转换为英特尔股权;联邦补贴就是此前的《芯片法案》拨款;估计为英特尔10%
    的头像 发表于 08-20 12:25 867次阅读

    美国政府将入股英特尔

    据彭博社报道称,特朗普政府正在与芯片制造商英特尔进行谈判,希望美国政府入股这家陷入困境的公司,随后该公司股价周四上涨 7% 。 英特尔是唯一一家有能力在美国本土生产最快芯片的美国公司,尽管包括台湾
    的头像 发表于 08-17 09:52 1233次阅读

    使用英特尔® NPU 插件C++运行应用程序时出现错误:“std::Runtime_error at memory location”怎么解决?

    使用OpenVINO™工具套件版本 2024.4.0 构建C++应用程序 使用英特尔® NPU 插件运行了 C++ 应用程序 遇到的错误: Microsoft C++ exception: std::runtime_error at memory location
    发表于 06-25 08:01

    英特尔锐炫Pro B系列,边缘AI的“智能引擎”

    2025年6月19日,上海—— 在MWC 25上海期间,英特尔展示了一幅由英特尔锐炫™ Pro B系列GPU所驱动的“实时响应、安全高效、成本可控”的边缘AI图景。 英特尔客户端计算事业部边缘计算
    的头像 发表于 06-20 17:32 1028次阅读
    <b class='flag-5'>英特尔</b>锐炫Pro B系列,边缘AI的“智能引擎”

    分析师:英特尔转型之路,机遇与挑战并存

    内容编译自投资分析师Oliver Rodzianko观点文章 作为一名长期关注英特尔发展的投资者,我对陈立武(Lip-Bu Tan)出任英特尔 CEO充满期待。陈立武的管理风格兼具魄力与战略眼光
    的头像 发表于 06-10 10:59 680次阅读
    分析师:<b class='flag-5'>英特尔</b>转型之路,机遇与挑战并存

    英特尔先进封装,新突破

    在半导体行业的激烈竞争中,先进封装技术已成为各大厂商角逐的关键领域。英特尔作为行业的重要参与者,近日在电子元件技术大会(ECTC)上披露了多项芯片封装技术突破,再次吸引了业界的目光。这些创新不仅展现
    的头像 发表于 06-04 17:29 1388次阅读

    直击Computex2025:英特尔重磅发布新一代GPU,图形和AI性能跃升3.4倍

    5月19日,在Computex 2025上,英特尔发布了最新全新图形处理器(GPU)和AI加速器产品系列。包括全新英特尔锐炫™ Pro B系列GPU——英特尔锐炫Pro B60和英特尔
    的头像 发表于 05-20 12:27 5623次阅读
    直击Computex2025:<b class='flag-5'>英特尔</b>重磅发布新一代GPU,图形和AI性能跃升3.4倍

    英特尔发布全新GPU,AI和工作站迎来新选择

    英特尔推出面向准专业用户和AI开发者的英特尔锐炫Pro GPU系列,发布英特尔® Gaudi 3 AI加速器机架级和PCIe部署方案   2025 年 5 月 19 日,北京 ——今日,在
    发表于 05-20 11:03 1912次阅读

    英特尔代工:明确重点广合作,服务客户铸信任

    英特尔代工大会召开,宣布制程技术路线图、先进封装里程碑和生态系统合作。 今天,2025英特尔代工大会(Intel Foundry Direct Connect)开幕,英特尔分享了多代核心制程和先进
    的头像 发表于 04-30 10:23 677次阅读
    <b class='flag-5'>英特尔</b>代工:明确重点广合作,服务客户铸信任

    英特尔宣布裁员20% 或2万人失业

    据外媒彭博社的报道,在当地时间4月24日,英特尔宣布裁员计划,比例超20%。按照截至2024年底英特尔在全球拥有108900名员工来计算的话,预计此次裁员将波及大约2.2万名员工。旨在精简管理,并重
    的头像 发表于 04-25 17:34 738次阅读