Linux 5.7

2020-06-01 08:42:05

(特色)克隆:允许在cgroup中繁殖进程。推荐的LWN文章。提交,提交。

任务调度器(特色)引入热压力跟踪和优化,以改进热过载系统上的任务放置。当CPU过热时,热调节器可能会调整可能的最大频率;任务调度器现在知道这一点,因此它可以做出更好的决定。推荐LWN文章,首页;提交,提交。

各种NUMA调度更新:协调负载平衡器和NUMA放置逻辑,使之不会相互冲突。预期结果是更好的局部性、更高的利用率和更少的迁移提交、提交。

修改非对称CPU容量唤醒以提高非对称拓扑(Dynamiq Big.LITTLE系统)上的容量利用率提交、提交。

在重新研究如何处理可轮询异步IO的过程中,不再需要线程卸载来处理该问题(_W)。相反,我们依赖于使用轮询来驱动此提交、提交。

与上述相结合,允许消耗性缓冲区选择,这样,轮询+recv(例如)就不必再是拆分操作。推荐的LWN文章、提交、提交。

kbuild设备树:允许在不配置内核的情况下运行DT_BINDING_CHECK,并允许在单个命令COMMIT、COMMIT、COMMIT中运行DT_BINDING_CHECK和dtbs_CHECK。

kunit debugfs支持在/sys/kernel/debug/kunit/中显示kunit测试套件结果。这对于模块加载的测试尤其有用,它允许将测试结果显示与其他dmesg事件COMMIT、COMMIT

添加可设置为OFF|PERMISSIVE|ON|rpm的fw_devlink内核命令行选项(和删除_devlink),这些选项按设备链接COMMIT、COMMIT的执行顺序递增。

RCU:通过积极寻求静态提交和提升RCU读取器提交来应对回调过载。

Percpu-rwsem重写,它使用自己的waitqueue和atom_t而不是嵌入的rwsem。这解决了一些缺点,但主要动机是实时内核提交、提交。

介绍lockdep上的原始锁嵌套检测,记录RAW_LOCK与普通锁的差异COMMIT、COMMIT。

BTRFS为位置调整添加了更多取消点,改善了余额取消、提交、提交的长响应。

新的BTRFS_IOC_SNAP_DESTORY_V2 ioctl用于删除子卷,允许按ID删除并提交更多将来的扩展。

范围回溯引用解析的加速,在示例测试场景中,发送的运行时间从一小时降至几分钟提交、提交。

每个inode文件扩展区树,用于在内存中跟踪连续扩展区范围,以确保I_SIZE调整是准确的COMMIT、COMMIT

使固定的扩展区跟踪每个事务的提交、提交。

用于子卷写入器和NOCOW排除的因子锁定方案,抽象为绘制锁、双重读取器-写入器排除(允许读取器或写入器)提交、提交。

XFS加强了元数据验证和在线fsck检查提交、提交。

引入一个通用btree重建库,以便我们可以重构xfs_prair,并在未来的提交、提交周期中引入在线修复。

CJoseph支持异步创建和取消链接。只要客户端已被授予适当的上限(v15版本中的新功能),就可以在本地创建和取消链接,而无需等待MDS的回复。这对tar和rsync等元数据繁重的工作负载有很大帮助。使用新的nowsync装载选项COMMIT、COMMIT选择加入。

不要拿着实际上并不需要的帽子。这是我们的长期行为,但它会导致一些活动/备用应用程序出现问题(同步I/O、备用停止等)提交、提交。

FSCRYPT添加一个ioctl FS_IOC_GET_ENCRYPTION_NONCE,它从加密的文件或目录中检索现时值。这对于自动密文验证测试COMMIT、COMMIT。

exFAT(特色)添加新的exFAT文件系统提交,提交

EXT4取代ext4的BMAP和IOPOLL实现,以使用IOMAP提交、提交。

NFS在pNFS/flefiles驱动程序中启用部分文件布局段提交,提交。

mremap(2):添加MREMAP_DONTDHCAP标志。重新映射匿名专用映射时,如果设置了MREMAP_DONTMINAP,则不会删除源映射。预计这将在Chrome OS上使用,在Chrome OS中,使用userfaultfd可以将匿名映射写入磁盘,而不必停止该过程或担心VMA权限更改提交、提交。

内存组:递归内存保护。它扩展memy.low/min,以便旋钮递归地应用于整个子树。用户仍然可以为子组分配显式保护,但如果他们不这样做,则由父cgroup设置的保护将被动态分配,以便子组自由竞争-就像在子树内没有启用内存控制一样-但享受来自相邻树的保护。这应该是缺省行为,但它是一个装载选项,以避免倒退COMMIT、COMMIT、COMMIT。

(特色)userfaultfd:初始写保护支持(目前尚不支持shmem和hugetlbfs)。这等同于(但比)使用mProtect和SIGSEGV信号处理程序更快。有关详细信息,请参阅文档。推荐的LWN文章。提交,提交。

DMA-buf:添加动态DMA-buf处理。这允许导出器提供映射,而无需固定后备存储提交、提交。

