From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Alexander Graf <agraf@suse.de>
Cc: "J. Bruce Fields" <bfields@fieldses.org>,
Linus Torvalds <torvalds@linux-foundation.org>,
LKML List <linux-kernel@vger.kernel.org>,
linuxppc-dev <linuxppc-dev@lists.ozlabs.org>,
linux-nfs@vger.kernel.org, Jan Kara <jack@suse.cz>,
skinsbursky@parallels.com, bfields@redhat.com, anton@samba.org
Subject: Re: [REGRESSION] nfsd crashing with 3.6.0-rc7 on PowerPC
Date: Tue, 02 Oct 2012 10:58:29 +1000 [thread overview]
Message-ID: <1349139509.3847.2.camel@pasglop> (raw)
In-Reply-To: <2A52FC96-148C-4F7A-9950-E152E0C6698D@suse.de>
On Mon, 2012-10-01 at 16:03 +0200, Alexander Graf wrote:
> Phew. Here we go :). It looks to be more of a PPC specific problem than it appeared as at first:
Ok, so I suspect the problem is the pushing down of the locks which
breaks with iommu backends that have a separate flush callback. In
that case, the flush moves out of the allocator lock.
Now we do call flush before we return, still, but it becomes racy
I suspect, but somebody needs to give it a closer look. I'm hoping
Anton or Nish will later today.
Cheers,
Ben.
>
> b4c3a8729ae57b4f84d661e16a192f828eca1d03 is first bad commit
> commit b4c3a8729ae57b4f84d661e16a192f828eca1d03
> Author: Anton Blanchard <anton@samba.org>
> Date: Thu Jun 7 18:14:48 2012 +0000
>
> powerpc/iommu: Implement IOMMU pools to improve multiqueue adapter performance
>
> At the moment all queues in a multiqueue adapter will serialise
> against the IOMMU table lock. This is proving to be a big issue,
> especially with 10Gbit ethernet.
>
> This patch creates 4 pools and tries to spread the load across
> them. If the table is under 1GB in size we revert back to the
> original behaviour of 1 pool and 1 largealloc pool.
>
> We create a hash to map CPUs to pools. Since we prefer interrupts to
> be affinitised to primary CPUs, without some form of hashing we are
> very likely to end up using the same pool. As an example, POWER7
> has 4 way SMT and with 4 pools all primary threads will map to the
> same pool.
>
> The largealloc pool is reduced from 1/2 to 1/4 of the space to
> partially offset the overhead of breaking the table up into pools.
>
> Some performance numbers were obtained with a Chelsio T3 adapter on
> two POWER7 boxes, running a 100 session TCP round robin test.
>
> Performance improved 69% with this patch applied.
>
> Signed-off-by: Anton Blanchard <anton@samba.org>
> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
>
> :040000 040000 039ae3cbdcfded9c6b13e58a3fc67609f1b587b0 6755a8c4a690cc80dcf834d1127f21db925476d6 M arch
>
>
> Alex
WARNING: multiple messages have this Message-ID (diff)
From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
To: Alexander Graf <agraf@suse.de>
Cc: linux-nfs@vger.kernel.org, Jan Kara <jack@suse.cz>,
Linus Torvalds <torvalds@linux-foundation.org>,
LKML List <linux-kernel@vger.kernel.org>,
"J. Bruce Fields" <bfields@fieldses.org>,
anton@samba.org, skinsbursky@parallels.com, bfields@redhat.com,
linuxppc-dev <linuxppc-dev@lists.ozlabs.org>
Subject: Re: [REGRESSION] nfsd crashing with 3.6.0-rc7 on PowerPC
Date: Tue, 02 Oct 2012 10:58:29 +1000 [thread overview]
Message-ID: <1349139509.3847.2.camel@pasglop> (raw)
In-Reply-To: <2A52FC96-148C-4F7A-9950-E152E0C6698D@suse.de>
On Mon, 2012-10-01 at 16:03 +0200, Alexander Graf wrote:
> Phew. Here we go :). It looks to be more of a PPC specific problem than it appeared as at first:
Ok, so I suspect the problem is the pushing down of the locks which
breaks with iommu backends that have a separate flush callback. In
that case, the flush moves out of the allocator lock.
Now we do call flush before we return, still, but it becomes racy
I suspect, but somebody needs to give it a closer look. I'm hoping
Anton or Nish will later today.
Cheers,
Ben.
>
> b4c3a8729ae57b4f84d661e16a192f828eca1d03 is first bad commit
> commit b4c3a8729ae57b4f84d661e16a192f828eca1d03
> Author: Anton Blanchard <anton@samba.org>
> Date: Thu Jun 7 18:14:48 2012 +0000
>
> powerpc/iommu: Implement IOMMU pools to improve multiqueue adapter performance
>
> At the moment all queues in a multiqueue adapter will serialise
> against the IOMMU table lock. This is proving to be a big issue,
> especially with 10Gbit ethernet.
>
> This patch creates 4 pools and tries to spread the load across
> them. If the table is under 1GB in size we revert back to the
> original behaviour of 1 pool and 1 largealloc pool.
>
> We create a hash to map CPUs to pools. Since we prefer interrupts to
> be affinitised to primary CPUs, without some form of hashing we are
> very likely to end up using the same pool. As an example, POWER7
> has 4 way SMT and with 4 pools all primary threads will map to the
> same pool.
>
> The largealloc pool is reduced from 1/2 to 1/4 of the space to
> partially offset the overhead of breaking the table up into pools.
>
> Some performance numbers were obtained with a Chelsio T3 adapter on
> two POWER7 boxes, running a 100 session TCP round robin test.
>
> Performance improved 69% with this patch applied.
>
> Signed-off-by: Anton Blanchard <anton@samba.org>
> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
>
> :040000 040000 039ae3cbdcfded9c6b13e58a3fc67609f1b587b0 6755a8c4a690cc80dcf834d1127f21db925476d6 M arch
>
>
> Alex
next prev parent reply other threads:[~2012-10-02 0:59 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-28 1:55 [REGRESSION] nfsd crashing with 3.6.0-rc7 on PowerPC Alexander Graf
2012-09-28 1:55 ` Alexander Graf
2012-09-28 2:04 ` Linus Torvalds
2012-09-28 2:04 ` Linus Torvalds
2012-09-28 2:19 ` Alexander Graf
2012-09-28 2:19 ` Alexander Graf
2012-09-28 15:10 ` J. Bruce Fields
2012-09-28 15:10 ` J. Bruce Fields
2012-09-28 15:34 ` Alexander Graf
2012-09-28 15:34 ` Alexander Graf
2012-10-01 14:03 ` Alexander Graf
2012-10-01 14:03 ` Alexander Graf
2012-10-01 15:21 ` J. Bruce Fields
2012-10-01 15:21 ` J. Bruce Fields
2012-10-02 0:58 ` Benjamin Herrenschmidt [this message]
2012-10-02 0:58 ` Benjamin Herrenschmidt
2012-10-02 21:43 ` Nishanth Aravamudan
2012-10-02 21:43 ` Nishanth Aravamudan
2012-10-02 21:47 ` Alexander Graf
2012-10-02 21:47 ` Alexander Graf
2012-10-02 22:17 ` Nishanth Aravamudan
2012-10-02 22:17 ` Nishanth Aravamudan
2012-10-02 22:31 ` Alexander Graf
2012-10-02 22:31 ` Alexander Graf
2012-10-04 0:26 ` Anton Blanchard
2012-10-04 0:26 ` Anton Blanchard
2012-10-04 4:57 ` [PATCH] powerpc/iommu: Fix multiple issues with IOMMU pools code Anton Blanchard
2012-10-04 4:57 ` Anton Blanchard
2012-10-04 10:54 ` Alexander Graf
2012-10-04 10:54 ` Alexander Graf
2012-10-03 4:22 ` [REGRESSION] nfsd crashing with 3.6.0-rc7 on PowerPC Benjamin Herrenschmidt
2012-10-03 4:22 ` Benjamin Herrenschmidt
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=1349139509.3847.2.camel@pasglop \
--to=benh@kernel.crashing.org \
--cc=agraf@suse.de \
--cc=anton@samba.org \
--cc=bfields@fieldses.org \
--cc=bfields@redhat.com \
--cc=jack@suse.cz \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-nfs@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=skinsbursky@parallels.com \
--cc=torvalds@linux-foundation.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 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.