diff --git a/0001-ignore-pin-memory-init-in-x86.patch b/0001-ignore-pin-memory-init-in-x86.patch new file mode 100644 index 0000000000000000000000000000000000000000..24f531942ada85c3c16d291913f7427bd2c0eeb6 --- /dev/null +++ b/0001-ignore-pin-memory-init-in-x86.patch @@ -0,0 +1,39 @@ +From fe0b709d2fe196097796b3b964803226c6ca9578 Mon Sep 17 00:00:00 2001 +From: hejingxian +Date: Thu, 1 Dec 2022 23:02:21 +0800 +Subject: [PATCH] ignore pin memory init in x86 + +Signed-off-by: hejingxian +--- + misc/nvwa-pre.sh | 9 ++++++--- + 1 file changed, 6 insertions(+), 3 deletions(-) + +diff --git a/misc/nvwa-pre.sh b/misc/nvwa-pre.sh +index 69f6de9..18960e7 100644 +--- a/misc/nvwa-pre.sh ++++ b/misc/nvwa-pre.sh +@@ -1,6 +1,6 @@ + #!/bin/bash + +-set -e ++#set -e + + # 1. Increase last pid by 2011 from saved last pid. + # So services restoring may use its old pid. +@@ -32,8 +32,11 @@ else + fi + + # 2. Enable Pin Memory +-modprobe pin_memory +-/usr/bin/nvwa-pin --init-pagemap-read ++is_x86=`uname -a | grep x86` ++if [[ $is_x86"X" == "X" ]]; then ++ modprobe pin_memory ++ /usr/bin/nvwa-pin --init-pagemap-read ++fi + + # 3. Enable PMEM + grep -q "Persistent Memory" /proc/iomem || exit 0 +-- +2.20.1.windows.1 + diff --git a/0002-systemd-solve-the-problem-of-parsing-pid-of-message.patch b/0002-systemd-solve-the-problem-of-parsing-pid-of-message.patch new file mode 100644 index 0000000000000000000000000000000000000000..919edf159d0130465639b4f2ec7caa7cbb4fcf71 --- /dev/null +++ b/0002-systemd-solve-the-problem-of-parsing-pid-of-message.patch @@ -0,0 +1,54 @@ +From c65a42ea5d2e3626adfd5d09864b2b4bdb0f27d5 Mon Sep 17 00:00:00 2001 +From: Longjun Luo +Date: Mon, 26 Dec 2022 23:53:48 +0800 +Subject: [PATCH] systemd: solve the problem of parsing pid of message + +When restore the service of Notify, need to parse +the right pid. + +Signed-off-by: Longjun Luo +--- + src/client.go | 2 +- + src/systemd.go | 9 ++++++++- + 2 files changed, 9 insertions(+), 2 deletions(-) + +diff --git a/src/client.go b/src/client.go +index 2bf6875..70d5832 100644 +--- a/src/client.go ++++ b/src/client.go +@@ -79,7 +79,7 @@ func startClient(path string) { + if ret != 0 { + handleRet("restore", ret) + } +- RestoreMainPid(c.Args().Get(1)) ++ RestoreMainPid(c.Args().First()) + NotifySytemd() + SystemdReload() + return nil +diff --git a/src/systemd.go b/src/systemd.go +index 65c53bc..cae7c05 100644 +--- a/src/systemd.go ++++ b/src/systemd.go +@@ -1,11 +1,18 @@ + package main + + import ( ++ "strings" + "github.com/coreos/go-systemd/daemon" + log "github.com/sirupsen/logrus" + ) + +-func RestoreMainPid(pid string) { ++func RestoreMainPid(command string) { ++ commands := strings.Split(command, "@") ++ if (len(commands) != 2) { ++ log.Errorf("Invalid command format %s \n", command) ++ return ++ } ++ pid := commands[1] + ifSupport, err := daemon.SdNotify(false, "READY=1\nMAINPID="+pid) + if ifSupport == false || err != nil { + log.Errorf("Unable to notify systemd, support %v err %s \n", ifSupport, err) +-- +2.38.1 + diff --git a/0003-nvwa-let-nvwa-to-parse-help-h-and-remove-version-pri.patch b/0003-nvwa-let-nvwa-to-parse-help-h-and-remove-version-pri.patch new file mode 100644 index 0000000000000000000000000000000000000000..4942a8fbb18140114c85eeeab0fe31fa52845eac --- /dev/null +++ b/0003-nvwa-let-nvwa-to-parse-help-h-and-remove-version-pri.patch @@ -0,0 +1,39 @@ +From a6b0c93a80bfdfb51d92d2da0b61c520832add5c Mon Sep 17 00:00:00 2001 +From: Longjun Luo +Date: Fri, 6 Jan 2023 11:16:37 +0800 +Subject: [PATCH] nvwa: let nvwa to parse help/h and remove version print + +Signed-off-by: Longjun Luo +--- + src/client.go | 1 - + src/main.go | 2 ++ + 2 files changed, 2 insertions(+), 1 deletion(-) + +diff --git a/src/client.go b/src/client.go +index 70d5832..1f0c485 100644 +--- a/src/client.go ++++ b/src/client.go +@@ -43,7 +43,6 @@ func startClient(path string) { + app := &cli.App{ + Name: "nvwa", + Usage: "a tool used for openEuler kernel update.", +- Version: "0.1", + Compiled: time.Now(), + Commands: []*cli.Command{ + { +diff --git a/src/main.go b/src/main.go +index bcb5bb4..27811ed 100644 +--- a/src/main.go ++++ b/src/main.go +@@ -9,6 +9,8 @@ var socketPath = "/run/nvwa/nvwa.socket" + func main() { + server := flag.Int("server", 0, + "set this value to 1 to start a server") ++ _ = flag.Bool("h", false, "use nvwa help to see help text") ++ _ = flag.Bool("help", false, "use nvwa help to see help text") + flag.Parse() + if *server != 0 { + startServer(socketPath) +-- +2.38.1 + diff --git a/nvwa-v0.2.tar.gz b/nvwa-v0.2.tar.gz index d3d947d802a3030644e08f0f79a090f6ca562282..d438b532e861c46d004e0f42ea4358033cb59ae3 100644 Binary files a/nvwa-v0.2.tar.gz and b/nvwa-v0.2.tar.gz differ diff --git a/nvwa.spec b/nvwa.spec index cae14b801542656be6ce7bae2b5e6f732ab6384e..d8ac02baeebc546fd0f595cc52d0be5ac122dafc 100644 --- a/nvwa.spec +++ b/nvwa.spec @@ -1,13 +1,18 @@ Name: nvwa Version: 0.2 -Release: 1 +Release: 4 Summary: a tool used for openEuler kernel update License: MulanPSL-2.0 and Apache-2.0 and MIT and MPL-2.0 URL: https://gitee.com/openeuler/nvwa Source: %{name}-v%{version}.tar.gz +Patch1: 0001-ignore-pin-memory-init-in-x86.patch +Patch2: 0002-systemd-solve-the-problem-of-parsing-pid-of-message.patch +Patch3: 0003-nvwa-let-nvwa-to-parse-help-h-and-remove-version-pri.patch + BuildRequires: golang >= 1.13 +BuildRequires: systemd Requires: kexec-tools criu Requires: systemd-units iptables-services iproute Requires: gcc @@ -15,11 +20,10 @@ Requires: gcc %description A tool used to automate the process of seamless update of the openEuler. -%global debug_package %{nil} +%undefine _missing_build_ids_terminate_build %prep -%autosetup -n %{name}-v%{version} - +%autosetup -n %{name}-v%{version} -p1 %build @@ -79,11 +83,17 @@ source /usr/share/bash-completion/completions/nvwa %{_bindir}/%{name}-pre.sh %changelog -* Fri 30 Jul 2021 anatasluo +* Tue Jan 03 2023 anatasluo - 0.2-4 +- Solve the problem of parsing pid of message +* Thu Dec 15 2022 fushanqing - 0.2-3 +- Enable debuginfo for fix strip +* Wed Dec 14 2022 anatasluo - 0.2-2 +- Fix issues caused by ctrl-c and systemd +* Fri Jul 30 2021 anatasluo - 0.2-1 - Update to 0.2 -* Fri 19 Mar 2021 snoweay - 0.1-3 +* Fri Mar 19 2021 snoweay - 0.1-3 - Add secure compile args -* Thu 18 Mar 2021 anatasluo +* Thu Mar 18 2021 anatasluo 0.1-2 - Update to 0.1-r2 -* Thu Feb 18 2021 anatasluo +* Thu Feb 18 2021 anatasluo - 0.0.1-1 - Update to 0.0.1