2022-09-01 14:11:27

by zhanchengbin

[permalink] [raw]
Subject: [PATCH] nfs-blkmapd: Fix the error status when nfs-blkmapd stops

The systemctl stop nfs-blkmap.service will sends the SIGTERM signal
to the nfs-blkmap.service first.If the process fails to be stopped,
it sends the SIGKILL signal again to kill the process.
However, exit(1) is executed in the SIGTERM processing function of
nfs-blkmap.service. As a result, systemd receives an error message
indicating that nfs-blkmap.service failed.
"Active: failed" is displayed when the systemctl status
nfs-blkmap.service command is executed.

Signed-off-by: zhanchengbin <[email protected]>
---
utils/blkmapd/device-discovery.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/utils/blkmapd/device-discovery.c
b/utils/blkmapd/device-discovery.c
index 2736ac89..49935c2e 100644
--- a/utils/blkmapd/device-discovery.c
+++ b/utils/blkmapd/device-discovery.c
@@ -462,7 +462,7 @@ static void sig_die(int signal)
unlink(PID_FILE);
}
BL_LOG_ERR("exit on signal(%d)\n", signal);
- exit(1);
+ exit(0);
}
static void usage(void)
{
--
2.33.0


2022-09-09 13:30:37

by Christoph Hellwig

[permalink] [raw]
Subject: Re: [PATCH] nfs-blkmapd: Fix the error status when nfs-blkmapd stops

On Thu, Sep 01, 2022 at 09:44:08PM +0800, zhanchengbin wrote:
> The systemctl stop nfs-blkmap.service will sends the SIGTERM signal
> to the nfs-blkmap.service first.If the process fails to be stopped,
> it sends the SIGKILL signal again to kill the process.
> However, exit(1) is executed in the SIGTERM processing function of
> nfs-blkmap.service. As a result, systemd receives an error message
> indicating that nfs-blkmap.service failed.
> "Active: failed" is displayed when the systemctl status
> nfs-blkmap.service command is executed.

Looks good:

Reviewed-by: Christoph Hellwig <[email protected]>

2022-09-13 18:26:29

by Steve Dickson

[permalink] [raw]
Subject: Re: [PATCH] nfs-blkmapd: Fix the error status when nfs-blkmapd stops



On 9/1/22 9:44 AM, zhanchengbin wrote:
> The systemctl stop nfs-blkmap.service will sends the SIGTERM signal
> to the nfs-blkmap.service first.If the process fails to be stopped,
> it sends the SIGKILL signal again to kill the process.
> However, exit(1) is executed in the SIGTERM processing function of
> nfs-blkmap.service. As a result, systemd receives an error message
> indicating that nfs-blkmap.service failed.
> "Active: failed" is displayed when the systemctl status
> nfs-blkmap.service command is executed.
>
> Signed-off-by: zhanchengbin <[email protected]>
Committed... (tag: nfs-utils-2-6-3-rc1)

steved.
> ---
>  utils/blkmapd/device-discovery.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/utils/blkmapd/device-discovery.c
> b/utils/blkmapd/device-discovery.c
> index 2736ac89..49935c2e 100644
> --- a/utils/blkmapd/device-discovery.c
> +++ b/utils/blkmapd/device-discovery.c
> @@ -462,7 +462,7 @@ static void sig_die(int signal)
>          unlink(PID_FILE);
>      }
>      BL_LOG_ERR("exit on signal(%d)\n", signal);
> -    exit(1);
> +    exit(0);
>  }
>  static void usage(void)
>  {