summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorQiuwen Lu <[email protected]>2017-09-27 13:48:49 +0800
committerQiuwen Lu <[email protected]>2017-09-27 13:48:49 +0800
commit65d0501efd03c95ba2832c87e84f1b6cf03d40d7 (patch)
tree7ec4245455896f4d8df40d0442ac4b7badd0081a
parent673f2560c35d37bf89177651e0eee3a1c31c9006 (diff)
修正数值统计模块内存泄露的Bug,修正环境配置脚本在Surp内存存在的情况下配置错误的Bug。v4.2.23-20170927
-rw-r--r--app/src/monit.c1
-rw-r--r--service/src/monit.c1
-rw-r--r--tools/systemd/mrenv-script10
-rw-r--r--tools/systemd/mrzcpd.service.in7
-rw-r--r--tunnat/src/monit.cc1
5 files changed, 14 insertions, 6 deletions
diff --git a/app/src/monit.c b/app/src/monit.c
index e1a791f..89ce937 100644
--- a/app/src/monit.c
+++ b/app/src/monit.c
@@ -262,6 +262,7 @@ int mrapp_monit_loop(struct mr_instance * instance)
fprintf(fp_monit, "%s", str_json_print);
cJSON_Delete(j_root);
+ free(str_json_print);
fclose(fp_monit);
return 0;
} \ No newline at end of file
diff --git a/service/src/monit.c b/service/src/monit.c
index 75d06e0..b4ca612 100644
--- a/service/src/monit.c
+++ b/service/src/monit.c
@@ -277,6 +277,7 @@ int sc_monit_loop(struct sc_main * sc)
fprintf(fp_monit, "%s", str_json_print);
fclose(fp_monit);
+ free(str_json_print);
cJSON_Delete(j_root);
return 0;
diff --git a/tools/systemd/mrenv-script b/tools/systemd/mrenv-script
index 02a919d..c462ada 100644
--- a/tools/systemd/mrenv-script
+++ b/tools/systemd/mrenv-script
@@ -36,8 +36,8 @@ UIO_MODULE=igb_uio
NR_HUGEPAGE_FILE_2M=/sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages
NR_HUGEPAGE_FILE_1G=/sys/kernel/mm/hugepages/hugepages-1048576kB/nr_hugepages
-HUGEPAGE_PATH_2M=$(readlink -fsm /var/run/mrzcpd/huge_2M)
-HUGEPAGE_PATH_1G=$(readlink -fsm /var/run/mrzcpd/huge_1G)
+HUGEPAGE_PATH_2M=$(readlink -fsm /run/mrzcpd/huge_2M)
+HUGEPAGE_PATH_1G=$(readlink -fsm /run/mrzcpd/huge_1G)
DAEMON=$BIN_PATH/mrzcpd
NICTOOL=$BIN_PATH/mrtools-devinfo
@@ -155,8 +155,7 @@ function huge_alloc_1G()
return 1
fi
- SIZE_1G=$(cat $NR_HUGEPAGE_FILE_1G)
- [ $SIZE_1G -eq 0 ] && echo -n $HUGEPAGE_NUM_1G > $NR_HUGEPAGE_FILE_1G
+ echo -n $HUGEPAGE_NUM_1G > $NR_HUGEPAGE_FILE_1G
[ $? -eq 0 ] && return 0
return 1
}
@@ -167,8 +166,7 @@ function huge_alloc_2M()
return 1
fi
- SIZE_2M=$(cat $NR_HUGEPAGE_FILE_2M)
- [ $SIZE_2M -eq 0 ] && echo -n $HUGEPAGE_NUM_2M > $NR_HUGEPAGE_FILE_2M
+ echo -n $HUGEPAGE_NUM_2M > $NR_HUGEPAGE_FILE_2M
[ $? -eq 0 ] && return 0
return 1
}
diff --git a/tools/systemd/mrzcpd.service.in b/tools/systemd/mrzcpd.service.in
index 0b4c7e4..71d2bc4 100644
--- a/tools/systemd/mrzcpd.service.in
+++ b/tools/systemd/mrzcpd.service.in
@@ -4,8 +4,15 @@ Requires=mrenv.service
After=mrenv.service
[Service]
+Environment=SYSTEMD_LOG_LEVEL=debug
EnvironmentFile=/etc/sysconfig/mrzcpd
ExecStart=@MR_INSTALL_BINDIR@/mrzcpd -c @MR_INSTALL_SYSCONFDIR@/mrglobal.conf
+ExecStopPost=/bin/bash -c 'rm -f /run/mrzcpd/huge_2M/rtemap_*'
+ExecStopPost=/bin/bash -c 'rm -f /run/mrzcpd/huge_1G/rtemap_*'
+ExecStopPost=/usr/bin/rm -f /run/.rte_config
+ExecStopPost=/usr/bin/rm -f /run/.rte_hugepage_info
+ExecStopPost=/usr/bin/rm -rf /run/.dpdk
+
Restart=always
RestartSec=5s
Type=notify
diff --git a/tunnat/src/monit.cc b/tunnat/src/monit.cc
index 6caed91..ebda3b7 100644
--- a/tunnat/src/monit.cc
+++ b/tunnat/src/monit.cc
@@ -96,6 +96,7 @@ int tunnat_monit_loop(TunnatInstance * instance)
char * str_json_print = cJSON_Print(j_root);
fprintf(fp_monit, "%s", str_json_print);
cJSON_Delete(j_root);
+ free(str_json_print);
fclose(fp_monit);
return 0;
}