页面错误增强:它允许页面错误处理程序不仅在SIGKILL上,而且在其余的用户空间信号(特别是用户模式错误)上更具交互性,并且它允许页面错误重试超过一次COMMIT、COMMIT。

添加对空闲页面报告的支持,这是一种API,它提供向虚拟机管理程序报告空闲来宾页面的异步方式,以便主机上的其他进程和/或来宾可以删除和重用与这些页面相关联的内存。使用此功能,可以避免不必要的磁盘I/O,并在主机提交、提交

vmstat:添加用于大型页面回退的STAT。现有的THP_FAULT_FLARBACK指示何时THP尝试分配大页面但失败,或者大页面是否不能被计费到mem_cgroup层次结构。此版本还将此功能扩展到shmem,并添加了一个新的thp_file_faulback来补充thp_file_alloc,当尝试分配巨型页面但失败时,或者如果无法将其计入mem cgroup层次结构提交,则会递增该thp_file_alloc。

添加hugetlb_cma引导选项,该选项允许保留CMA区域,该区域稍后可用于1 GB大页面分配提交、提交。

hugetblfs:在保留时命中hugetlb_cgroup限制,而不是在错误时提交。

添加Uacce(统一/针对用户空间访问的加速器框架)。冯·诺依曼体系结构不擅长一般的数据处理,因此出现了越来越多的异构处理器,如加解密加速器、TPU或EDGE处理器。Uacce的目的是确保加速器和进程可以共享相同的地址空间,因此加速器ISA可以直接寻址主CPU的任何数据结构。这与CPU和IO设备之间的数据共享不同,后者共享的是数据内容,而不是地址。Uacce旨在与Jean Philippe Brucker的SVA补丁程序集一起使用,该补丁程序集支持IO端页面错误和PASID支持提交、提交。

ubsan:拆分边界检查器,以便可以单独使用COMMIT、COMMIT。

设备映射器dm write ecache:实现逐步清理,添加一个新选项max_age,该选项以毫秒为单位指定块的最长提交期限。

DM Writecache:添加DM Writecache";CLEAR&34;策略功能,允许在用户空间监视完成时刷新缓存,然后停止使用缓存提交。

PERF(特色)改进了cgroup分析。它允许添加一个新的cgroup id到样本中,因此可以分析多个cgroup。将一个新的cgroup排序关键字添加到Perf报告中,该报告显示cgroup成员提交、提交

