mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Christian König" <deathsimple@vodafone.de>
To: Andy Shevchenko <andy.shevchenko@gmail.com>
Cc: helgaas@kernel.org,
	"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
	dri-devel@lists.freedesktop.org,
	Platform Driver <platform-driver-x86@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH 2/4] PCI: add functionality for resizing resources v3
Date: Tue, 2 May 2017 17:51:36 +0200	[thread overview]
Message-ID: <6238d127-1c70-8235-e247-bb6cb3f4c040@vodafone.de> (raw)
In-Reply-To: <CAHp75VfSFBYgHRsX2JSH0zdSEW8VvXbNMVvBBsD9kKgzGr-v2w@mail.gmail.com>

Am 26.04.2017 um 19:00 schrieb Andy Shevchenko:
> On Tue, Apr 25, 2017 at 4:19 PM, Christian König
> <deathsimple@vodafone.de> wrote:
>> From: Christian König <christian.koenig@amd.com>
>>
>> This allows device drivers to request resizing their BARs.
>>
>> The function only tries to reprogram the windows of the bridge directly above
>> the requesting device and only the BAR of the same type (usually mem, 64bit,
>> prefetchable). This is done to make sure not to disturb other drivers by
>> changing the BARs of their devices.
>>
>> If reprogramming the bridge BAR fails the old status is restored and -ENOSPC
>> returned to the calling device driver.
>> +int pci_reassign_bridge_resources(struct pci_dev *bridge, unsigned long type)
>> +{
>> +       const unsigned long type_mask = IORESOURCE_IO | IORESOURCE_MEM |
>> +               IORESOURCE_PREFETCH | IORESOURCE_MEM_64;
>> +
> Redundant.

Redundant, but also a reminder to myself that I wanted to ask something 
about that.

This type_mask is used already three times in this file, shouldn't we 
add a define for that?

> [SNIP]
>> +       list_for_each_entry(dev_res, &saved, list) {
>> +               /* Skip the bridge we just assigned resources for. */
>> +               if (bridge == dev_res->dev)
>> +                       continue;
>> +
>> +               bridge = dev_res->dev;
>> +               pci_setup_bridge(bridge->subordinate);
>> +       }
>> +
>> +       free_list(&saved);
>> +       free_list(&failed);
>> +       return ret;
> You might re-use two lines with below, but perhaps better to show
> which case returns 0 explicitly and drop assignment ret = 0 above.

Good point, but actually the free_list(&failed) is superfluous here 
since when the failed list isn't empty we end up in the cleanup path.

Going to fix all other comments in the next version.

Regards,
Christian.

  reply	other threads:[~2017-05-02 15:51 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-04-25 13:19 Resizeable PCI BAR support V4 Christian König
2017-04-25 13:19 ` [PATCH 1/4] PCI: add resizeable BAR infrastructure v4 Christian König
2017-04-25 15:00   ` Alex Deucher
2017-04-26 16:45   ` Andy Shevchenko
2017-05-02 14:56     ` Christian König
2017-04-25 13:19 ` [PATCH 2/4] PCI: add functionality for resizing resources v3 Christian König
2017-04-26 17:00   ` Andy Shevchenko
2017-05-02 15:51     ` Christian König [this message]
2017-05-02 20:27       ` Andy Shevchenko
2017-05-04  9:23     ` Christian König
2017-05-04 10:15       ` Andy Shevchenko
2017-05-04 16:44         ` Andy Shevchenko
2017-04-25 13:19 ` [PATCH 3/4] x86/PCI: Enable a 64bit BAR on AMD Family 15h (Models 30h-3fh) Processors v2 Christian König
2017-04-25 15:00   ` Alex Deucher
2017-04-26 17:18   ` Andy Shevchenko
2017-04-25 13:19 ` [PATCH 4/4] drm/amdgpu: resize VRAM BAR for CPU access v2 Christian König
2017-04-25 14:34   ` Alex Deucher
2017-04-25 15:09     ` Christian König
2017-04-25 15:14       ` Alex Deucher
2017-04-25 16:22         ` Christian König
2017-04-25 16:29           ` Alex Deucher
2017-04-25 14:25 ` Resizeable PCI BAR support V4 Andy Shevchenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=6238d127-1c70-8235-e247-bb6cb3f4c040@vodafone.de \
    --to=deathsimple@vodafone.de \
    --cc=andy.shevchenko@gmail.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=helgaas@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=platform-driver-x86@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®