93 lines
4.2 KiB
Diff
93 lines
4.2 KiB
Diff
From e81e8e8febb948e9e378c62661d18ebbed73ea34 Mon Sep 17 00:00:00 2001
|
||
From: wu-changsheng <wuchangsheng2@huawei.com>
|
||
Date: Tue, 2 Aug 2022 11:27:23 +0800
|
||
Subject: [PATCH] modify-huge-dir-dir-name
|
||
|
||
---
|
||
README.md | 20 ++++++++++----------
|
||
src/lstack/lstack.conf | 2 +-
|
||
src/ltran/ltran.conf | 2 +-
|
||
3 files changed, 12 insertions(+), 12 deletions(-)
|
||
|
||
diff --git a/README.md b/README.md
|
||
index 3c1487c..887a4ae 100644
|
||
--- a/README.md
|
||
+++ b/README.md
|
||
@@ -71,12 +71,12 @@ grep Huge /proc/meminfo
|
||
### 4. 挂载大页内存
|
||
创建两个目录,分别给lstack的进程、ltran进程访问大页内存使用。操作步骤如下:
|
||
``` sh
|
||
-mkdir -p /mnt/hugepages
|
||
-mkdir -p /mnt/hugepages-2M
|
||
-chmod -R 700 /mnt/hugepages
|
||
-chmod -R 700 /mnt/hugepages-2M
|
||
-mount -t hugetlbfs nodev /mnt/hugepages -o pagesize=2M
|
||
-mount -t hugetlbfs nodev /mnt/hugepages-2M -o pagesize=2M
|
||
+mkdir -p /mnt/hugepages-ltran
|
||
+mkdir -p /mnt/hugepages-lstack
|
||
+chmod -R 700 /mnt/hugepages-ltran
|
||
+chmod -R 700 /mnt/hugepages-lstack
|
||
+mount -t hugetlbfs nodev /mnt/hugepages-ltran -o pagesize=2M
|
||
+mount -t hugetlbfs nodev /mnt/hugepages-lstack -o pagesize=2M
|
||
```
|
||
|
||
### 5. 应用程序使用Gazelle
|
||
@@ -116,7 +116,7 @@ GAZELLE_BIND_PROCNAME=test LD_PRELOAD=/usr/lib64/liblstack.so ./test
|
||
|
||
lstack.conf示例:
|
||
``` conf
|
||
-dpdk_args=["--socket-mem", "2048,0,0,0", "--huge-dir", "/mnt/hugepages-2M", "--proc-type", "primary", "--legacy-mem", "--map-perfect"]
|
||
+dpdk_args=["--socket-mem", "2048,0,0,0", "--huge-dir", "/mnt/hugepages-lstack", "--proc-type", "primary", "--legacy-mem", "--map-perfect"]
|
||
|
||
use_ltran=1
|
||
kni_switch=0
|
||
@@ -150,7 +150,7 @@ devices="aa:bb:cc:dd:ee:ff"
|
||
|
||
ltran.conf示例:
|
||
``` conf
|
||
-forward_kit_args="-l 0,1 --socket-mem 1024,0,0,0 --huge-dir /mnt/hugepages --proc-type primary --legacy-mem --map-perfect --syslog daemon"
|
||
+forward_kit_args="-l 0,1 --socket-mem 1024,0,0,0 --huge-dir /mnt/hugepages-ltran --proc-type primary --legacy-mem --map-perfect --syslog daemon"
|
||
forward_kit="dpdk"
|
||
|
||
kni_switch=0
|
||
@@ -248,8 +248,8 @@ Gazelle可能存在如下安全风险,用户需要根据使用场景评估风
|
||
|
||
**共享内存**
|
||
- 现状
|
||
- 大页内存 mount 至 /mnt/hugepages-2M 目录,链接 liblstack.so 的进程初始化时在 /mnt/hugepages-2M 目录下创建文件,每个文件对应 2M 大页内存,并 mmap 这些文件。ltran 在收到 lstask 的注册信息后,根据大页内存配置信息也 mmap 目录下文件,实现大页内存共享。
|
||
- ltran 在 /mnt/hugepages 目录的大页内存同理。
|
||
+ 大页内存 mount 至 /mnt/hugepages-lstack 目录,链接 liblstack.so 的进程初始化时在 /mnt/hugepages-lstack 目录下创建文件,每个文件对应 2M 大页内存,并 mmap 这些文件。ltran 在收到 lstask 的注册信息后,根据大页内存配置信息也 mmap 目录下文件,实现大页内存共享。
|
||
+ ltran 在 /mnt/hugepages-ltran 目录的大页内存同理。
|
||
- 当前消减措施
|
||
大页文件权限 600,只有 OWNER 用户才能访问文件,默认 root 用户,支持配置成其它用户;
|
||
大页文件有 DPDK 文件锁,不能直接写或者映射。
|
||
diff --git a/src/lstack/lstack.conf b/src/lstack/lstack.conf
|
||
index b53068d..1a91aee 100644
|
||
--- a/src/lstack/lstack.conf
|
||
+++ b/src/lstack/lstack.conf
|
||
@@ -8,7 +8,7 @@
|
||
# PURPOSE.
|
||
# See the Mulan PSL v2 for more details.
|
||
|
||
-dpdk_args=["--socket-mem", "2048,0,0,0", "--huge-dir", "/mnt/hugepages-2M", "--proc-type", "primary", "--legacy-mem", "--map-perfect"]
|
||
+dpdk_args=["--socket-mem", "2048,0,0,0", "--huge-dir", "/mnt/hugepages-lstack", "--proc-type", "primary", "--legacy-mem", "--map-perfect"]
|
||
|
||
use_ltran=1
|
||
kni_switch=0
|
||
diff --git a/src/ltran/ltran.conf b/src/ltran/ltran.conf
|
||
index cfcd5f7..3c1a2bc 100644
|
||
--- a/src/ltran/ltran.conf
|
||
+++ b/src/ltran/ltran.conf
|
||
@@ -8,7 +8,7 @@
|
||
# PURPOSE.
|
||
# See the Mulan PSL v2 for more details.
|
||
|
||
-forward_kit_args="-l 0,1 --socket-mem 1024,0,0,0 --huge-dir /mnt/hugepages --proc-type primary --legacy-mem --map-perfect --syslog daemon"
|
||
+forward_kit_args="-l 0,1 --socket-mem 1024,0,0,0 --huge-dir /mnt/hugepages-ltran --proc-type primary --legacy-mem --map-perfect --syslog daemon"
|
||
forward_kit="dpdk"
|
||
|
||
kni_switch=0
|
||
--
|
||
2.23.0
|
||
|