mailweb.openeuler.org
Manage this list
×
Keyboard Shortcuts
Thread View
j
: Next unread message
k
: Previous unread message
j a
: Jump to all threads
j l
: Jump to MailingList overview
2024
November
October
September
August
July
June
May
April
March
February
January
2023
December
November
October
September
August
July
June
May
April
March
February
January
2022
December
November
October
September
August
July
June
May
April
March
February
January
2021
December
November
October
September
August
July
June
May
April
March
February
January
2020
December
November
October
September
August
July
June
May
April
March
February
January
2019
December
November
October
List overview
Download
Dev
----- 2024 -----
November 2024
October 2024
September 2024
August 2024
July 2024
June 2024
May 2024
April 2024
March 2024
February 2024
January 2024
----- 2023 -----
December 2023
November 2023
October 2023
September 2023
August 2023
July 2023
June 2023
May 2023
April 2023
March 2023
February 2023
January 2023
----- 2022 -----
December 2022
November 2022
October 2022
September 2022
August 2022
July 2022
June 2022
May 2022
April 2022
March 2022
February 2022
January 2022
----- 2021 -----
December 2021
November 2021
October 2021
September 2021
August 2021
July 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
----- 2020 -----
December 2020
November 2020
October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
----- 2019 -----
December 2019
November 2019
October 2019
dev@openeuler.org
10 participants
3370 discussions
Start a n
N
ew thread
sysMaster项目及开源之夏社区例会
by openEuler conference
24 Jul '23
24 Jul '23
您好! dev-utils SIG 邀请您参加 2023-07-24 16:00 召开的Zoom会议 会议主题:sysMaster项目及开源之夏社区例会 会议内容: 1. sysmaster项目进展同步 2. 开源之夏题目进展同步 会议链接:https://us06web.zoom.us/j/89828127755?pwd=RjlqOGIzaTlmeTBlMlV6dzdtSkFZQT09
会议纪要:https://etherpad.openeuler.org/p/dev-utils-meetings
温馨提醒:建议接入会议后修改参会人的姓名,也可以使用您在gitee.com的ID
更多资讯尽在:https://openeuler.org/zh/
Hello! openEuler dev-utils SIG invites you to attend the Zoom conference will be held at 2023-07-24 16:00, The subject of the conference is sysMaster项目及开源之夏社区例会, Summary: 1. sysmaster项目进展同步 2. 开源之夏题目进展同步 You can join the meeting at
https://us06web.zoom.us/j/89828127755?pwd=RjlqOGIzaTlmeTBlMlV6dzdtSkFZQT09
. Add topics at
https://etherpad.openeuler.org/p/dev-utils-meetings
. Note: You are advised to change the participant name after joining the conference or use your ID at
gitee.com
. More information:
https://openeuler.org/en/
1
0
0
0
【openEuler社区OBS构建平台清理老旧私有project策略周知】
by xiasenlin
23 Jul '23
23 Jul '23
各位openeuler社区的maintainer、 committer和contributor们好: 自2020年openEuler社区对外开放自搭建OBS构建平台以来,数百位个人开发者借助此平台验证软件包构建,如今home project(即私有工程)已达15000+。鉴于home-backend磁盘空间近期频繁写满,阻塞日常提供服务,openEuler CICD sig制定如下清理策略,并向社区同步: 1. 每月定期清理老旧 home project及历史生成数据; 2. 老旧home project定义: (1) project 为空; (2) project超过6个月未有软件包更新;
1
0
0
0
openEuler update_20230719版本发布公告
by update版本发布邮箱
22 Jul '23
22 Jul '23
主题: openEuler update_20230719版本发布公告 Dear all, 经社区Release SIG、QA SIG及 CICD SIG 评估,openEuler-20.03-LTS-SP1、openEuler-20.03-LTS-SP3、openEuler-22.03-LTS、openEuler-22.03-LTS-SP1及openEuler-22.03-LTS-SP2 update版本满足版本出口质量,现进行发布公示。 本公示分为七部分: 1、openEuler-20.03-LTS-SP1 Update 20230719发布情况及待修复缺陷 2、openEuler-20.03-LTS-SP3 Update 20230719发布情况及待修复缺陷 3、openEuler-22.03-LTS Update 20230719发布情况及待修复缺陷 4、openEuler-22.03-LTS-SP1 Update 20230719发布情况及待修复缺陷 5、openEuler-22.03-LTS-SP2 Update 20230719发布情况及待修复缺陷 6、openEuler 关键组件待修复CVE 清单 7、openEuler 社区指导文档及开放平台链接 本次update版本发布后,下一个版本里程碑点(预计在2023/07/28)提供 update_ 20230726 版本。 openEuler-20.03-LTS-SP1 Update 20230719 经各SIG及社区开发者贡献,本周openEuler-20.03-LTS-SP1修复版本已知问题1个,已知漏洞8个。目前版本分支剩余待修复缺陷20个,缺陷/漏洞统计详见清单,缺陷/漏洞问题详见各软件包源码仓库 openEuler-20.03-LTS-SP1 Update版本CVE修复 及Bugfix list公示链接:
https://gitee.com/openeuler/release-management/issues/I7LJ8E?from=project-i…
CVE修复: CVE 仓库 score CVE-2023-3220 kernel 5.5 CVE-2023-3358 kernel 5.5 CVE-2023-1295 kernel 7.0 CVE-2023-3090 kernel 7.8 CVE-2023-3338 kernel 7.5 CVE-2023-3117 kernel 7.8 CVE-2023-36053 python-django 7.5 CVE-2023-3576 libtiff 5.5 Bugfix: issue 仓库 #I7GDLI:qemu-img conver 报错 Device or resource busy kernel openEuler-20.03-LTS-SP1版本编译构建信息查询链接:
https://build.openeuler.org/project/show/openEuler:20.03:LTS:SP1
https://build.openeuler.org/project/show/openEuler:20.03:LTS:SP1:Epol
openEuler-20.03-LTS-SP1 Update版本 发布源链接:
https://repo.openeuler.org/openEuler-20.03-LTS-SP1/update/
https://repo.openeuler.org/openEuler-20.03-LTS-SP1/EPOL/update/
openEuler CVE 及安全公告公示链接:
https://www.openeuler.org/zh/security/cve/
https://www.openeuler.org/zh/security/safety-bulletin/
https://repo.openeuler.org/security/data/cvrf/
openEuler-20.03-LTS-SP1 Update版本待修复问题清单公示(任务ID标注红色的问题单优先级高): 里程碑 任务ID 任务标题 优先级 sig组 关联仓库 openEuler 20.03-LTS-SP1 I4J0OY 【20.03 SP1】【arm/x86】安装好libdap后,getdap4命令的-i和-k参数使用异常 主要 sig/sig-recycle libdap openEuler 20.03-LTS-SP1 I4JMG4 【20.03 SP1】【arm/x86】robotframework包的三个命令:libdoc、rebot、robot执行--help/-h/-?/--version,查看帮助信息和版本信息,返回值为251 主要 sig/sig-ROS python-robotframework openEuler 20.03-LTS-SP1 I5DLX7 [20.03 22.03] 管理员指南操作文档mysql服务搭建指导文档有误 主要 sig/doc docs openEuler 20.03LTS SP1 update2103 I3E5C1 【20.03-SP1】【arm/x86】服务启动失败 主要 sig/bigdata hadoop openEuler 20.03LTS SP1 update210901 I48GIM 【20.03LTS SP1 update 210901】ovirt-cockpit-sso.service服务启动失败 主要 sig/oVirt ovirt-cockpit-sso openEuler 20.03-LTS-SP1 I6VFAE [20.03 SP1] [x86/arm] mariadb授权给远程用户,远程连接服务失败 次要 sig/DB mariadb openEuler 20.03-LTS-SP1 I4G4A5 Undefine-shift in _bfd_safe_read_leb128 无优先级 sig/Base-service binutils openEuler 20.03-LTS-SP1 I4G4B1 Integer overflow in print_vms_time 无优先级 sig/Base-service binutils openEuler 20.03-LTS-SP1 I4G4VY memleak in parse_gnu_debugaltlink 无优先级 sig/Base-service binutils openEuler 20.03-LTS-SP1 I4G4WF Heap-buffer-overflow in slurp_hppa_unwind_table 无优先级 sig/Base-service binutils openEuler 20.03-LTS-SP1 I4G4WW Use-after-free in make_qualified_name 无优先级 sig/Base-service binutils openEuler 20.03-LTS-SP1 I4G4X6 memleak in byte_get_little_endian 无优先级 sig/Base-service binutils openEuler 20.03-LTS-SP1 I4G4XF memleak in process_mips_specific 无优先级 sig/Base-service binutils openEuler 20.03-LTS-SP1 I4G4Y0 out-of-memory in vms_lib_read_index 无优先级 sig/Base-service binutils openEuler 20.03-LTS-SP1 I4G4YJ Heap-buffer-overflow in bfd_getl16 无优先级 sig/Base-service binutils openEuler 20.03-LTS-SP1 I4G4YV Floating point exception in _bfd_vms_slurp_etir 无优先级 sig/Base-service binutils openEuler 20.03LTS SP1 update210926 I4CMSV 【20.03-LTS-SP1】【arm/x86】搭建Kubernetes 集群缺少包etcd 无优先级 sig/TC community openEuler 20.03LTS SP1 update220111 I4QV6N 【openEuler-20.03-LTS-SP1】flink命令执行失败 无优先级 sig/sig-ai-bigdata flink openEuler-20.03-LTS-SP1 I3QGU7 系统不支持GB18030 无优先级 sig/TC community openEuler-20.03-LTS-SP1-dailybuild I5Y99T mate-desktop install problem in openEuler:20:03:LTS:SP1 无优先级 sig/sig-mate-desktop mate-desktop openEuler-20.03-LTS-SP3 Update 20230719 经各SIG及社区开发者贡献,本周openEuler-20.03-LTS-SP3修复版本已知问2个,已知漏洞8个。目前版本分支剩余待修复缺陷 7个,缺陷/漏洞统计详见清单,缺陷/漏洞问题详见各软件包源码仓库 openEuler-20.03-LTS-SP3 Update版本CVE修复 及Bugfix list公示链接:
https://gitee.com/openeuler/release-management/issues/I7LJ8F?from=project-i…
CVE修复: CVE 仓库 score CVE-2023-3576 libtiff 5.5 CVE-2023-3220 kernel 5.5 CVE-2023-3358 kernel 5.5 CVE-2023-1295 kernel 7.0 CVE-2023-3090 kernel 7.8 CVE-2023-3338 kernel 7.5 CVE-2023-3117 kernel 7.8 CVE-2023-36053 python-django 7.5 Bugfix: issue 仓库 #I7LSRL:TPCM 解决shim与ipmi通讯时,传输的宽字符无法别正确解析的问题 shim #I7GDLI:qemu-img conver 报错 Device or resource busy kernel openEuler-20.03-LTS-SP3版本编译构建信息查询链接:
https://build.openeuler.org/project/show/openEuler:20.03:LTS:SP3
https://build.openeuler.org/project/show/openEuler:20.03:LTS:SP3:Epol
openEuler-20.03-LTS-SP3 Update版本 发布源链接:
https://repo.openeuler.org/openEuler-20.03-LTS-SP3/update/
https://repo.openeuler.org/openEuler-20.03-LTS-SP3/EPOL/update/main/
openEuler CVE及安全公告公示链接:
https://www.openeuler.org/zh/security/cve/
https://www.openeuler.org/zh/security/safety-bulletin/
https://repo.openeuler.org/security/data/cvrf/
openEuler-20.03-LTS-SP3 Update版本待修复问题清单公示(任务ID标注红色的问题单优先级高): 里程碑 任务ID 任务标题 优先级 sig组 关联仓库 openEuler 20.03 LTS SP3 update20220801 I5LYJK 【20.03-sp3_update20220801】【x86】对内核版进行升级后,TCP_option_address安装异常 主要 sig/Kernel TCP_option_address openEuler 20.03-LTS-SP3 I5KXUY 【20.03 LTS SP3 update 20220803】【arm/x86】ovirt-cockpit-sso.service服务启动失败 主要 sig/oVirt ovirt-cockpit-sso openEuler-20.03-LTS-SP3 I5KY4S 【20.03 LTS SP3 update 20220803】【arm/x86】vdsmd.service服务启动失败,导致mom-vdsm.service服务无法启动成功 主要 sig/oVirt vdsm openEuler-20.03-LTS-SP3 I72EAT 【20.03 SP3】php相关包在20.03 LTS SP3降级失败 主要 sig/Base-service php openEuler 20.03LTS SP3 update220111 I4QV7S 【openEuler-20.03-LTS-SP3】flink run 命令执行失败 无优先级 sig/sig-ai-bigdata flink openEuler-20.03-LTS-SP3 I6VFMI [20.03 SP3] [x86/arm] mariadb授权给远程用户,远程连接服务失败 次要 sig/DB mariadb openEuler-20.03-LTS-SP3 I72HWV 【20.03-lts-sp3】x86环境上同时安装php-fpm软件包和php-opcache软件包后会导致php-fpm.service服务启动失败 次要 sig/Base-service php openEuler-22.03-LTS Update 20230719 经各SIG及社区开发者贡献,本周openEuler-22.03-LTS修复版本已知问题1个,已知漏洞9个。目前版本分支剩余待修复缺陷5个,缺陷/漏洞统计详见清单,缺陷/漏洞问题详见各软件包源码仓库 openEuler-22.03-LTS Update版本CVE修复 及Bugfix list公示链接:
https://gitee.com/openeuler/release-management/issues/I7LJ8H?from=project-i…
CVE修复: CVE 仓库 score CVE-2023-3576 libtiff 5.5 CVE-2023-36053 python-django 7.5 CVE-2023-3358 kernel 5.5 CVE-2023-1295 kernel 7.0 CVE-2023-3090 kernel 7.8 CVE-2023-3220 kernel 5.5 CVE-2023-3338 kernel 7.5 CVE-2023-3117 kernel 7.8 CVE-2023-31248 kernel 7.8 Bugfix: issue 仓库 #I7JHOA: loop: loop_set_status_from_info() check before assignment kernel openEuler-22.03-LTS版本编译构建信息查询链接:
https://build.openeuler.org/project/show/openEuler:22.03:LTS
https://build.openeuler.org/project/show/openEuler:22.03:LTS:Epol
openEuler-22.03-LTS Update版本 发布源链接:
https://repo.openeuler.org/openEuler-22.03-LTS/update/
https://repo.openeuler.org/openEuler-22.03-LTS/EPOL/update/main/
https://repo.openeuler.org/openEuler-22.03-LTS/EPOL/update/multi_version/Op…
https://repo.openeuler.org/openEuler-22.03-LTS/EPOL/update/multi_version/Op…
https://repo.openeuler.org/openEuler-22.03-LTS/EPOL/update/multi_version/ob…
openEuler CVE 及 安全公告公示链接:
https://www.openeuler.org/zh/security/cve/
https://www.openeuler.org/zh/security/safety-bulletin/
https://repo.openeuler.org/security/data/cvrf/
openEuler-22.03-LTS Update版本待修复问题清单公示(任务ID标注红色的问题单优先级高): 里程碑 任务ID 任务标题 优先级 sig 关联仓库 openEuler-22.03-LTS I5RHYO 【22.09 RC4】【arm/x86】package.ini中的redis_host配置为不存在的ip,重启pkgship服务失败,服务一直在尝试重启 主要 sig/sig-EasyLife pkgship openEuler-22.03-LTS I7HH1A 【22.03 LTS update20230628】qemu缺少安装依赖,安装失败 主要 sig/Virt qemu openEuler-22.03-LTS I6VFRX [22.03-LTS][x86/arm]mariadb授权给远程用户,远程连接服务失败 次要 sig/DB mariadb openEuler-22.03-LTS I72N5G 【22.03-lts】x86环境上同时安装php-fpm软件包和php-opcache软件包后会导致php-fpm.service服务启动失败 次要 sig/Base-service php openEuler-22.03-LTS I5M4N4 【22.03 LTS update 20220811】【arm/x86】openstack-ironic-inspector-conductor.service服务start失败 次要 sig/sig-openstack openstack-ironic-inspector openEuler-22.03-LTS-SP1 Update 20230719 经各SIG及社区开发者贡献,本周openEuler-22.03-LTS-SP1修复版本已知问题1个,已知漏洞9个。目前版本分支剩余待修复缺陷8个,缺陷/漏洞统计详见清单,缺陷/漏洞问题详见各软件包源码仓库 openEuler-22.03-LTS SP1 Update版本CVE修复 及Bugfix list公示链接:
https://gitee.com/openeuler/release-management/issues/I7LJ8D?from=project-i…
CVE修复: CVE 仓库 score CVE-2023-3576 libtiff 5.5 CVE-2023-3358 kernel 5.5 CVE-2023-1295 kernel 7.0 CVE-2023-3090 kernel 7.8 CVE-2023-3220 kernel 5.5 CVE-2023-3338 kernel 7.5 CVE-2023-3117 kernel 7.8 CVE-2023-31248 kernel 7.8 CVE-2023-36053 python-django 7.5 Bugfix: issue 仓库 #I7JHOA: loop: loop_set_status_from_info() check before assignment kernel openEuler-22.03-LTS SP1版本编译构建信息查询链接:
https://build.openeuler.openatom.cn/project/show/openEuler:22.03:LTS:SP1
https://build.openeuler.openatom.cn/project/show/openEuler:22.03:LTS:SP1:Ep…
openEuler-22.03-LTS SP1 Update版本 发布源链接:
https://repo.openeuler.org/openEuler-22.03-LTS-SP1/update/
https://repo.openeuler.org/openEuler-22.03-LTS-SP1/EPOL/update/main/
https://repo.openeuler.org/openEuler-22.03-LTS-SP1/EPOL/update/multi_versio…
https://repo.openeuler.org/openEuler-22.03-LTS-SP1/EPOL/update/multi_versio…
https://repo.openeuler.org/openEuler-22.03-LTS-SP1/EPOL/update/multi_versio…
openEuler CVE 及 安全公告公示链接:
https://www.openeuler.org/zh/security/cve/
https://www.openeuler.org/zh/security/safety-bulletin/
https://repo.openeuler.org/security/data/cvrf/
openEuler-22.03-LTS-SP1 Update版本待修复问题清单公示(任务ID标注红色的问题单优先级高): 序号 里程碑 任务ID 任务标题 优先级 标签 关联仓库 1 openEuler-22.03-LTS-SP1 I7LW30 【arm】-O3 -flto-partition=one -fipa-struct-reorg -fwhole-program编译ICE:during IPA pass: struct_reorg(in wide_int_to_tree_1, at tree.c:1575) 主要 sig/Compiler openEuler/gcc 2 openEuler-22.03-LTS-SP1 I7LWCW 【arm】-O3 -flto-partition=one -fipa-struct-reorg -fwhole-program编译ICE:internal compiler error: Segmentation fault 主要 sig/Compiler openEuler/gcc 3 openEuler-22.03-LTS-SP1 I7LWK7 【arm】-O3 -flto-partition=one -fipa-struct-reorg -fwhole-program编译ICE:during IPA pass: struct_reorg(in get_type_field, at ipa-struct-reorg/ipa-struct-reorg.c:4394) 主要 sig/Compiler openEuler/gcc 4 openEuler-22.03-LTS-SP1 I7LWO1 【arm】-O3 -flto-partition=one -fipa-struct-reorg -fwhole-program编译ICE:during RTL pass: expand(in convert_move, at expr.c:219) 主要 sig/Compiler openEuler/gcc 5 openEuler-22.03-LTS-SP1 I7LX07 【arm】-O3 -flto-partition=one -fipa-struct-reorg -fwhole-program编译ICE:during IPA pass: struct_reorg(in get_type_field, at ipa-struct-reorg/ipa-struct-reorg.c:4379) 主要 sig/Compiler openEuler/gcc 6 openEuler 22.03-SP1 I6B4V1 【22.03 SP1 update 20230118】【arm】libhdfs在arm架构降级失败,x86正常 主要 sig/bigdata src-openEuler/hadoop 7 openEuler-22.03-LTS-SP1 I6VFV6 [22.03 SP1] [x86/arm] mariadb授权给远程用户,远程连接服务失败 次要 sig/DB src-openEuler/mariadb 8 openEuler-22.03-LTS-SP1 I73CKF 【22.03-lts-sp1】x86环境上同时安装php-fpm软件包和php-opcache软件包后会导致php-fpm.service服务启动失败 次要 sig/Base-service src-openEuler/php openEuler-22.03-LTS-SP2 Update 20230719 经各SIG及社区开发者贡献,本周openEuler-22.03-LTS-SP2修复版本已知问题1个,已知漏洞9个。目前版本分支剩余待修复缺陷3个,缺陷/漏洞统计详见清单,缺陷/漏洞问题详见各软件包源码仓库 openEuler-22.03-LTS-SP2 Update版本CVE修复 及Bugfix list公示链接:
https://gitee.com/openeuler/release-management/issues/I7LM0A?from=project-i…
CVE修复: CVE 仓库 score CVE-2023-3576 libtiff 5.5 CVE-2023-3358 kernel 5.5 CVE-2023-3090 kernel 7.8 CVE-2023-3220 kernel 5.5 CVE-2023-3389 kernel 7.8 CVE-2023-3338 kernel 7.5 CVE-2023-3117 kernel 7.8 CVE-2023-31248 kernel 7.8 CVE-2023-36053 python-django 7.5 Bugfix: issue 仓库 #I7JHOA: loop: loop_set_status_from_info() check before assignment kernel openEuler-22.03-LTS SP2版本编译构建信息查询链接:
https://build.openeuler.openatom.cn/project/show/openEuler:22.03:LTS:SP2
https://build.openeuler.openatom.cn/project/show/openEuler:22.03:LTS:SP2:Ep…
openEuler-22.03-LTS SP2 Update版本 发布源链接:
https://repo.openeuler.org/openEuler-22.03-LTS-SP2/update/
https://repo.openeuler.org/openEuler-22.03-LTS-SP2/EPOL/update/main/
https://repo.openeuler.org/openEuler-22.03-LTS-SP2/EPOL/update/multi_versio…
https://repo.openeuler.org/openEuler-22.03-LTS-SP2/EPOL/update/multi_versio…
openEuler CVE 及 安全公告公示链接:
https://www.openeuler.org/zh/security/cve/
https://www.openeuler.org/zh/security/safety-bulletin/
https://repo.openeuler.org/security/data/cvrf/
openEuler-22.03-LTS-SP2 Update版本待修复问题清单公示(任务ID标注红色的问题单优先级高): 序号 里程碑 任务ID 任务标题 优先级 标签 关联仓库 1 openEuler-22.03-LTS-SP2 I7L3KF 【22.03 -LTS-SP2】安装libvirt软件包后,启动libvirtd有报错,并且会导致环境网络不通 严重 sig/Virt,block src-openEuler/libvirt 2 openEuler-22.03-LTS-SP2-round-2 I795G3 【22.03-LTS-SP2 round2】本次转测源中出现多个版本的containers-common 主要 sig/sig-CloudNative src-openEuler/skopeo 3 openEuler-22.03-LTS-SP2-SEC I7AFIR 【22.03-LTS-SP2 round2】【x86/arm】libkae-1.2.10-6.oe2203sp2安全编译选项Rpath/Runpath不满足 主要 sig/sig-AccLib src-openEuler/libkae 社区待修复漏洞: openEuler社区根据漏洞严重等级采取差异化的修复策略,请各个SIG 关注涉及CVE组件的修复情况。 严重等级(Severity Rating) 漏洞修复时长 致命(Critical) 7天 高(High) 14天 中(Medium) 30天 低(Low) 30天
可参考社区安全委员会漏洞:https://gitee.com/openeuler/security-committee/wikis/%E7%A4%BE…
近14天将超期CVE(7.22日数据): 漏洞编号 Issue ID 剩余天数 CVSS评分 软件包 责任SIG CVE-2019-9020 I7MEEK 4.76 9.8 php Base-service CVE-2019-9023 I7MEDM 4.76 9.8 php Base-service CVE-2023-37211 I7IG0R 3.76 8.8 thunderbird sig-desktop-apps CVE-2023-37202 I7IG0E 3.76 8.8 thunderbird sig-desktop-apps CVE-2023-37201 I7IG06 3.76 8.8 thunderbird sig-desktop-apps CVE-2023-37464 I7LBRI 7.21 8.6 cjose Application CVE-2023-29450 I7L1GC 5.76 8.5 zabbix Base-service CVE-2023-32254 I74FNQ 10.26 8.1 risc-v-kernel sig-RISC-V CVE-2023-32250 I74FJM 10.26 8.1 risc-v-kernel sig-RISC-V CVE-2023-1901 I7K4AT 6.76 8.0 zephyr sig-Zephyr CVE-2023-1902 I7K4AS 9.76 8.0 zephyr sig-Zephyr CVE-2023-3117 I7H68Q 0.26 7.8 risc-v-kernel sig-RISC-V CVE-2023-37208 I7IG0C 3.76 7.8 thunderbird sig-desktop-apps CVE-2023-22387 I7IEHO 3.76 7.8 risc-v-kernel sig-RISC-V CVE-2023-34432 I7K4AJ 10.76 7.8 sox Others CVE-2023-3106 I7KR5N 12.84 7.8 risc-v-kernel sig-RISC-V CVE-2021-33796 I7JL9G 0.26 7.5 mujs Desktop CVE-2023-37475 I7LTWC 10.26 7.5 avro Application CVE-2022-4899 I7MGQL 11.76 7.5 mysql Others CVE-2019-9024 I7MED5 11.76 7.5 php Base-service CVE-2023-36824 I7KG1T 4.26 7.4 redis6 sig-bigdata CVE-2023-36824 I7KG1S 4.26 7.4 redis5 sig-bigdata CVE-2022-24834 I7KR7M 5.76 7.0 redis6 sig-bigdata CVE-2023-34462 I7F2UM 9.26 6.5 netty3 sig-Java CVE-2023-34462 I7F2UK 9.26 6.5 netty sig-Java CVE-2020-21485 I7F2U6 6.34 6.1 alluxio sig-bigdata CVE-2023-3161 I7C2TD 0.26 5.5 risc-v-kernel sig-RISC-V CVE-2023-3022 I79X7Y 8.26 5.5 risc-v-kernel sig-RISC-V CVE-2023-36191 I7FEZH 8.76 5.5 sqlite DB CVE-2023-34247 I7D9BK 2.26 4.1 openstack-keystone sig-openstack openEuler 社区指导文档及开放平台链接: openEuler 版本分支维护规范:
https://gitee.com/openeuler/release-management/blob/master/openEuler%E7%89%…
openEuler release-management 版本分支PR指导:
https://gitee.com/openeuler/release-management/blob/master/openEuler%E5%BC%…
社区QA 版本测试提单规范
https://gitee.com/openeuler/QA/blob/master/%E7%A4%BE%E5%8C%BA%E7%89%88%E6%9…
社区QA 测试平台 radiates
https://radiatest.openeuler.org
<
https://radiatest.openeuler.org/
>
1
0
0
0
Compiler SIG 双周例会
by openEuler conference
21 Jul '23
21 Jul '23
您好! Compiler SIG 邀请您参加 2023-07-25 10:00 召开的Zoom会议(自动录制) 会议主题:Compiler SIG 双周例会 会议内容: 1. 进展update 欢迎继续申报议题~ 会议链接:https://us06web.zoom.us/j/86510618703?pwd=RXVZUytiQkk1ODJvWHRQQjBMeFVDdz09
会议纪要:https://etherpad.openeuler.org/p/Compiler-meetings
温馨提醒:建议接入会议后修改参会人的姓名,也可以使用您在gitee.com的ID
更多资讯尽在:https://openeuler.org/zh/
Hello! openEuler Compiler SIG invites you to attend the Zoom conference(auto recording) will be held at 2023-07-25 10:00, The subject of the conference is Compiler SIG 双周例会, Summary: 1. 进展update 欢迎继续申报议题~ You can join the meeting at
https://us06web.zoom.us/j/86510618703?pwd=RXVZUytiQkk1ODJvWHRQQjBMeFVDdz09
. Add topics at
https://etherpad.openeuler.org/p/Compiler-meetings
. Note: You are advised to change the participant name after joining the conference or use your ID at
gitee.com
. More information:
https://openeuler.org/en/
1
0
0
0
【月报征集】openEuler 社区 2023 年 07 月运作报告
by 翁巧贞
21 Jul '23
21 Jul '23
Hi,All openEuler 社区 2023 年 07 月运作报告 征集开始啦,欢迎大家投稿!! 因为大家的辛勤付出,社区的每一天都在发生美好的事情。 这些点滴故事都值得记录哦!如果您希望在7月月报中增加内容, 请于 8月2日(周三)前 本邮件回复您想增加的内容。 or 联系翁巧贞 wengqiaozhen(a)openeuler.sh, 邮件标题请备注【社区07月运作报告+投稿人】 openEuler社区往期月报:
https://mp.weixin.qq.com/mp/appmsgalbum?action=getalbum&__biz=MzI2NDE4OTE2M…
1
0
0
0
memsafety SIG例会
by openEuler conference
19 Jul '23
19 Jul '23
您好! sig-memsafety SIG 邀请您参加 2023-07-19 15:00 召开的Zoom会议(自动录制) 会议主题:memsafety SIG例会 会议内容: openEuler memsafety SIG例会 会议链接:https://us06web.zoom.us/j/89329332482?pwd=QVJnZGJoTmZPRmpGOGNIUkxWWjBLQT09
会议纪要:https://etherpad.openeuler.org/p/sig-memsafety-meetings
温馨提醒:建议接入会议后修改参会人的姓名,也可以使用您在gitee.com的ID
更多资讯尽在:https://openeuler.org/zh/
Hello! openEuler sig-memsafety SIG invites you to attend the Zoom conference(auto recording) will be held at 2023-07-19 15:00, The subject of the conference is memsafety SIG例会, Summary: openEuler memsafety SIG例会 You can join the meeting at
https://us06web.zoom.us/j/89329332482?pwd=QVJnZGJoTmZPRmpGOGNIUkxWWjBLQT09
. Add topics at
https://etherpad.openeuler.org/p/sig-memsafety-meetings
. Note: You are advised to change the participant name after joining the conference or use your ID at
gitee.com
. More information:
https://openeuler.org/en/
1
0
0
0
Storage SIG月底例会
by openEuler conference
18 Jul '23
18 Jul '23
您好! Storage SIG 邀请您参加 2023-07-25 10:00 召开的Zoom会议(自动录制) 会议主题:Storage SIG月底例会 会议链接:https://us06web.zoom.us/j/85913190839?pwd=ckZwR1hLUEtEK3U1NGYyenpsc0JGQT09
会议纪要:https://etherpad.openeuler.org/p/Storage-meetings
温馨提醒:建议接入会议后修改参会人的姓名,也可以使用您在gitee.com的ID
更多资讯尽在:https://openeuler.org/zh/
Hello! openEuler Storage SIG invites you to attend the Zoom conference(auto recording) will be held at 2023-07-25 10:00, The subject of the conference is Storage SIG月底例会, You can join the meeting at
https://us06web.zoom.us/j/85913190839?pwd=ckZwR1hLUEtEK3U1NGYyenpsc0JGQT09
. Add topics at
https://etherpad.openeuler.org/p/Storage-meetings
. Note: You are advised to change the participant name after joining the conference or use your ID at
gitee.com
. More information:
https://openeuler.org/en/
1
0
0
0
FangTian例会
by openEuler conference
18 Jul '23
18 Jul '23
您好! sig-FangTian SIG 邀请您参加 2023-07-20 10:00 召开的Zoom会议 会议主题:FangTian例会 会议链接:https://us06web.zoom.us/j/89913701230?pwd=OUdxZmFoK2lUck13YnNBcy9XaFJFQT09
会议纪要:https://etherpad.openeuler.org/p/sig-FangTian-meetings
温馨提醒:建议接入会议后修改参会人的姓名,也可以使用您在gitee.com的ID
更多资讯尽在:https://openeuler.org/zh/
Hello! openEuler sig-FangTian SIG invites you to attend the Zoom conference will be held at 2023-07-20 10:00, The subject of the conference is FangTian例会, You can join the meeting at
https://us06web.zoom.us/j/89913701230?pwd=OUdxZmFoK2lUck13YnNBcy9XaFJFQT09
. Add topics at
https://etherpad.openeuler.org/p/sig-FangTian-meetings
. Note: You are advised to change the participant name after joining the conference or use your ID at
gitee.com
. More information:
https://openeuler.org/en/
1
0
0
0
进展更新 ////答复: openEuler 23.09需求收集,请大家反馈需要合入openEuler 23.09创新版本特性
by Sujinling
17 Jul '23
17 Jul '23
大家好,已经陆续收到部分伙伴提交上来的特性,还有需要提交的请大家及时反馈,多谢。
https://gitee.com/openeuler/release-management/blob/master/openEuler-23.09/…
Thanks & best regards, 苏锦铃 发件人: Sujinling 发送时间: 2023年6月21日 17:50 收件人: 'release(a)openeuler.org' <release(a)openeuler.org>; 'tc(a)openeuler.org' <tc(a)openeuler.org>; 'dev(a)openeuler.org' <dev(a)openeuler.org> 主题: openEuler 23.09需求收集,请大家反馈需要合入openEuler 23.09创新版本特性 大家好, openEuler 23.09创新版本目标:提前为6.x 内核 LTS版本做准备,基于6.4内核进行技术创新。 需求已启动收集 , 请大家反馈需要合入openEuler 23.09创新版本特性。 建议大家7月20日前完成特性申报,release将于7月21日至7月28日完成所有特性评审。 特性清单地址:
https://gitee.com/openeuler/release-management/blob/master/openEuler-23.09/…
需求申请流程如下:
https://gitee.com/openeuler/release-management/blob/master/openEuler%E9%9C%…
1
0
0
0
[PATCH] write README and README-en
by Tie Liu
17 Jul '23
17 Jul '23
--- README.en.md | 41 +++++++++++--------------- README.md | 54 +++++++++++++++++++--------------- doc/img/sysBoost-stack-en.png | Bin 0 -> 27604 bytes doc/img/sysBoost-stack.png | Bin 0 -> 21539 bytes 4 files changed, 47 insertions(+), 48 deletions(-) create mode 100644 doc/img/sysBoost-stack-en.png create mode 100644 doc/img/sysBoost-stack.png diff --git a/README.en.md b/README.en.md index 9bd75bf..3a6196c 100644 --- a/README.en.md +++ b/README.en.md @@ -4,33 +4,26 @@ Sysboost converts dynamic links into static links by combining executable files and dynamic library files. This reduces the overhead and delay of dynamic links and improves the execution efficiency of programs. #### Software Architecture -Software architecture description +![](doc/img/sysBoost-stack-en.png) +Microarchitecture-Aware -#### Installation - -1. xxxx -2. xxxx -3. xxxx +Dynamic library stitching +In the ld loading phase, code segments of scattered dynamic libraries are combined and aggregated, and huge page memory is used to improve the iTLB hit ratio. -#### Instructions +exec HugePages +The user-mode hugepages mechanism requires application configuration modification and recompilation. The exec native hugepage mechanism directly uses hugepage memory in the ELF file loading phase, which is transparent to apps. -1. xxxx -2. xxxx -3. xxxx - -#### Contribution - -1. Fork the repository -2. Create Feat_xxx branch -3. Commit your code -4. Create Pull Request +Eliminate PLT redirection +In the process of invoking dynamic library functions, the application code needs to jump to the PLT table and then to the real function. Eliminating the PLT jump can improve the IPC. +Online re-arrangement of hot sections +By default, code snippets are arranged based on the dynamic library granularity. Hot code can be rearranged based on the section granularity using the online rearrangement technology. +#### Installation +For details, see the sysBoost section in openEuler/docs. -#### Gitee Feature +#### Instructions +For details, see the sysBoost section in openEuler/docs. -1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md -2. Gitee blog [blog.gitee.com](https://blog.gitee.com) -3. Explore open source project [
https://gitee.com/explore](https://gitee.com/explore)
-4. The most valuable open source project [
GVP](https://gitee.com/gvp)
-5. The manual of Gitee [
https://gitee.com/help](https://gitee.com/help)
-6. The most popular members [
https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
+#### Contribution +1. If bugs are found or new requirements are required, submit issue;
https://gitee.com/openeuler/sysboost/issues
. +2. Submit the patch for fixing bugs or new features through Pull Request. diff --git a/README.md b/README.md index 9bd75bf..7add59d 100644 --- a/README.md +++ b/README.md @@ -1,36 +1,42 @@ # sysboost -#### Description -Sysboost converts dynamic links into static links by combining executable files and dynamic library files. This reduces the overhead and delay of dynamic links and improves the execution efficiency of programs. +#### 介绍 -#### Software Architecture -Software architecture description +通过sysboost代码重排技术对可执行文件和动态库文件在线重排操作,优化代码与运行环境的CPU微架构的适应性, 提升程序性能。该技术在保证程序语义和意图不变的情况下, 优化汇编指令, 代码布局, 数据布局, 内存大页, 系统调用等。 -#### Installation +#### 软件架构 -1. xxxx -2. xxxx -3. xxxx +![](doc/img/sysBoost-stack.png) -#### Instructions +微架构优化技术 -1. xxxx -2. xxxx -3. xxxx +动态库拼接 +通过ld加载阶段将分散的动态库的代码段数据段拼接聚合,然后使用大页内存提升iTLB命中率。 -#### Contribution +exec原生大页 +用户态大页机制需要应用修改配置和重编译,exec原生大页机制直接在内核加载ELF文件阶段使用大页内存,对APP透明。 -1. Fork the repository -2. Create Feat_xxx branch -3. Commit your code -4. Create Pull Request +消除PLT跳转 +应用代码调用动态库函数的流程,需要先跳转PLT表,然后跳转真实函数,消除PLT跳转能提升IPC。 +热点Section在线重排 +默认情况下代码段是按动态库粒度排布的,通过在线重排技术可以实现热点代码按Section粒度重排。 -#### Gitee Feature -1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md -2. Gitee blog [blog.gitee.com](https://blog.gitee.com) -3. Explore open source project [
https://gitee.com/explore](https://gitee.com/explore)
-4. The most valuable open source project [
GVP](https://gitee.com/gvp)
-5. The manual of Gitee [
https://gitee.com/help](https://gitee.com/help)
-6. The most popular members [
https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
+ +#### 构建/安装教程 + +请参考openEuler/docs下sysBoost章节; + + + +#### 使用说明 + +请参考openEuler/docs下sysBoost章节; + + + +#### 参与贡献 + +1. 发现BUG或者有新需求请提issue;
https://gitee.com/openeuler/sysboost/issues
+2. 修复BUG或者新特性的补丁请通过Pull Request提交; \ No newline at end of file diff --git a/doc/img/sysBoost-stack-en.png b/doc/img/sysBoost-stack-en.png new file mode 100644 index 0000000000000000000000000000000000000000..9ef9c0081d66719517cf70969a5cc1de4fcd54d2 GIT binary patch literal 27604 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 BI(Ps8 literal 0 HcmV?d00001 diff --git a/doc/img/sysBoost-stack.png b/doc/img/sysBoost-stack.png new file mode 100644 index 0000000000000000000000000000000000000000..c3e3dac0ccd6e35fe62ecce6ce91ca28c6d2ec97 GIT binary patch literal 21539 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 literal 0 HcmV?d00001 -- 2.28.0.windows.1
1
0
0
0
← Newer
1
...
76
77
78
79
80
81
82
...
337
Older →
Jump to page:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
Results per page:
10
25
50
100
200