[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] virtiofsd: Fix check of chown()'s return value
From: |
Eric Blake |
Subject: |
Re: [PATCH] virtiofsd: Fix check of chown()'s return value |
Date: |
Fri, 7 May 2021 11:19:07 -0500 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.10.1 |
On 5/7/21 11:12 AM, Greg Kurz wrote:
> Otherwise you always get this warning when using --socket-group=users
>
> vhost socket failed to set group to users (100)
>
> While here, print out the error if chown() fails.
>
> Signed-off-by: Greg Kurz <groug@kaod.org>
> ---
> tools/virtiofsd/fuse_virtio.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/tools/virtiofsd/fuse_virtio.c b/tools/virtiofsd/fuse_virtio.c
> index 3e13997406bf..638d3ffe2f8a 100644
> --- a/tools/virtiofsd/fuse_virtio.c
> +++ b/tools/virtiofsd/fuse_virtio.c
> @@ -978,9 +978,9 @@ static int fv_create_listen_socket(struct fuse_session
> *se)
> if (se->vu_socket_group) {
> struct group *g = getgrnam(se->vu_socket_group);
> if (g) {
> - if (!chown(se->vu_socket_path, -1, g->gr_gid)) {
> + if (chown(se->vu_socket_path, -1, g->gr_gid) == -1) {
> fuse_log(FUSE_LOG_WARNING,
> - "vhost socket failed to set group to %s (%d)\n",
> + "vhost socket failed to set group to %s (%d): %m\n",
Is %m portable? POSIX requires it for syslog, but not for printf (where
glibc has it as an extension), but I'm not sure what fuse_log supports.
Best might be a manual %s/strerror(errno)
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3226
Virtualization: qemu.org | libvirt.org