Fix warning reported by Clang static code analyzer:
CC tools/virtiofsd/passthrough_ll.o
tools/virtiofsd/passthrough_ll.c:925:9: warning: Value stored to 'newfd' is never read
newfd = -1;
^ ~~
tools/virtiofsd/passthrough_ll.c:942:9: warning: Value stored to 'newfd' is never read
newfd = -1;
^ ~~
Fixes: 7c6b66027
Reported-by: Clang Static Analyzer
Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
---
tools/virtiofsd/passthrough_ll.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/tools/virtiofsd/passthrough_ll.c b/tools/virtiofsd/passthrough_ll.c
index e9e71d5fc2..b38e0e4d84 100644
--- a/tools/virtiofsd/passthrough_ll.c
+++ b/tools/virtiofsd/passthrough_ll.c
@@ -922,7 +922,6 @@ static int lo_do_lookup(fuse_req_t req, fuse_ino_t parent, const char *name,
inode = lo_find(lo, &e->attr);
if (inode) {
close(newfd);
- newfd = -1;
} else {
inode = calloc(1, sizeof(struct lo_inode));
if (!inode) {
@@ -938,8 +937,7 @@ static int lo_do_lookup(fuse_req_t req, fuse_ino_t parent, const char *name,
g_atomic_int_set(&inode->refcount, 2);
inode->nlookup = 1;
- inode->fd = newfd;
- newfd = -1;
+ inode->fd = -1;
inode->key.ino = e->attr.st_ino;
inode->key.dev = e->attr.st_dev;
pthread_mutex_init(&inode->plock_mutex, NULL);
--
2.21.1
On Sat, Feb 15, 2020 at 05:07:15PM +0100, Philippe Mathieu-Daudé wrote:
>Fix warning reported by Clang static code analyzer:
>
> CC tools/virtiofsd/passthrough_ll.o
> tools/virtiofsd/passthrough_ll.c:925:9: warning: Value stored to 'newfd' is never read
> newfd = -1;
> ^ ~~
> tools/virtiofsd/passthrough_ll.c:942:9: warning: Value stored to 'newfd' is never read
> newfd = -1;
> ^ ~~
>
>Fixes: 7c6b66027
>Reported-by: Clang Static Analyzer
>Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>---
> tools/virtiofsd/passthrough_ll.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
>diff --git a/tools/virtiofsd/passthrough_ll.c b/tools/virtiofsd/passthrough_ll.c
>index e9e71d5fc2..b38e0e4d84 100644
>--- a/tools/virtiofsd/passthrough_ll.c
>+++ b/tools/virtiofsd/passthrough_ll.c
>@@ -922,7 +922,6 @@ static int lo_do_lookup(fuse_req_t req, fuse_ino_t parent, const char *name,
> inode = lo_find(lo, &e->attr);
> if (inode) {
> close(newfd);
>- newfd = -1;
> } else {
> inode = calloc(1, sizeof(struct lo_inode));
> if (!inode) {
>@@ -938,8 +937,7 @@ static int lo_do_lookup(fuse_req_t req, fuse_ino_t parent, const char *name,
> g_atomic_int_set(&inode->refcount, 2);
>
> inode->nlookup = 1;
>- inode->fd = newfd;
>- newfd = -1;
>+ inode->fd = -1;
The functional equivalent is:
inode->fd = newfd;
newfd cannot contain -1 here, as checked a few lines above:
newfd = openat(dir->fd, name, O_PATH | O_NOFOLLOW);
if (newfd == -1) {
goto out_err;
}
Jano
> inode->key.ino = e->attr.st_ino;
> inode->key.dev = e->attr.st_dev;
> pthread_mutex_init(&inode->plock_mutex, NULL);
>--
>2.21.1
>
>
On 2/16/20 10:23 PM, Ján Tomko wrote:
> On Sat, Feb 15, 2020 at 05:07:15PM +0100, Philippe Mathieu-Daudé wrote:
>> Fix warning reported by Clang static code analyzer:
>>
>> CC tools/virtiofsd/passthrough_ll.o
>> tools/virtiofsd/passthrough_ll.c:925:9: warning: Value stored to
>> 'newfd' is never read
>> newfd = -1;
>> ^ ~~
>> tools/virtiofsd/passthrough_ll.c:942:9: warning: Value stored to
>> 'newfd' is never read
>> newfd = -1;
>> ^ ~~
>>
>> Fixes: 7c6b66027
>> Reported-by: Clang Static Analyzer
>> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
>> ---
>> tools/virtiofsd/passthrough_ll.c | 4 +---
>> 1 file changed, 1 insertion(+), 3 deletions(-)
>>
>> diff --git a/tools/virtiofsd/passthrough_ll.c
>> b/tools/virtiofsd/passthrough_ll.c
>> index e9e71d5fc2..b38e0e4d84 100644
>> --- a/tools/virtiofsd/passthrough_ll.c
>> +++ b/tools/virtiofsd/passthrough_ll.c
>> @@ -922,7 +922,6 @@ static int lo_do_lookup(fuse_req_t req, fuse_ino_t
>> parent, const char *name,
>> inode = lo_find(lo, &e->attr);
>> if (inode) {
>> close(newfd);
>> - newfd = -1;
>> } else {
>> inode = calloc(1, sizeof(struct lo_inode));
>> if (!inode) {
>> @@ -938,8 +937,7 @@ static int lo_do_lookup(fuse_req_t req, fuse_ino_t
>> parent, const char *name,
>> g_atomic_int_set(&inode->refcount, 2);
>>
>> inode->nlookup = 1;
>> - inode->fd = newfd;
>> - newfd = -1;
>> + inode->fd = -1;
>
> The functional equivalent is:
> inode->fd = newfd;
>
> newfd cannot contain -1 here, as checked a few lines above:
> newfd = openat(dir->fd, name, O_PATH | O_NOFOLLOW);
> if (newfd == -1) {
> goto out_err;
> }
Correct. I'll respin, thanks for the review!
> Jano
>
>> inode->key.ino = e->attr.st_ino;
>> inode->key.dev = e->attr.st_dev;
>> pthread_mutex_init(&inode->plock_mutex, NULL);
>> --
>> 2.21.1
>>
>>
© 2016 - 2025 Red Hat, Inc.