From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id EA51DC433FE for ; Wed, 19 Jan 2022 19:50:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1357242AbiASTuK (ORCPT ); Wed, 19 Jan 2022 14:50:10 -0500 Received: from mxout01.lancloud.ru ([45.84.86.81]:43162 "EHLO mxout01.lancloud.ru" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1357176AbiASTuC (ORCPT ); Wed, 19 Jan 2022 14:50:02 -0500 Received: from LanCloud DKIM-Filter: OpenDKIM Filter v2.11.0 mxout01.lancloud.ru 18DDC20CE456 Received: from LanCloud Received: from LanCloud Received: from LanCloud Subject: Re: [PATCH 1/2] platform: make platform_get_irq_optional() optional To: Andy Shevchenko , =?UTF-8?Q?Uwe_Kleine-K=c3=b6nig?= CC: Andrew Lunn , Ulf Hansson , Vignesh Raghavendra , KVM list , "Rafael J. Wysocki" , , "Linus Walleij" , Amit Kucheria , "ALSA Development Mailing List" , Jaroslav Kysela , Guenter Roeck , Thierry Reding , MTD Maling List , Linux I2C , "open list:GPIO SUBSYSTEM" , Miquel Raynal , , , linux-spi , Jiri Slaby , Khuong Dinh , Florian Fainelli , Matthias Schiffer , Kamal Dasu , Lee Jones , Bartosz Golaszewski , Daniel Lezcano , "Kishon Vijay Abraham I" , Geert Uytterhoeven , "open list:SERIAL DRIVERS" , bcm-kernel-feedback-list , Zhang Rui , , Linux PWM List , Robert Richter , "Saravanan Sekar" , Corey Minyard , Linux PM list , Liam Girdwood , "Mauro Carvalho Chehab" , John Garry , Takashi Iwai , Peter Korsgaard , "William Breathitt Gray" , Mark Gross , Hans de Goede , Alex Williamson , Mark Brown , "Borislav Petkov" , Jakub Kicinski , Matthias Brugger , , "Benson Leung" , Pengutronix Kernel Team , Linux ARM , , Tony Luck , "Richard Weinberger" , Mun Yew Tham , "Eric Auger" , Greg Kroah-Hartman , Yoshihiro Shimoda , Cornelia Huck , "Linux MMC List" , Joakim Zhang , Linux Kernel Mailing List , Linux-Renesas , Vinod Koul , "James Morse" , Zha Qipeng , "Sebastian Reichel" , =?UTF-8?Q?Niklas_S=c3=b6derlund?= , , "Brian Norris" , "David S. Miller" References: <20220112085009.dbasceh3obfok5dc@pengutronix.de> <20220112213121.5ruae5mxwj6t3qiy@pengutronix.de> <29f0c65d-77f2-e5b2-f6cc-422add8a707d@omp.ru> <20220114092557.jrkfx7ihg26ekzci@pengutronix.de> <61b80939-357d-14f5-df99-b8d102a4e1a1@omp.ru> <20220114202226.ugzklxv4wzr6egwj@pengutronix.de> <57af1851-9341-985e-7b28-d2ba86770ecb@omp.ru> <20220117084732.cdy2sash5hxp4lwo@pengutronix.de> From: Sergey Shtylyov Organization: Open Mobile Platform Message-ID: Date: Wed, 19 Jan 2022 22:49:52 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.10.1 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset="utf-8" Content-Language: en-US Content-Transfer-Encoding: 7bit X-Originating-IP: [192.168.11.198] X-ClientProxiedBy: LFEXT02.lancloud.ru (fd00:f066::142) To LFEX1907.lancloud.ru (fd00:f066::207) Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org On 1/19/22 9:58 PM, Andy Shevchenko wrote: [...] >> Because with your change we have: >> >> - < 0 -> error >> - == 0 -> no irq >> - > 0 -> irq >> >> For my part I'd say this doesn't justify the change, but at least I >> could better life with the reasoning. If you start at: >> >> irq = platform_get_irq_optional(...) >> if (irq < 0 && irq != -ENXIO) >> return irq >> else if (irq > 0) >> setup_irq(irq); >> else >> setup_polling() >> >> I'd change that to >> >> irq = platform_get_irq_optional(...) >> if (irq > 0) /* or >= 0 ? */ >> setup_irq(irq) >> else if (irq == -ENXIO) >> setup_polling() >> else >> return irq >> >> This still has to mention -ENXIO, but this is ok and checking for 0 just >> hardcodes a different return value. > > It's what we are against of. The idea is to have > > irq = platform_get_irq_optional(...) > if (irq < 0) // we do not care about special cookies here > return irq; > > if (irq) > setup_irq(irq) > else > setup_polling() > > See the difference? Your code is convoluted. ... and it's longer when you look at the translated code! :-) [...] MBR, Sergey