From patchwork Thu Aug 1 12:10:46 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sebastian Hesselbarth X-Patchwork-Id: 263983 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 4A87F2C009E for ; Thu, 1 Aug 2013 22:10:59 +1000 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754561Ab3HAMK5 (ORCPT ); Thu, 1 Aug 2013 08:10:57 -0400 Received: from mail-bk0-f43.google.com ([209.85.214.43]:35715 "EHLO mail-bk0-f43.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754250Ab3HAMK4 (ORCPT ); Thu, 1 Aug 2013 08:10:56 -0400 Received: by mail-bk0-f43.google.com with SMTP id jm2so642981bkc.16 for ; Thu, 01 Aug 2013 05:10:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer; bh=KveAp6sz72vzYN3j64pe04/pTxCJ90IWa5fIefSdUlM=; b=pmgYu6xp88BN3wfJMuRcSnLkPome37FPGRx2d4Twwi0XDl+85Nr8QjhgBKsvF6uuO4 Cq+DOOPbP/llWi6OKZyMve3J+kPFTZLBeq+9ExudRxb0swnKwJ8LL8HLfdHZSNozBxb7 guWMonvRlG/0od7TOcBSdjoBYnCAjPu7L2dQpDa67OjHAJAqT3302rnubm8B2aoYeSHS qKb3FnfsmHQcCaoTiERMgSG6bl41ZVCpxVOcBjNuWKNMCozh4rkJtLihmZgBw/PhSwrX j2Ht0B4nBN9Ef2ekp/UULTCjZ7XjyXIYq8hPVNf6MQTLRQqcQr8NLss8aAkk+qviRQCu OD3Q== X-Received: by 10.204.224.142 with SMTP id io14mr344092bkb.27.1375359055535; Thu, 01 Aug 2013 05:10:55 -0700 (PDT) Received: from topkick.lan (dslc-082-083-214-189.pools.arcor-ip.net. [82.83.214.189]) by mx.google.com with ESMTPSA id d8sm618698bkj.6.2013.08.01.05.10.54 for (version=TLSv1.2 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 01 Aug 2013 05:10:54 -0700 (PDT) Received: from edge.wm.mst.uni-hannover.de (firewall.mst.uni-hannover.de [130.75.30.51]) by topkick.lan (Postfix) with ESMTPSA id 8E0AF60509; Thu, 1 Aug 2013 14:08:39 +0200 (CEST) From: Sebastian Hesselbarth To: Sebastian Hesselbarth Cc: Wolfram Sang , linux-i2c@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH] i2c: add sanity check to i2c_put_adapter Date: Thu, 1 Aug 2013 14:10:46 +0200 Message-Id: <1375359046-17472-1-git-send-email-sebastian.hesselbarth@gmail.com> X-Mailer: git-send-email 1.7.10.4 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org i2c_put_adapter dereferences i2c_adapter pointer passed without check for NULL. This adds a check for non-NULL pointer to allow i2c_put_adapter called with NULL and behave the same way i2c_release_client does already. Signed-off-by: Sebastian Hesselbarth --- Cc: Wolfram Sang Cc: linux-i2c@vger.kernel.org Cc: linux-kernel@vger.kernel.org --- drivers/i2c/i2c-core.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/i2c/i2c-core.c b/drivers/i2c/i2c-core.c index f32ca29..d075df6 100644 --- a/drivers/i2c/i2c-core.c +++ b/drivers/i2c/i2c-core.c @@ -1825,7 +1825,8 @@ EXPORT_SYMBOL(i2c_get_adapter); void i2c_put_adapter(struct i2c_adapter *adap) { - module_put(adap->owner); + if (adap) + module_put(adap->owner); } EXPORT_SYMBOL(i2c_put_adapter);