Received: by 2002:a05:6358:51dd:b0:131:369:b2a3 with SMTP id 29csp1016692rwl; Thu, 10 Aug 2023 05:23:06 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFWGczZQ1CJxXZEv8QE3OnMmlW5jPKjBFvYx8+A5HDXO8/QhKnqOIjC1acXNrCvaDdUGrzT X-Received: by 2002:a05:6a00:1a55:b0:686:baf2:35f4 with SMTP id h21-20020a056a001a5500b00686baf235f4mr2319275pfv.29.1691670185917; Thu, 10 Aug 2023 05:23:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1691670185; cv=none; d=google.com; s=arc-20160816; b=yHd2/EQWXQgi/uuKVGr2uGw6SpUa73VVA5b2ljxPfDGB2pMhSvDPEM3OsB5SGm0i2h lmSKp+0s4W+jsFgk5cz09W6g/+pYtdTrS17th5Avab+ydBOBG7YFqtEkgZABHgSKUyJb yjhw71makLbf2m/9TD6H0yEQjSrPqsLLuSdF5gMkwcl3Ddb52eYfRYldZ9oSokEDa6iW MXkJ02bWgTur5Q3DVpawS75+8xdfcLtZKuEV1lBu2+WYyWqJO57xqLOEN8bbCxFVtXCR RDbYa9gu0Mo36bU6zCHrB0CwLqzILX6YjtEi4Cxc2sJb5eS9Tt0SqI9mYWo46lM9ZItr M/7g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id; bh=zKcau2C93JUmNI9mF8kAi30TpW60+h4NlKNURBLmiI0=; fh=p+q3P1c7XFiAW9dvaiRDYtlAsirMhJB2db8mGOJxvIE=; b=dyOBwSKBLUZvlJtPc1Ll6PfNmclzWXABv0yVLpPjlsmsCyyTXHc558Z0fiFfzHRszH nO4RsvWdxvX3/XjOjHwkowlUven+XHZl1YpwF0C0JY1NQr/l+Nz1/yOgnxy/dRcmTE+a 0rs/sjOwVbXwIIqLrjSdX99/ZWaDUOZYjS+CFpk8VNeoNaogcDx+/t8g591GfD6qLj8/ +MO8THjE4DctGBIBjdt+em+pzqiArSO8mY8QrowR3ZdUla4NxM1/MS4+Go6ZUAfsO55r 6TSc417/iJiWn7976ToNh9fAacs/tAFxIY9bCWUnHHgy0ednPd9/lnFkR/YdeoxdknNp ojNQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id bw21-20020a056a00409500b00680098cc5f8si1439464pfb.84.2023.08.10.05.22.54; Thu, 10 Aug 2023 05:23:05 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232369AbjHJL4k (ORCPT + 99 others); Thu, 10 Aug 2023 07:56:40 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34178 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231640AbjHJL4j (ORCPT ); Thu, 10 Aug 2023 07:56:39 -0400 Received: from mail.loongson.cn (mail.loongson.cn [114.242.206.163]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 6724191; Thu, 10 Aug 2023 04:56:37 -0700 (PDT) Received: from loongson.cn (unknown [10.20.42.43]) by gateway (Coremail) with SMTP id _____8Bxnutz0NRkmKUUAA--.42152S3; Thu, 10 Aug 2023 19:56:35 +0800 (CST) Received: from [10.20.42.43] (unknown [10.20.42.43]) by localhost.localdomain (Coremail) with SMTP id AQAAf8Dx4eRq0NRkUBlTAA--.10908S3; Thu, 10 Aug 2023 19:56:34 +0800 (CST) Message-ID: Date: Thu, 10 Aug 2023 19:56:26 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.13.0 Subject: Re: [PATCH v2 07/11] PCI/VGA: vga_client_register() return -ENODEV on failure, not -1 Content-Language: en-US To: =?UTF-8?Q?Ilpo_J=c3=a4rvinen?= , Sui Jingfeng Cc: Bjorn Helgaas , Dave Airlie , Daniel Vetter , linux-pci@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-kernel@vger.kernel.org References: <20230808223412.1743176-1-sui.jingfeng@linux.dev> <20230808223412.1743176-8-sui.jingfeng@linux.dev> From: suijingfeng In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-CM-TRANSID: AQAAf8Dx4eRq0NRkUBlTAA--.10908S3 X-CM-SenderInfo: xvxlyxpqjiv03j6o00pqjv00gofq/ X-Coremail-Antispam: 1Uk129KBj93XoWxWrWUXF4xJFWxJF1UAFWkuFX_yoW5Zr1rpF yrtF1Ykry8ur18uw42y3W5XFyS934vq348GrWjg3WfArWYvr9Y9F1IqF1Ygr1UGrZ2kF48 tF43ta9093WDZFgCm3ZEXasCq-sJn29KB7ZKAUJUUUUx529EdanIXcx71UUUUU7KY7ZEXa sCq-sGcSsGvfJ3Ic02F40EFcxC0VAKzVAqx4xG6I80ebIjqfuFe4nvWSU5nxnvy29KBjDU 0xBIdaVrnRJUUUPIb4IE77IF4wAFF20E14v26r1j6r4UM7CY07I20VC2zVCF04k26cxKx2 IYs7xG6rWj6s0DM7CIcVAFz4kK6r1Y6r17M28lY4IEw2IIxxk0rwA2F7IY1VAKz4vEj48v e4kI8wA2z4x0Y4vE2Ix0cI8IcVAFwI0_JFI_Gr1l84ACjcxK6xIIjxv20xvEc7CjxVAFwI 0_Gr0_Cr1l84ACjcxK6I8E87Iv67AKxVW8Jr0_Cr1UM28EF7xvwVC2z280aVCY1x0267AK xVW8Jr0_Cr1UM2kKe7AKxVWUAVWUtwAS0I0E0xvYzxvE52x082IY62kv0487Mc804VCY07 AIYIkI8VC2zVCFFI0UMc02F40EFcxC0VAKzVAqx4xG6I80ewAv7VC0I7IYx2IY67AKxVWU AVWUtwAv7VC2z280aVAFwI0_Jr0_Gr1lOx8S6xCaFVCjc4AY6r1j6r4UM4x0Y48IcVAKI4 8JMxk0xIA0c2IEe2xFo4CEbIxvr21lc7CjxVAaw2AFwI0_JF0_Jw1l42xK82IYc2Ij64vI r41l4I8I3I0E4IkC6x0Yz7v_Jr0_Gr1l4IxYO2xFxVAFwI0_JF0_Jw1lx2IqxVAqx4xG67 AKxVWUJVWUGwC20s026x8GjcxK67AKxVWUGVWUWwC2zVAF1VAY17CE14v26r1q6r43MIIY rxkI7VAKI48JMIIF0xvE2Ix0cI8IcVAFwI0_JFI_Gr1lIxAIcVC0I7IYx2IY6xkF7I0E14 v26r1j6r4UMIIF0xvE42xK8VAvwI8IcIk0rVWUJVWUCwCI42IY6I8E87Iv67AKxVWUJVW8 JwCI42IY6I8E87Iv6xkF7I0E14v26r1j6r4UYxBIdaVFxhVjvjDU0xZFpf9x07j5o7tUUU UU= X-Spam-Status: No, score=-4.1 required=5.0 tests=BAYES_00,NICE_REPLY_A, SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, On 2023/8/9 21:52, Ilpo Järvinen wrote: > On Wed, 9 Aug 2023, Sui Jingfeng wrote: > >> From: Sui Jingfeng >> > Changelog body is missing. I thought that probably the Fixes tag could be taken as the body of this commit, since there are no warnings when I check the whole series with checkpatch.pl. >> Fixes: 934f992c763a ("drm/i915: Recognise non-VGA display devices") >> Signed-off-by: Sui Jingfeng >> --- >> drivers/pci/vgaarb.c | 15 ++++++--------- >> 1 file changed, 6 insertions(+), 9 deletions(-) >> >> diff --git a/drivers/pci/vgaarb.c b/drivers/pci/vgaarb.c >> index 811510253553..a6b8c0def35d 100644 >> --- a/drivers/pci/vgaarb.c >> +++ b/drivers/pci/vgaarb.c >> @@ -964,7 +964,7 @@ EXPORT_SYMBOL(vga_set_legacy_decoding); >> * >> * To unregister just call vga_client_unregister(). >> * >> - * Returns: 0 on success, -1 on failure >> + * Returns: 0 on success, -ENODEV on failure > So this is the true substance of this change?? > Yes. > It doesn't warrant Fixes tag which requires a real problem to fix. An > incorrect comment is not enough. > > I think the shortlog is a bit misleading as is because it doesn't in any > way indicate the problem is only in a comment. But it's that commit(934f992c763a) alter the return value of vga_client_register(), which make the commit and code don't match anymore. >> */ >> int vga_client_register(struct pci_dev *pdev, >> unsigned int (*set_decode)(struct pci_dev *pdev, bool decode)) >> @@ -975,16 +975,13 @@ int vga_client_register(struct pci_dev *pdev, >> >> spin_lock_irqsave(&vga_lock, flags); >> vgadev = vgadev_find(pdev); >> - if (!vgadev) >> - goto bail; >> - >> - vgadev->set_decode = set_decode; >> - ret = 0; >> - >> -bail: >> + if (vgadev) { >> + vgadev->set_decode = set_decode; >> + ret = 0; >> + } >> spin_unlock_irqrestore(&vga_lock, flags); >> - return ret; >> >> + return ret; > No logic changes in this at all? I don't think it belongs to the same > patch. I'm not sure if the new logic is improvement anyway. Yes, the new logic is just improvement, no function change. Strict speaking, you are right. One patch do one thing. > I'd prefer to > initialize ret = 0 instead: > > int ret = 0; > ... > if (!vgadev) { > err = -ENODEV; > goto unlock; > } > ... > unlock: > ... > But this is same as the original coding style, no fundamental improve. The key point is to make the wrapped code between the spin_lock_irqsave() and spin_unlock_irqrestore() compact. my patch remove the necessary 'goto' statement and the 'bail' label. After apply my patch, the vga_client_register() function became as this: int vga_client_register(struct pci_dev *pdev,         unsigned int (*set_decode)(struct pci_dev *pdev, bool decode)) {     int ret = -ENODEV;     struct vga_device *vgadev;     unsigned long flags;     spin_lock_irqsave(&vga_lock, flags);     vgadev = vgadev_find(pdev);     if (vgadev) {         vgadev->set_decode = set_decode;         ret = 0;     }     spin_unlock_irqrestore(&vga_lock, flags);     return ret; }