支持指标组约束:启用NMI时,某些指标组无法计数。此版本在事件列表中增加了MetricConstraint&34;,这为Perf工具提供了提示,如果启用了NMI Watchdog,则Perf工具可以将指标组更改为非组(独立指标。

报表/顶部:支持通过选项--group-ort-idx分组中的给定事件进行排序,TUI界面中的热键允许用户选择事件进行排序提交、提交。

缝合LBR调用堆栈(内核):现有的Last Branch Record(LBR)允许记录调用堆栈,但调用堆栈的深度受到LBR寄存器数量的限制。然而,仍然可以从先前样本中检索被重写的LBR,并将其缝合在一起提交、提交。

脚本:import--deltatime选项,它计算与前一个事件提交相关的时间差。

BPF扩展SOCKMAP以存储侦听和已建立的套接字。这允许将SOCKMAP BPF映射与重用BPF程序一起使用COMMIT、COMMIT。

BPF程序可能想知道SKB是否为GSO。以与GSO_segs COMMIT、COMMIT、COMMIT相同的方式显示GSO_SIZE字段。

添加BPF_SK_ASSIGN eBPF帮助器,它允许在向堆栈接收数据包时将先前找到的套接字分配给SKB,以使堆栈根据本地路由配置将数据包引导到该套接字。其目的是从附加在TC入口处的eBPF程序中更直接地支持TProxy用例,以简化和流线化规模环境中的Linux堆栈配置,使用cilium COMMIT、COMMIT。

向基于bpf cgroup的connect()、sendmsg()、recvmsg()和绑定相关挂钩添加各种直接的帮助器改进和添加,这将允许实现更细粒度的策略并改进当前负载均衡器对提交、提交

添加对在sockmap和sockhash Commit、Commit中存储UDP套接字的支持。

介绍bpftool prog profile命令,该命令使用硬件计数器来分析BPF程序COMMIT、COMMIT。

libbpf:添加对动态程序附加目标的支持:以前,当您希望将跟踪程序附加到BPF程序时,节名需要与跟踪点/函数语义匹配。添加新的API允许指定跟踪点/函数动态提交、提交、提交。

添加bpf_link抽象,类似于libbpf';已有的bpf_link抽象。这使现有的类似bpf_link的bpf程序链接(附件)类型(原始跟踪点和跟踪链接)更加统一,这些类型是基于FD的对象,在关闭最后一个文件引用时自动分离。这些类型的BPF程序链接切换为使用BPF_LINK框架。基于FD的BPF_LINK方法通过确保在用户进程突然退出或在其提交、提交、提交之后忘记清理时不会附加废弃的BPF程序,从而提供了很好的安全保证。

为cgroup BPF程序COMMIT、COMMIT添加基于BPF_LINK的BPF程序附加机制。

介绍BPF_MODIFY_RET跟踪程序。允许将MODIFY_RETURN程序用于安全挂钩和列入错误注入COMMIT、COMMIT白名单的函数。

读取跟踪文件COMMIT、COMMIT时,不再禁用跟踪环形缓冲区。

新的set_ftrace_notrace_pid文件。函数跟踪程序COMMIT、COMMIT、COMMIT将不会跟踪此文件中的PID

新的set_event_notrace_pid文件。如果由PID COMMIT、COMMIT匹配的任务触发,此文件中的PID将导致不跟踪事件。

添加vDPA设备支持。vDPA设备是使用符合virtio规范并具有供应商特定控制路径的数据路径的设备。vDPA设备可以在物理上位于硬件上,也可以通过软件提交、提交。

UML:支持外部时间旅行:在Unix套接字上使用特殊应用程序-让多台机器一起参与时间旅行模拟提交、提交。

virtio-net:引入规范中定义的特性:RSS接收控制、扩展的RSC信息,以及报告传入数据包的提交、提交、提交。

tools/kvm_stat:添加命令行开关';-c';以登录CSV格式提交,并添加命令行开关';-s';以设置更新间隔提交。

(特色)新的LSM:使用eBPF(KRSI)的MAC和审核策略。它允许将BPF程序附加到LSM挂钩,从而促进统一的动态审核和MAC策略。推荐的LWN文章。提交,提交。

改进绑定(addr,0)行为。Linux过去常常在所有端口耗尽时无法将套接字绑定到临时端口,即使所有套接字都启用了SO_REUSEADDR。在这种情况下,仍然可以连接到不同的远程主机。此发行版添加了net.ipv4.ip_autobind_reuse,当设置为1并且所有临时端口都已耗尽COMMIT、COMMIT时,它允许将启用了SO_REUSEADDR的套接字绑定到相同的(addr、port)。

多路径TCP第3部分(但不是最后):多个子流和路径管理。推荐的LWN项目提交,提交

IPv6:添加对RPL源路由处理和插入的处理(实现为lwTunes)提交、提交。

UDP:裸UDP L3封装模块。Bareudp隧道模块提供通用L3封装隧道支持,用于将不同的L3协议(如MPLS、IP、NSH等)隧道传送到UDP隧道提交、提交。

蓝牙L2CAP:为增强的基于信用的模式加上模块选项添加代码,以启用提交、提交、提交。

Devlink允许功能强大的设备驱动程序向devlink注册其支持的数据包陷阱策略。然后,用户空间可以调整这些策略器的参数(当前为速率和突发大小),并从设备读取策略器丢弃的数据包数量(如果支持提交、提交。

devlink:添加对DEVLINK_CMD_REGION_NEW操作的支持,用于使用户空间能够按需请求区域快照。这对于为没有触发器的驱动程序添加区域以创建快照COMMIT、COMMIT非常有用。

重构将由devlink核心显式设置的自动恢复健康报告器标志。此外,添加另一个标志来控制自动转储属性,该属性也将由devlink核心COMMIT、COMMIT、COMMIT显式设置。

MACSec添加新的NetLink属性,以允许用户在MACSec链路创建提交后立即(可选)指定所需的卸载模式。

数据包调度器使用NF流表卸载基础架构添加具有已建立ct状态的连接的软件卸载,因此一旦卸载了此类流,它们将不会再次通过连接轨道,而是act_ct会将SKB上的连接轨道信息元数据恢复到卸载事件(已建立的提交、提交、提交)时的状态

允许用户指定添加的TC操作的硬件统计信息类型:立即、延迟或禁用提交、提交。

允许TC分类从指定的链开始。TC多链配置可能导致在跳转到某个链之后卸载的TC链在硬件中丢失,在这种情况下,软件应该从硬件提交、提交中丢失的链继续。

实现用于将硬件计数器添加到软件计数器的回调,用于pedit和skbedit操作COMMIT、COMMIT、COMMIT。

Netfilter允许用户添加和恢复集合元素COMMIT、COMMIT。

WiFi添加基础架构以支持每个TID配置,如NoACK策略、重试计数、AMPDU控制(禁用/启用)、RTSCTS控制(启用/禁用)和Tx速率掩码配置提交、提交。

添加对请求测距测量将使用基于触发/非基于触发的流而不是基于EDCA的流提交的支持。

为了在已经关联到一个AP的情况下支持预关联安全协商(PASN),允许用户空间注册到Rx身份验证帧,以便用户空间逻辑能够接收/处理来自不同AP的身份验证帧,作为PASN提交的一部分。

Veth:添加更多Veth xdp统计信息,以与Mellanox、英特尔和Marvell实施Commit、Commit保持一致

XDP:添加对原子替换加载到接口上的XDP程序的支持。这是通过新的NetLink属性实现的,该属性可以指定要在接口COMMIT、COMMIT上替换的预期前一个程序。

Device Tree提供了两个新的高通SoC及其评估板:骁龙865(SM8250)是当前的高端电话芯片,IPQ6018是新的WiFi-6路由器芯片Commit,Commit。

用于语音助理的联发科MT8516应用处理器SoC,以及&。

..