From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1759814AbbFBSHa (ORCPT ); Tue, 2 Jun 2015 14:07:30 -0400 Received: from youngberry.canonical.com ([91.189.89.112]:53549 "EHLO youngberry.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754382AbbFBSHX (ORCPT ); Tue, 2 Jun 2015 14:07:23 -0400 From: Colin King To: Greg Kroah-Hartman , Felipe Balbi , Laurent Pinchart , Sudeep Holla , Valentin Rothberg , linux-usb@vger.kernel.org Cc: linux-kernel@vger.kernel.org Subject: [PATCH][V3] usb: isp1760: check for null return from kzalloc Date: Tue, 2 Jun 2015 19:05:13 +0100 Message-Id: <1433268313-23423-1-git-send-email-colin.king@canonical.com> X-Mailer: git-send-email 2.1.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Colin Ian King isp1760_ep_alloc_request allocates a structure with kzalloc without checking for NULL and then returns a pointer to one of the structure fields. As the field happens to be the first in the structure the caller can properly check for NULL, but this is risky if the structure layout is changed later. Add an explicit NULL check for the kzalloc return value Detected with smatch static analysis: drivers/usb/isp1760/isp1760-udc.c:816 isp1760_ep_alloc_request() error: potential null dereference 'req'. (kzalloc returns null) [ thanks to Laurent Pinchart for improved commit message ] Signed-off-by: Colin Ian King --- drivers/usb/isp1760/isp1760-udc.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/usb/isp1760/isp1760-udc.c b/drivers/usb/isp1760/isp1760-udc.c index 3fc4fe7..18ebf5b 100644 --- a/drivers/usb/isp1760/isp1760-udc.c +++ b/drivers/usb/isp1760/isp1760-udc.c @@ -812,6 +812,8 @@ static struct usb_request *isp1760_ep_alloc_request(struct usb_ep *ep, struct isp1760_request *req; req = kzalloc(sizeof(*req), gfp_flags); + if (!req) + return NULL; return &req->req; } -- 2.1.4