diff mbox series

[2/3] tools/virtiofsd/passthrough_ll: Remove unneeded variable assignment

Message ID 20200215160716.1262-3-philmd@redhat.com (mailing list archive)
State New, archived
Headers show
Series tools/virtiofsd: Fix warning reported by Clang static code analyzer | expand

Commit Message

Philippe Mathieu-Daudé Feb. 15, 2020, 4:07 p.m. UTC
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(-)

Comments

Ján Tomko Feb. 16, 2020, 9:23 p.m. UTC | #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
>
>
Philippe Mathieu-Daudé Feb. 17, 2020, 9:36 a.m. UTC | #2
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
>>
>>
diff mbox series

Patch

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);