From: Thomas Gleixner <tglx@linutronix.de>
To: Yinghai Lu <yinghai@kernel.org>
Cc: Jiang Liu <jiang.liu@linux.intel.com>,
"H. Peter Anvin" <hpa@zytor.com>,
Bjorn Helgaas <bhelgaas@google.com>,
"Rafael J. Wysocki" <rjw@rjwysocki.net>,
Borislav Petkov <bp@alien8.de>,
Randy Dunlap <rdunlap@infradead.org>,
Ingo Molnar <mingo@kernel.org>, Joerg Roedel <joro@8bytes.org>,
Tony Luck <tony.luck@intel.com>,
Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Linus Torvalds <torvalds@linux-foundation.org>,
"linux-tip-commits@vger.kernel.org"
<linux-tip-commits@vger.kernel.org>
Subject: Re: [tip:x86/apic] x86, PCI, ACPI: Kill private function resource_to_addr() in arch/x86/pci/acpi.c
Date: Wed, 10 Dec 2014 21:15:39 +0100 (CET) [thread overview]
Message-ID: <alpine.DEB.2.11.1412101820510.13233@nanos> (raw)
In-Reply-To: <CAE9FiQWaL1Qu1eP-fQV784ucy+r-65AZ95VyiUrefn0dNtfLDw@mail.gmail.com>
On Tue, 9 Dec 2014, Yinghai Lu wrote:
Can you please
1) Cut out the completely irrelevant information from your replies?
It's just annoying to scroll through hundreds of quoted lines to
find the guts of the mail.
2) Send patches inline. It's a pain to review and reply and I can't
use my normal tooling.
> This one cause one system with Nehalem and one with Westmere failing.
>
> [ 32.353347] acpi PNP0A08:00: host bridge window expanded to [mem
> 0x00000000-0xffffffff]; [mem 0x000a0000-0x000bffff] ignored
> [ 32.362897] acpi PNP0A08:00: host bridge window expanded to [mem
> 0x00000000-0xffffffff]; [mem 0x000d0000-0x000dffff] ignored
> [ 32.382862] acpi PNP0A08:00: host bridge window expanded to [mem
> 0x00000000-0xffffffff]; [mem 0x00000000-0xffffffff] ignored
> [ 32.402889] acpi PNP0A08:00: host bridge window expanded to [mem
> 0x00000000-0xffffffff]; [??? 0x00000000-0xffffffff flags 0x0] ignored
> [ 32.423000] acpi PNP0A08:00: host bridge window expanded to [mem
> 0x00000000-0xffffffff]; [mem 0x00000000-0xffffffff] ignored
> [ 32.602921] PCI host bridge to bus 0000:00
> [ 32.603158] pci_bus 0000:00: root bus resource [bus 00-3f]
> [ 32.622782] pci_bus 0000:00: root bus resource [io 0x0000-0x5fff]
> [ 32.642569] pci_bus 0000:00: root bus resource [mem 0x00000000-0xffffffff]
> [ 32.642893] pci_bus 0000:00: root bus resource [mem
> 0xfc000000000-0xfc07fffffff pref]
>
> Looks like the commit have several problems.
>
> Attached patch should address them.
> - struct resource r = {
> - .flags = 0
> - };
> + struct resource r;
>
> + memset(&r, 0, sizeof(r));
What's the point of this change? Both initialize r to 0. memset()
generates better code, but that's irrelevant for the problem at hand.
And the "fix" is also missing that the address range check happens for
IORESOURCE_IO as well. Which is silly because
acpi_dev_resource_address_space() has that already for the IO
case. But sure, that does not help, because it does not return false,
it sets the IORESOURCE_DISABLED flag and returns true.
Now the code in setup_resource() clears that flag along with all other
flags which does not make any sense, at least not without a comment.
But clearing and therefor ignoring IORESOURCE_DISABLED does not make
any sense at all and is outright wrong.
So there is another interesting flag: IORESOURCE_WINDOW. That's
cleared as well and of course the rest of that setup code does not
handle it either. If IORESOURCE_WINDOW is not set, then this is
address space which is consumed by the bridge itself. So its just
wrong to treat it as window and try coalescing it with the real window
spaces.
Also why is this x86 bridge specific?
if (addr.resource_type == ACPI_MEMORY_RANGE &&
addr.info.mem.caching == ACPI_PREFETCHABLE_MEMORY)
r.flags |= IORESOURCE_PREFETCH;
and not happening in the acpi code? Just because struct resource does
not have a field for it? Sigh.
This needs more than a hacked together fixup, really. It was wrong
before Jiangs change already.
> Please fix it before it get into linus tree.
You can be sure that I'm going to fix the whole mess there proper and
not by applying a cobbled together bandaid.
Thanks,
tglx
next prev parent reply other threads:[~2014-12-10 20:16 UTC|newest]
Thread overview: 70+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-27 5:21 [Patch v7 00/18] Enable support of IOAPIC hotplug on x86 platforms Jiang Liu
2014-10-27 5:21 ` [Patch v7 01/18] ACPI, irq: fix regression casued by 6b9fb7082409 Jiang Liu
2014-10-28 17:44 ` Pavel Machek
2014-10-28 18:13 ` Bjorn Helgaas
2014-10-28 18:45 ` Thomas Gleixner
2014-10-27 5:21 ` [Patch v7 02/18] x86, intel-mid: Create IRQs for APB timers and RTC timers Jiang Liu
2014-10-28 18:54 ` [tip:x86/urgent] " tip-bot for Jiang Liu
2014-10-29 9:10 ` tip-bot for Jiang Liu
2014-10-27 5:21 ` [Patch v7 03/18] ACPI, irq, x86: Return IRQ instead of GSI in mp_register_gsi() Jiang Liu
2014-10-28 18:54 ` [tip:x86/urgent] " tip-bot for Jiang Liu
2014-10-29 9:10 ` tip-bot for Jiang Liu
2014-10-27 5:21 ` [Patch v7 04/18] x86, PCI, ACPI: Kill private function resource_to_addr() in arch/x86/pci/acpi.c Jiang Liu
2014-11-03 10:57 ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-11-03 14:50 ` Borislav Petkov
2014-12-10 4:08 ` Yinghai Lu
2014-12-10 13:36 ` Jiang Liu
2014-12-10 20:15 ` Thomas Gleixner [this message]
2014-12-11 0:31 ` Yinghai Lu
2014-12-11 0:35 ` Borislav Petkov
2014-12-11 1:57 ` Yinghai Lu
2014-12-11 4:13 ` Mike Galbraith
2014-12-11 7:42 ` Richard Cochran
2014-12-11 16:36 ` Thomas Gleixner
2014-12-11 16:57 ` Yinghai Lu
2014-12-11 16:37 ` Bjorn Helgaas
2014-10-27 5:21 ` [Patch v7 05/18] ACPI: Correct return value of acpi_dev_resource_address_space() Jiang Liu
2014-10-27 22:30 ` Rafael J. Wysocki
2014-10-27 22:49 ` Bjorn Helgaas
2014-10-27 23:11 ` Rafael J. Wysocki
2014-10-28 1:13 ` Bjorn Helgaas
2014-11-03 10:57 ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-12-19 14:00 ` tip-bot for Jiang Liu
2014-10-27 5:21 ` [Patch v7 06/18] ACPI: Fix minor syntax issues in processor_core.c Jiang Liu
2014-11-03 10:58 ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-12-19 14:02 ` tip-bot for Jiang Liu
2014-10-27 5:21 ` [Patch v7 07/18] ACPI: Add interfaces to parse IOAPIC ID for IOAPIC hotplug Jiang Liu
2014-11-03 10:58 ` [tip:x86/apic] " tip-bot for Yinghai Lu
2014-10-27 5:21 ` [Patch v7 08/18] PCI: Remove PCI ioapic driver Jiang Liu
2014-11-03 10:58 ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-12-19 14:02 ` tip-bot for Jiang Liu
2014-10-27 5:21 ` [Patch v7 09/18] x86, irq: Split out alloc_ioapic_save_registers() Jiang Liu
2014-11-03 10:58 ` [tip:x86/apic] " tip-bot for Yinghai Lu
2014-12-19 14:03 ` tip-bot for Yinghai Lu
2014-10-27 5:21 ` [Patch v7 10/18] x86, irq: Prefer assigned ID in APIC ID register for x86_64 Jiang Liu
2014-11-03 10:59 ` [tip:x86/apic] " tip-bot for Yinghai Lu
2014-12-19 14:03 ` tip-bot for Yinghai Lu
2014-10-27 5:21 ` [Patch v7 11/18] x86, irq: Remove __init marker for functions will be used by IOAPIC hotplug Jiang Liu
2014-11-03 10:59 ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-12-19 14:03 ` tip-bot for Jiang Liu
2014-10-27 5:21 ` [Patch v7 12/18] x86, irq: Keep balance of IOAPIC pin reference count Jiang Liu
2014-11-03 10:59 ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-12-19 14:04 ` tip-bot for Jiang Liu
2014-10-27 5:21 ` [Patch v7 13/18] x86, irq: Refine mp_register_ioapic() to prepare for IOAPIC hotplug Jiang Liu
2014-11-03 11:00 ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-12-19 14:04 ` tip-bot for Jiang Liu
2014-10-27 5:21 ` [Patch v7 14/18] x86, irq, ACPI: Introduce a rwsem to protect IOAPIC operations from hotplug Jiang Liu
2014-11-01 18:59 ` Thomas Gleixner
2014-11-02 5:24 ` Jiang Liu
2014-10-27 5:21 ` [Patch v7 15/18] x86, irq, ACPI: Implement interface to support ACPI based IOAPIC hot-addition Jiang Liu
2014-11-03 11:00 ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-12-19 14:04 ` tip-bot for Jiang Liu
2014-10-27 5:21 ` [Patch v7 16/18] x86, irq, ACPI: Implement interfaces to support ACPI based IOAPIC hot-removal Jiang Liu
2014-11-03 11:00 ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-12-19 14:05 ` tip-bot for Jiang Liu
2014-10-27 5:21 ` [Patch v7 17/18] x86, irq: Introduce helper to check whether an IOAPIC has been registered Jiang Liu
2014-10-28 17:47 ` Pavel Machek
2014-11-03 11:01 ` [tip:x86/apic] " tip-bot for Jiang Liu
2014-12-19 14:05 ` tip-bot for Jiang Liu
2014-10-27 5:21 ` [Patch v7 18/18] x86, irq, ACPI: Implement ACPI driver to support IOAPIC hotplug Jiang Liu
2014-11-03 11:01 ` [tip:x86/apic] " tip-bot for Jiang Liu
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=alpine.DEB.2.11.1412101820510.13233@nanos \
--to=tglx@linutronix.de \
--cc=benh@kernel.crashing.org \
--cc=bhelgaas@google.com \
--cc=bp@alien8.de \
--cc=gregkh@linuxfoundation.org \
--cc=hpa@zytor.com \
--cc=jiang.liu@linux.intel.com \
--cc=joro@8bytes.org \
--cc=konrad.wilk@oracle.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tip-commits@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=rdunlap@infradead.org \
--cc=rjw@rjwysocki.net \
--cc=tony.luck@intel.com \
--cc=torvalds@linux-foundation.org \
--cc=yinghai@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®