net/rds: Use ERR_PTR for rds_message_alloc_sgs()
Returning the error code via a 'int *ret' when the function returns a pointer is very un-kernely and causes gcc 10's static analysis to choke: net/rds/message.c: In function ‘rds_message_map_pages’: net/rds/message.c:358:10: warning: ‘ret’ may be used uninitialized in this function [-Wmaybe-uninitialized] 358 | return ERR_PTR(ret); Use a typical ERR_PTR return instead. Signed-off-by: Jason Gunthorpe <jgg@mellanox.com> Acked-by: Santosh Shilimkar <santosh.shilimkar@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
87b0f983f6
commit
7dba92037b
@@ -665,9 +665,11 @@ int rds_cmsg_rdma_args(struct rds_sock *rs, struct rds_message *rm,
|
||||
op->op_odp_mr = NULL;
|
||||
|
||||
WARN_ON(!nr_pages);
|
||||
op->op_sg = rds_message_alloc_sgs(rm, nr_pages, &ret);
|
||||
if (!op->op_sg)
|
||||
op->op_sg = rds_message_alloc_sgs(rm, nr_pages);
|
||||
if (IS_ERR(op->op_sg)) {
|
||||
ret = PTR_ERR(op->op_sg);
|
||||
goto out_pages;
|
||||
}
|
||||
|
||||
if (op->op_notify || op->op_recverr) {
|
||||
/* We allocate an uninitialized notifier here, because
|
||||
@@ -906,9 +908,11 @@ int rds_cmsg_atomic(struct rds_sock *rs, struct rds_message *rm,
|
||||
rm->atomic.op_silent = !!(args->flags & RDS_RDMA_SILENT);
|
||||
rm->atomic.op_active = 1;
|
||||
rm->atomic.op_recverr = rs->rs_recverr;
|
||||
rm->atomic.op_sg = rds_message_alloc_sgs(rm, 1, &ret);
|
||||
if (!rm->atomic.op_sg)
|
||||
rm->atomic.op_sg = rds_message_alloc_sgs(rm, 1);
|
||||
if (IS_ERR(rm->atomic.op_sg)) {
|
||||
ret = PTR_ERR(rm->atomic.op_sg);
|
||||
goto err;
|
||||
}
|
||||
|
||||
/* verify 8 byte-aligned */
|
||||
if (args->local_addr & 0x7) {
|
||||
|
Reference in New Issue
Block a user