From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.8]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EE4581332AF; Tue, 6 Feb 2024 12:24:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=192.198.163.8 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707222296; cv=none; b=s5B5hMHVG8fg8/AmhHR7ykWb+PqGIZUbE5jF3sRxbesLGhxKfVTmd0xIszrHuRV8LSelbePbME/uKr2Ca15illzU6VqxcAew+PsWcSBYDWmWXJGZz5P+G1l4A5b077WwG2JPN5dWKU5mmewnfLivbBC7hs1q57RlXuKxxdpVtwg= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707222296; c=relaxed/simple; bh=GYryW2hlQXGZNG8ZlqTk+2PvO/iRzvsrEKGkjXiEGQ4=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=ZV0duEqrvxtA6FfingNWSv5drHr5uh/a57BbU1vb9XE58OQP+eZKhROlR2cu7mjE/JAkvdz+IxK6/6whDbgN0iJ6NnIb4tThYY3KEnAijG0pVVisJXscAyb5tzPf4CdJPHF4kye63pqpv66n2NkY1aCxyK+80wrF3p+72KQA9zY= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com; spf=none smtp.mailfrom=linux.intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=O8y7zg8E; arc=none smtp.client-ip=192.198.163.8 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=linux.intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="O8y7zg8E" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1707222295; x=1738758295; h=date:from:to:cc:subject:message-id:references: mime-version:content-transfer-encoding:in-reply-to; bh=GYryW2hlQXGZNG8ZlqTk+2PvO/iRzvsrEKGkjXiEGQ4=; b=O8y7zg8EoKIfA4FTcDFF73BDnAbq5qRFf9Qv2r9pcM7Oxo1TluGNamfE 1sQQjyaOReTVwPRCa9C6l0I74bGfcYMIPyuXiid4byf1aHS3BtS4jOhoy OW0L1uYM+kq5sfsOiWsJfrDrHrEec0ShunG7C7WLwmExIeN8W7AP1KCca ybRl2RQMy/ZE5k0gCG/Gw256HX3LfVRxKYi2saZDvfCUuqmq5dDRuOcKn NOv3+6tm4G5dhiJoTH8mdZXheHbjfHMXpkEiOpNXI1AeZX43XCrUi8WEo kKVDLOk/X5k5duY/bO58sQraDAxPFZV5kcVSl/tBNlCCqzD04/IcH/+C6 Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10975"; a="18252890" X-IronPort-AV: E=Sophos;i="6.05,247,1701158400"; d="scan'208";a="18252890" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmvoesa102.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Feb 2024 04:24:54 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10975"; a="909625473" X-IronPort-AV: E=Sophos;i="6.05,247,1701158400"; d="scan'208";a="909625473" Received: from smile.fi.intel.com ([10.237.72.54]) by fmsmga002.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Feb 2024 04:24:51 -0800 Received: from andy by smile.fi.intel.com with local (Exim 4.97) (envelope-from ) id 1rXKVM-00000002Ksu-3aNS; Tue, 06 Feb 2024 14:24:48 +0200 Date: Tue, 6 Feb 2024 14:24:48 +0200 From: Andy Shevchenko To: Bartosz Golaszewski Cc: Linus Walleij , Kent Gibson , Alex Elder , Geert Uytterhoeven , "Paul E . McKenney" , Wolfram Sang , linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, Bartosz Golaszewski Subject: Re: [PATCH v2 21/23] gpio: protect the pointer to gpio_chip in gpio_device with SRCU Message-ID: References: <20240205093418.39755-1-brgl@bgdev.pl> <20240205093418.39755-22-brgl@bgdev.pl> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: Organization: Intel Finland Oy - BIC 0357606-4 - Westendinkatu 7, 02160 Espoo On Mon, Feb 05, 2024 at 08:36:39PM +0100, Bartosz Golaszewski wrote: > On Mon, Feb 5, 2024 at 1:31 PM Andy Shevchenko > wrote: ... > > > > > int gpiod_get_direction(struct gpio_desc *desc) > > > { > > > - struct gpio_chip *gc; > > > unsigned long flags; > > > unsigned int offset; > > > int ret; > > > > > > - gc = gpiod_to_chip(desc); > > > + if (!desc) > > > + /* Sane default is INPUT. */ > > > + return 1; > > > > Hmm... I can't imagine how this value may anyhow be used / useful. > > What else would you return for an optional (NULL) GPIO? An error. If somebody asks for direction of the non-existing GPIO, there is no (valid) answer for that. -- With Best Regards, Andy Shevchenko