diff mbox

[trivial] FSP/CONSOLE: Fix possible NULL dereference

Message ID 20170614060856.27717-1-hegdevasant@linux.vnet.ibm.com
State Accepted
Headers show

Commit Message

Vasant Hegde June 14, 2017, 6:08 a.m. UTC
Fix coverity warning message.

Null pointer dereferences  (NULL_RETURNS)
/hw/fsp/fsp-console.c: 295 in fsp_open_vserial()
289
290             fs->open = true;
291
292             fs->poke_msg = fsp_mkmsg(FSP_CMD_VSERIAL_OUT, 2,
293                                      msg->data.words[0],
294                                      msg->data.words[1] & 0xffff);
>>>     CID 145796:  Null pointer dereferences  (NULL_RETURNS)
>>>     Dereferencing a null pointer "fs->poke_msg".
295             fs->poke_msg->user_data = fs;
296
297             fs->in_buf->partition_id = fs->out_buf->partition_id = part_id;
298             fs->in_buf->session_id   = fs->out_buf->session_id   = sess_id;
299             fs->in_buf->hmc_id       = fs->out_buf->hmc_id       = hmc_indx;
300             fs->in_buf->data_offset  = fs->out_buf->data_offset  =

Signed-off-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>
---
 hw/fsp/fsp-console.c | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

Comments

Stewart Smith June 19, 2017, 6:51 a.m. UTC | #1
Vasant Hegde <hegdevasant@linux.vnet.ibm.com> writes:
> Fix coverity warning message.
>
> Null pointer dereferences  (NULL_RETURNS)
> /hw/fsp/fsp-console.c: 295 in fsp_open_vserial()
> 289
> 290             fs->open = true;
> 291
> 292             fs->poke_msg = fsp_mkmsg(FSP_CMD_VSERIAL_OUT, 2,
> 293                                      msg->data.words[0],
> 294                                      msg->data.words[1] & 0xffff);
>>>>     CID 145796:  Null pointer dereferences  (NULL_RETURNS)
>>>>     Dereferencing a null pointer "fs->poke_msg".
> 295             fs->poke_msg->user_data = fs;
> 296
> 297             fs->in_buf->partition_id = fs->out_buf->partition_id = part_id;
> 298             fs->in_buf->session_id   = fs->out_buf->session_id   = sess_id;
> 299             fs->in_buf->hmc_id       = fs->out_buf->hmc_id       = hmc_indx;
> 300             fs->in_buf->data_offset  = fs->out_buf->data_offset  =
>
> Signed-off-by: Vasant Hegde <hegdevasant@linux.vnet.ibm.com>

Cheers, merged to master as of 5e55f0b5e0791eae54da39dfeff38f57a3dcbfa4
diff mbox

Patch

diff --git a/hw/fsp/fsp-console.c b/hw/fsp/fsp-console.c
index 2ba879b..a855133 100644
--- a/hw/fsp/fsp-console.c
+++ b/hw/fsp/fsp-console.c
@@ -291,11 +291,16 @@  static void fsp_open_vserial(struct fsp_msg *msg)
 		goto already_open;
 	}
 
-	fs->open = true;
-
 	fs->poke_msg = fsp_mkmsg(FSP_CMD_VSERIAL_OUT, 2,
 				 msg->data.words[0],
 				 msg->data.words[1] & 0xffff);
+	if (fs->poke_msg == NULL) {
+		prerror("FSPCON: Failed to allocate poke_msg\n");
+		unlock(&fsp_con_lock);
+		return;
+	}
+
+	fs->open = true;
 	fs->poke_msg->user_data = fs;
 
 	fs->in_buf->partition_id = fs->out_buf->partition_id = part_id;