From 0f643d87bde4e4b4e3152c73d5b166dec290142d Mon Sep 17 00:00:00 2001 From: yangpan Date: Mon, 18 Sep 2023 19:54:16 +0800 Subject: [PATCH] remove set_app_aot_flag(old_path: &String, is_set: bool) --- bin/aot.rs | 76 ++++++++++++++++++++--------------------- bin/coredump_monitor.rs | 12 +++---- bin/daemon.rs | 14 ++++---- 3 files changed, 51 insertions(+), 51 deletions(-) diff --git a/bin/aot.rs b/bin/aot.rs index 829d75c..2172dc1 100644 --- a/bin/aot.rs +++ b/bin/aot.rs @@ -90,44 +90,44 @@ pub fn find_libs(conf: &RtoConfig, elf: &Elf) -> Vec { } } -pub fn set_app_aot_flag(old_path: &String, is_set: bool) -> i32 { - let mut args: Vec = Vec::new(); - let setfattr = "setfattr".to_string(); - args.push("-n".to_string()); - args.push("trusted.sysboost_flags".to_string()); - args.push("-v".to_string()); - if is_set { - args.push("true".to_string()); - } else { - args.push("false".to_string()); - } - let old_path = Path::new(old_path); - let old_path = match fs::canonicalize(old_path) { - Ok(p) => p, - Err(e) => { - log::error!("get realpath failed: {}", e); - return -1; - } - }; - let new_path = old_path.with_extension("bak"); - match fs::copy(&old_path, &new_path) { - Ok(_) => {} - Err(e) => { - log::error!("Copy failed: {}", e); - return -1; - } - } - args.push(new_path.to_str().unwrap().to_string()); - let ret = run_child(&setfattr, &args); - match fs::rename(&new_path, &old_path) { - Ok(_) => {} - Err(e) => { - log::error!("Mv failed: {}", e); - return -1; - } - } - return ret; -} +// pub fn set_app_aot_flag(old_path: &String, is_set: bool) -> i32 { +// let mut args: Vec = Vec::new(); +// let setfattr = "setfattr".to_string(); +// args.push("-n".to_string()); +// args.push("trusted.sysboost_flags".to_string()); +// args.push("-v".to_string()); +// if is_set { +// args.push("true".to_string()); +// } else { +// args.push("false".to_string()); +// } +// let old_path = Path::new(old_path); +// let old_path = match fs::canonicalize(old_path) { +// Ok(p) => p, +// Err(e) => { +// log::error!("get realpath failed: {}", e); +// return -1; +// } +// }; +// let new_path = old_path.with_extension("bak"); +// match fs::copy(&old_path, &new_path) { +// Ok(_) => {} +// Err(e) => { +// log::error!("Copy failed: {}", e); +// return -1; +// } +// } +// args.push(new_path.to_str().unwrap().to_string()); +// let ret = run_child(&setfattr, &args); +// match fs::rename(&new_path, &old_path) { +// Ok(_) => {} +// Err(e) => { +// log::error!("Mv failed: {}", e); +// return -1; +// } +// } +// return ret; +// } // 生成rto文件 // rto文件先生成到临时文件, 然后mv到最终路径, 避免并发操作文件问题 diff --git a/bin/coredump_monitor.rs b/bin/coredump_monitor.rs index 57da3b6..af8fcf2 100644 --- a/bin/coredump_monitor.rs +++ b/bin/coredump_monitor.rs @@ -9,7 +9,7 @@ // See the Mulan PSL v2 for more details. // Create: 2023-7-13 -use crate::aot::set_app_aot_flag; +//use crate::aot::set_app_aot_flag; use crate::daemon; use log::{self}; @@ -60,11 +60,11 @@ fn process_exec_event(pid: i32) { fn do_bash_rollback() -> i32 { // unset flag - let ret = set_app_aot_flag(&BASH_PATH.to_string(), false); - if ret != 0 { - log::error!("Failed to unset flag for bash!"); - return ret; - } + // let ret = set_app_aot_flag(&BASH_PATH.to_string(), false); + // if ret != 0 { + // log::error!("Failed to unset flag for bash!"); + // return ret; + // } // remove link daemon::db_remove_link(&BASH_LINK_PATH.to_string()); // remove bash.rto diff --git a/bin/daemon.rs b/bin/daemon.rs index e711f4e..379470f 100644 --- a/bin/daemon.rs +++ b/bin/daemon.rs @@ -17,7 +17,7 @@ use crate::kmod_util::test_kmod; use crate::config::RtoConfig; use crate::config::read_config; use crate::aot::gen_app_rto; -use crate::aot::set_app_aot_flag; +//use crate::aot::set_app_aot_flag; use crate::aot::parse_elf_file; use crate::aot::find_libs; use crate::bolt::bolt_optimize; @@ -95,11 +95,11 @@ fn sysboost_core_process(conf: &RtoConfig) -> i32 { return ret; } - let ret = set_app_aot_flag(&conf.elf_path, true); - if ret != 0 { - log::error!("Error: set app aot flag fault."); - return ret; - } + // let ret = set_app_aot_flag(&conf.elf_path, true); + // if ret != 0 { + // log::error!("Error: set app aot flag fault."); + // return ret; + // } return ret; } @@ -213,7 +213,7 @@ fn clean_last_rto() { } let file_name = path.file_name().unwrap(); let p = format!("{}{}", SYSBOOST_DB_PATH, file_name.to_string_lossy()); - set_app_aot_flag(&p, false); + //set_app_aot_flag(&p, false); db_remove_link(&p); } let ret = fs::remove_file("/usr/bin/bash.rto"); -- Gitee