Whamcloud - gitweb
LU-1889 build: fix false 'uninitialized scalar variable' errs
authorSebastien Buisson <sebastien.buisson@bull.net>
Tue, 11 Sep 2012 14:43:33 +0000 (16:43 +0200)
committerOleg Drokin <green@whamcloud.com>
Mon, 29 Oct 2012 06:04:04 +0000 (02:04 -0400)
Fix false 'uninitialized scalar variable' errors found by Coverity
version 6.0.3:
Uninitialized scalar variable (UNINIT)
Using uninitialized value, element or field when calling function.

Signed-off-by: Sebastien Buisson <sebastien.buisson@bull.net>
Change-Id: I83a7dd3ae4a027bf0ebced572245bc4fff35e119
Reviewed-on: http://review.whamcloud.com/3939
Tested-by: Hudson
Reviewed-by: Bob Glossman <bob.glossman@intel.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/ptlrpc/client.c
lustre/utils/liblustreapi.c
lustre/utils/obd.c

index 45899c8..f8561b9 100644 (file)
@@ -76,6 +76,9 @@ struct ptlrpc_connection *ptlrpc_uuid_to_connection(struct obd_uuid *uuid)
         lnet_process_id_t         peer;
         int                       err;
 
         lnet_process_id_t         peer;
         int                       err;
 
+       /* ptlrpc_uuid_to_peer() initializes its 2nd parameter
+        * before accessing its values. */
+       /* coverity[uninit_use_in_call] */
         err = ptlrpc_uuid_to_peer(uuid, &peer, &self);
         if (err != 0) {
                 CNETERR("cannot find peer %s!\n", uuid->uuid);
         err = ptlrpc_uuid_to_peer(uuid, &peer, &self);
         if (err != 0) {
                 CNETERR("cannot find peer %s!\n", uuid->uuid);
index ab42640..8d8143e 100644 (file)
@@ -2690,9 +2690,15 @@ static int cb_get_mdt_index(char *path, DIR *parent, DIR *d, void *data,
                 return ret;
         }
 
                 return ret;
         }
 
+       /* The 'LASSERT(parent != NULL || d != NULL);' guarantees
+        * that either 'd' or 'parent' is not null.
+        * So in all cases llapi_file_fget_mdtidx() is called,
+        * thus initializing 'mdtidx'. */
         if (param->quiet || !(param->verbose & VERBOSE_DETAIL))
         if (param->quiet || !(param->verbose & VERBOSE_DETAIL))
+               /* coverity[uninit_use_in_call] */
                 llapi_printf(LLAPI_MSG_NORMAL, "%d\n", mdtidx);
         else
                 llapi_printf(LLAPI_MSG_NORMAL, "%d\n", mdtidx);
         else
+               /* coverity[uninit_use_in_call] */
                 llapi_printf(LLAPI_MSG_NORMAL, "%s\nmdt_index:\t%d\n",
                              path, mdtidx);
 
                 llapi_printf(LLAPI_MSG_NORMAL, "%s\nmdt_index:\t%d\n",
                              path, mdtidx);
 
@@ -2858,6 +2864,8 @@ int llapi_ping(char *obd_type, char *obd_name)
                 return rc;
         }
 
                 return rc;
         }
 
+       /* The purpose is to send a byte as a ping, whatever this byte is. */
+       /* coverity[uninit_use_in_call] */
         rc = write(fd, buf, 1);
         if (rc < 0)
                 rc = -errno;
         rc = write(fd, buf, 1);
         if (rc < 0)
                 rc = -errno;
index 7ddbf8a..ad3ec68 100644 (file)
@@ -3002,9 +3002,11 @@ void obd_finalize(int argc, char **argv)
 {
         struct sigaction sigact;
 
 {
         struct sigaction sigact;
 
+       /* sigact initialization */
         sigact.sa_handler = signal_server;
         sigfillset(&sigact.sa_mask);
         sigact.sa_flags = SA_RESTART;
         sigact.sa_handler = signal_server;
         sigfillset(&sigact.sa_mask);
         sigact.sa_flags = SA_RESTART;
+       /* coverity[uninit_use_in_call] */
         sigaction(SIGINT, &sigact, NULL);
 
         shmem_cleanup();
         sigaction(SIGINT, &sigact, NULL);
 
         shmem_cleanup();