Linux: network: tcp:__sk_mem_raise_allocated;确保公平

之前看这个函数里有一个地方没有看懂,代码如下:

cpp 复制代码
       if (sk_has_memory_pressure(sk)) {
              int alloc;

              if (!sk_under_memory_pressure(sk))
                     return 1;
              alloc = sk_sockets_allocated_read_positive(sk);  
              if (sk_prot_mem_limits(sk, 2) > alloc *
                  sk_mem_pages(sk->sk_wmem_queued +
                            atomic_read(&sk->sk_rmem_alloc) +
                            sk->sk_forward_alloc))
                     return 1;
       }

今天在网上找了一下,搜到下面的链接,里面有一个解释是:

https://lore.kernel.org/all/20231019120026.42215-2-wuyun.abel@bytedance.com/

Try to be fair among all the sockets under global pressure by allowing the ones that below average usage to raise.

尝试在全局压力下的所有套接字之间保持一个公平,允许低于平均使用率的套接字升高,高使用内存的socket不让申请内存。

相关推荐
GIS数据转换器7 分钟前
智慧能源管理平台
java·大数据·运维·人工智能·无人机
TechWayfarer26 分钟前
IP精准定位服务在快递网点规划中的应用:如何用客户位置数据辅助选址
大数据·网络·python·tcp/ip·交通物流
剑神一笑31 分钟前
Linux lsof 命令深度解析:从文件描述符到进程追踪
linux·运维·php
qq36219670534 分钟前
facebook是什么意思?新手从零到精通完全指南
运维·服务器·facebook
勿芮介42 分钟前
【研发工具】Jenkins镜像源配置问题及解决方案
运维·servlet·jenkins
qq_3129201142 分钟前
如何将Nginx响应时间从500ms降至50ms
运维·nginx
andlbds1 小时前
解决Ubuntu20.04进入系统卡死在厂商Logo界面问题
linux·ubuntu
MIXLLRED1 小时前
解决: Ubuntu 22.04上树莓派4B扩展板ROS2兼容性修复指南
linux·ubuntu·树莓派
zizle_lin1 小时前
CentOS配置yum源
linux·运维·centos
志栋智能1 小时前
超自动化运维:如何降低人为错误?
大数据·运维·网络·人工智能·自动化