Re: New Defects reported by Coverity Scan for gluster/glusterfs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




New defects are related to the recently merged bitrot & tiering features. Can somebody help clean these up?

Thanks,
Vijay


On 04/09/2015 03:49 PM, scan-admin@xxxxxxxxxxxx wrote:

Hi,

Please find the latest report on new defect(s) introduced to gluster/glusterfs found with Coverity Scan.

5 new defect(s) introduced to gluster/glusterfs found with Coverity Scan.
33 defect(s), reported by Coverity Scan earlier, were marked fixed in the recent build analyzed by Coverity Scan.

New defect(s) Reported-by: Coverity Scan
Showing 5 of 5 defect(s)


** CID 1293504:    (CHECKED_RETURN)
/xlators/mgmt/glusterd/src/glusterd-volgen.c: 3333 in volume_volgen_graph_build_clusters_tier()
/xlators/mgmt/glusterd/src/glusterd-volgen.c: 3334 in volume_volgen_graph_build_clusters_tier()


________________________________________________________________________________________________________
*** CID 1293504:    (CHECKED_RETURN)
/xlators/mgmt/glusterd/src/glusterd-volgen.c: 3333 in volume_volgen_graph_build_clusters_tier()
3327             hxl = first_of(graph);
3328
3329             volinfo->type           = GF_CLUSTER_TYPE_TIER;
3330             xl = volgen_graph_add_nolink (graph, "cluster/tier", "%s",
3331                                           "tier-dht", 0);
3332             gf_asprintf(&rule, "%s-hot-dht", st_volname);
     CID 1293504:    (CHECKED_RETURN)
     Calling "xlator_set_option" without checking return value (as is done elsewhere 75 out of 81 times).
3333             xlator_set_option(xl, "rule", rule);
3334             xlator_set_option(xl, "xattr-name", "trusted.tier-gfid");
3335
3336             ret = volgen_xlator_link (xl, cxl);
3337             ret = volgen_xlator_link (xl, hxl);
3338
/xlators/mgmt/glusterd/src/glusterd-volgen.c: 3334 in volume_volgen_graph_build_clusters_tier()
3328
3329             volinfo->type           = GF_CLUSTER_TYPE_TIER;
3330             xl = volgen_graph_add_nolink (graph, "cluster/tier", "%s",
3331                                           "tier-dht", 0);
3332             gf_asprintf(&rule, "%s-hot-dht", st_volname);
3333             xlator_set_option(xl, "rule", rule);
     CID 1293504:    (CHECKED_RETURN)
     Calling "xlator_set_option" without checking return value (as is done elsewhere 75 out of 81 times).
3334             xlator_set_option(xl, "xattr-name", "trusted.tier-gfid");
3335
3336             ret = volgen_xlator_link (xl, cxl);
3337             ret = volgen_xlator_link (xl, hxl);
3338
3339             st_type = GF_CLUSTER_TYPE_TIER;

** CID 1293503:  Null pointer dereferences  (FORWARD_NULL)
/xlators/storage/posix/src/posix.c: 4137 in posix_fgetxattr()


________________________________________________________________________________________________________
*** CID 1293503:  Null pointer dereferences  (FORWARD_NULL)
/xlators/storage/posix/src/posix.c: 4137 in posix_fgetxattr()
4131                             gf_log (this->name, GF_LOG_WARNING,
4132                                     "Failed to set dictionary value for %s",
4133                                     name);
4134                     goto done;
4135             }
4136
     CID 1293503:  Null pointer dereferences  (FORWARD_NULL)
     Passing null pointer "name" to "strncmp", which dereferences it.
