From: "H. Peter Anvin" <hpa@zytor.com>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: mingo@redhat.com, linux-kernel@vger.kernel.org,
djwong@us.ibm.com, muli@il.ibm.com, cschultz@linux.vnet.ibm.com,
stable@kernel.org, tglx@linutronix.de, mingo@elte.hu,
linux-tip-commits@vger.kernel.org
Subject: Re: [tip:x86/urgent] x86, Calgary: Increase max PHB number
Date: Wed, 30 Jun 2010 14:31:44 -0700 [thread overview]
Message-ID: <4C2BB7C0.9040000@zytor.com> (raw)
In-Reply-To: <20100629155151.7caaff4b.akpm@linux-foundation.org>
On 06/29/2010 03:51 PM, Andrew Morton wrote:
> On Fri, 25 Jun 2010 15:29:50 GMT
> "tip-bot for Darrick J. Wong" <djwong@us.ibm.com> wrote:
>
>> Commit-ID: 499a00e92dd9a75395081f595e681629eb1eebad
>> Gitweb: http://git.kernel.org/tip/499a00e92dd9a75395081f595e681629eb1eebad
>> Author: Darrick J. Wong <djwong@us.ibm.com>
>> AuthorDate: Thu, 24 Jun 2010 14:26:47 -0700
>> Committer: Ingo Molnar <mingo@elte.hu>
>> CommitDate: Fri, 25 Jun 2010 16:14:58 +0200
>>
>> x86, Calgary: Increase max PHB number
>
> arch/x86/kernel/pci-calgary_64.c: In function 'calgary_init_one':
> arch/x86/kernel/pci-calgary_64.c:1059: warning: comparison is always false due to limited range of data type
>
> from
>
> BUG_ON(dev->bus->number >= MAX_PHB_BUS_NUM);
>
> with
>
> http://userweb.kernel.org/~akpm/stuff/config-akpm2.txt
This comes from:
/*
* The maximum PHB bus number.
* x3950M2 (rare): 8 chassis, 48 PHBs per chassis = 384
* x3950M2: 4 chassis, 48 PHBs per chassis = 192
* x3950 (PCIE): 8 chassis, 32 PHBs per chassis = 256
* x3950 (PCIX): 8 chassis, 16 PHBs per chassis = 128
*/
#define MAX_PHB_BUS_NUM 384
Clearly there can't be 384 busses with standard PCI numbering (bus
numbers are 8 bits). That means either that the number 384 is just
wrong, or it means that there are multiple PCI domains involved, and
that the BUG_ON() should be something else.
Furthermore, in get_tce_space_from_tar() we have:
for (bus = 0; bus < MAX_PHB_BUS_NUM; bus++) {
struct calgary_bus_info *info = &bus_info[bus];
unsigned short pci_device;
u32 val;
val = read_pci_config(bus, 0, 0, 0);
pci_device = (val & 0xFFFF0000) >> 16;
... which assumes the bus is a PCI bus number, no domain involved.
Does this mean the limit should be 256 (in which case we can just drop
the BUG_ON()), or is there support for domains which should be in this
code but isn't?
-hpa
next prev parent reply other threads:[~2010-06-30 21:32 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-21 18:41 [PATCH RESEND] (revised) Calgary: increase max PHB number Corinna Schultz
2010-06-24 21:26 ` Darrick J. Wong
2010-06-25 14:14 ` Ingo Molnar
2010-06-25 15:29 ` [tip:x86/urgent] x86, Calgary: Increase " tip-bot for Darrick J. Wong
2010-06-29 22:51 ` Andrew Morton
2010-06-30 21:31 ` H. Peter Anvin [this message]
2010-06-30 21:45 ` Darrick J. Wong
2010-06-30 21:49 ` [PATCH] " Darrick J. Wong
2010-06-30 23:05 ` H. Peter Anvin
2010-07-01 0:45 ` Darrick J. Wong
2010-07-01 5:45 ` [tip:x86/urgent] x86, Calgary: Limit the max PHB number to 256 tip-bot for Darrick J. Wong
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=4C2BB7C0.9040000@zytor.com \
--to=hpa@zytor.com \
--cc=akpm@linux-foundation.org \
--cc=cschultz@linux.vnet.ibm.com \
--cc=djwong@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tip-commits@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=mingo@redhat.com \
--cc=muli@il.ibm.com \
--cc=stable@kernel.org \
--cc=tglx@linutronix.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.