From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Google-Smtp-Source: AH8x224Psva20ErLH7FdYPhCP1RFC47jdqb6qih8eZguP5olxhmVaLEdQ3ZnyU1OYWwmSj5504As ARC-Seal: i=1; a=rsa-sha256; t=1517263315; cv=none; d=google.com; s=arc-20160816; b=JixqpN9uGUvjYHLMieGTHLG1eOIfpRgvM43aMLUFhe0QrMzlbvsaPf33XtvQhgccTJ w8jW+VTTh7A1Fw1wxCrS5HTJerNTpzwjBlkrnNKObLBJ8yN6QFHy4TPFU1d+Janqh7jr UeLnXYREKY7S8RZJfF11pf6phoNMdMFVPsskqXLI2GPBSWdAuj8Jd4Kf+sQZa1AYEb6e AtsSevlvgu89Y8X0xITiIFSgPV9WdNkOXhtOpl+b83DVeIau8lXswJ5FDCiswkO3BiI8 C1z/4EvF6iN2oHTahwG8/fFVGY1XfKjdHfeqbbcqtnNYAf6MiwSJV4PfiDsPV3Vo8Foq plnA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:content-language:in-reply-to:mime-version :user-agent:date:message-id:from:references:cc:to:subject :dmarc-filter:dkim-signature:dkim-signature :arc-authentication-results; bh=2sbgrLbwbbz756qtehSuuupGaubc/4LxvaIDRMw3vMA=; b=QLZESsY6sY3iPaQYJnXZdKHbGJHbycWA5mX7LX4MZEXH6ZHdi+0Oun2FOsT3QIhOS6 VAryAWW2HyZAmcGB1u1KlXzg4lU8P8vWr07KrknJefnv+MzYjr6C3VV1n0qtFdMAVzng MDLlapAvHp2SJM6w/IFItepfczpng1VZbouR5Bk3h8W9sZuhEO1nQIdxdv3GfDlxk+r4 7Du97RMLrOsNEln9VcBhznhtrXV3Dw8sQURk8uxMWFlqawES/qQLcl+5CNVovAZsdwl3 E4/g2tN+IMKvZpxWwbRXThU7MwAoi8w/rgXNNJT01UEuwluqhwN1Q1CcD4d7VYwK7dbX Eo/A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=Ca9rT4mc; dkim=pass header.i=@codeaurora.org header.s=default header.b=YMPUaC0f; spf=pass (google.com: domain of okaya@codeaurora.org designates 198.145.29.96 as permitted sender) smtp.mailfrom=okaya@codeaurora.org Authentication-Results: mx.google.com; dkim=pass header.i=@codeaurora.org header.s=default header.b=Ca9rT4mc; dkim=pass header.i=@codeaurora.org header.s=default header.b=YMPUaC0f; spf=pass (google.com: domain of okaya@codeaurora.org designates 198.145.29.96 as permitted sender) smtp.mailfrom=okaya@codeaurora.org DMARC-Filter: OpenDMARC Filter v1.3.2 smtp.codeaurora.org A5192601D2 Authentication-Results: pdx-caf-mail.web.codeaurora.org; dmarc=none (p=none dis=none) header.from=codeaurora.org Authentication-Results: pdx-caf-mail.web.codeaurora.org; spf=none smtp.mailfrom=okaya@codeaurora.org Subject: Re: [PATCH V4 05/26] agp: nvidia: deprecate pci_get_bus_and_slot() To: Dave Airlie Cc: Linux PCI , timur@codeaurora.org, linux-arm-msm , linux-arm-kernel@lists.infradead.org, David Airlie , Arnd Bergmann , Greg Kroah-Hartman , open list References: <1513661883-28662-1-git-send-email-okaya@codeaurora.org> <1513661883-28662-6-git-send-email-okaya@codeaurora.org> <9b3cf544-173e-2450-589c-4bf14af307f2@codeaurora.org> From: Sinan Kaya Message-ID: <4fd0d418-ff34-8a3f-a233-5cdf80fe744f@codeaurora.org> Date: Mon, 29 Jan 2018 17:01:51 -0500 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: =?utf-8?q?1587189544375838817?= X-GMAIL-MSGID: =?utf-8?q?1590965898379135397?= X-Mailing-List: linux-kernel@vger.kernel.org List-ID: On 1/29/2018 4:43 PM, Dave Airlie wrote: >> 12/19/2017 12:37 AM, Sinan Kaya wrote: >>> pci_get_bus_and_slot() is restrictive such that it assumes domain=0 as >>> where a PCI device is present. This restricts the device drivers to be >>> reused for other domain numbers. > So not a major problem, but it would be pretty much impossible for either > of these agp drivers to be used in any other domain ever. > > What does this buy us, maybe just rename pci_get_bus_and_slot to > pci_get_domain0_bus_and_slot as a helper, or just pass the pdev in > and have it do the right thing always. There is nothing wrong with doing all three. Since nobody replied until patch v4, I did the heavy-lifting and converted code to use pci_domain_nr() as much as I can rather than hard-coding a 0 while calling pci_get_domain_bus_and_slot(). >>From PCI coding perspective, pci_domain_nr() call is the right thing. It is guaranteed to work no matter what your domain number is. People look at other code for examples on how to write a PCI driver in general. You want to minimize the exceptions as much as possible. Some discussion here about the benefits: https://lkml.org/lkml/2017/12/19/349 -- Sinan Kaya Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm Technologies, Inc. Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project.