4137             if (strncmp (name, GLUSTERFS_GET_OBJECT_SIGNATURE,
4138                           strlen (GLUSTERFS_GET_OBJECT_SIGNATURE)) == 0) {
4139                     op_ret = posix_fdget_objectsignature (_fd, dict);
4140                     if (op_ret < 0) {
4141                             op_errno = -op_ret;
4142                             op_ret = -1;

** CID 1293502:  Null pointer dereferences  (NULL_RETURNS)
/xlators/mgmt/glusterd/src/glusterd-volgen.c: 3330 in volume_volgen_graph_build_clusters_tier()


________________________________________________________________________________________________________
*** CID 1293502:  Null pointer dereferences  (NULL_RETURNS)
/xlators/mgmt/glusterd/src/glusterd-volgen.c: 3330 in volume_volgen_graph_build_clusters_tier()
3324             if (ret == -1)
3325                     goto out;
3326
3327             hxl = first_of(graph);
3328
3329             volinfo->type           = GF_CLUSTER_TYPE_TIER;
     CID 1293502:  Null pointer dereferences  (NULL_RETURNS)
     Assigning: "xl" = null return value from "volgen_graph_add_nolink".
3330             xl = volgen_graph_add_nolink (graph, "cluster/tier", "%s",
3331                                           "tier-dht", 0);
3332             gf_asprintf(&rule, "%s-hot-dht", st_volname);
3333             xlator_set_option(xl, "rule", rule);
3334             xlator_set_option(xl, "xattr-name", "trusted.tier-gfid");
3335

** CID 1293501:  Null pointer dereferences  (REVERSE_INULL)
/xlators/storage/posix/src/posix.c: 4148 in posix_fgetxattr()


________________________________________________________________________________________________________
*** CID 1293501:  Null pointer dereferences  (REVERSE_INULL)
/xlators/storage/posix/src/posix.c: 4148 in posix_fgetxattr()
4142                             op_ret = -1;
4143                     }
4144
4145                     goto done;
4146             }
4147
     CID 1293501:  Null pointer dereferences  (REVERSE_INULL)
     Null-checking "name" suggests that it may be null, but it has already been dereferenced on all paths leading to the check.
4148             if (name) {
4149                     strcpy (key, name);
4150     #ifdef GF_DARWIN_HOST_OS
4151                     struct posix_private *priv       = NULL;
4152                     priv = this->private;
4153                     if (priv->xattr_user_namespace == XATTR_STRIP) {

** CID 1293500:  Code maintainability issues  (UNUSED_VALUE)
/xlators/mgmt/glusterd/src/glusterd-brick-ops.c: 469 in __glusterd_handle_add_brick()


________________________________________________________________________________________________________
*** CID 1293500:  Code maintainability issues  (UNUSED_VALUE)
/xlators/mgmt/glusterd/src/glusterd-brick-ops.c: 469 in __glusterd_handle_add_brick()
463                                       "Volume %s is already a tier.", volname);
464                             gf_log (this->name, GF_LOG_ERROR, "%s", err_str);
465                             ret = -1;
466                             goto out;
467                     }
468
     CID 1293500:  Code maintainability issues  (UNUSED_VALUE)
     Assigning value from "dict_get_int32(dict, "type", &type)" to "ret" here, but that stored value is overwritten before it can be used.
469                     ret = dict_get_int32 (dict, "type", &type);
470
471                     goto brick_val;
472             }
473
474             if (!stripe_count && !replica_count) {


________________________________________________________________________________________________________
To view the defects in Coverity Scan visit, https://scan.coverity.com/projects/987?tab=overview

To manage Coverity Scan email notifications for "gluster-devel@xxxxxxxxxxx", click https://scan.coverity.com/subscriptions/edit?email=gluster-devel%40gluster.org&token=7dffab14bc5a7180e75b0d047539f148 .

_______________________________________________
Gluster-devel mailing list
Gluster-devel@xxxxxxxxxxx
http://www.gluster.org/mailman/listinfo/gluster-devel



_______________________________________________
Gluster-devel mailing list
Gluster-devel@xxxxxxxxxxx
http://www.gluster.org/mailman/listinfo/gluster-devel




[Index of Archives]     [Gluster Users]     [Ceph Users]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux