From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755406AbbHDHri (ORCPT ); Tue, 4 Aug 2015 03:47:38 -0400 Received: from userp1040.oracle.com ([156.151.31.81]:21138 "EHLO userp1040.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753212AbbHDHrh (ORCPT ); Tue, 4 Aug 2015 03:47:37 -0400 Date: Tue, 4 Aug 2015 10:47:23 +0300 From: Dan Carpenter To: MyungJoo Ham , Roger Quadros Cc: Chanwoo Choi , linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org Subject: [patch] extcon: signedness bugs break error handling Message-ID: <20150804074723.GC10867@mwanda> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.23 (2014-03-12) X-Source-IP: userv0021.oracle.com [156.151.31.71] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Unsigned is never less than zero so this error handling won't work. Fixes: be052cc87745 ('extcon: Fix hang and extcon_get/set_cable_state().') Signed-off-by: Dan Carpenter diff --git a/drivers/extcon/extcon.c b/drivers/extcon/extcon.c index 8301a72..da2fb6c 100644 --- a/drivers/extcon/extcon.c +++ b/drivers/extcon/extcon.c @@ -143,7 +143,7 @@ static int find_cable_id_by_name(struct extcon_dev *edev, const char *name) static int find_cable_index_by_name(struct extcon_dev *edev, const char *name) { - unsigned int id; + int id; if (edev->max_supported == 0) return -EINVAL; @@ -379,7 +379,7 @@ EXPORT_SYMBOL_GPL(extcon_get_cable_state_); */ int extcon_get_cable_state(struct extcon_dev *edev, const char *cable_name) { - unsigned int id; + int id; id = find_cable_id_by_name(edev, cable_name); if (id < 0) @@ -430,7 +430,7 @@ EXPORT_SYMBOL_GPL(extcon_set_cable_state_); int extcon_set_cable_state(struct extcon_dev *edev, const char *cable_name, bool cable_state) { - unsigned int id; + int id; id = find_cable_id_by_name(edev, cable_name); if (id < 0)