Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753413AbcD0R2v (ORCPT ); Wed, 27 Apr 2016 13:28:51 -0400 Received: from e06smtp05.uk.ibm.com ([195.75.94.101]:53521 "EHLO e06smtp05.uk.ibm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752356AbcD0R2t (ORCPT ); Wed, 27 Apr 2016 13:28:49 -0400 X-IBM-Helo: d06dlp03.portsmouth.uk.ibm.com X-IBM-MailFrom: sebott@linux.vnet.ibm.com X-IBM-RcptTo: linux-kernel@vger.kernel.org;stable@vger.kernel.org Date: Wed, 27 Apr 2016 19:27:35 +0200 (CEST) From: Sebastian Ott X-X-Sender: sebott@schleppi To: Ben Hutchings cc: linux-kernel@vger.kernel.org, stable@vger.kernel.org, akpm@linux-foundation.org, Martin Schwidefsky Subject: Re: [PATCH 3.16 098/217] s390/pci: enforce fmb page boundary rule In-Reply-To: Message-ID: References: User-Agent: Alpine 2.20 (LFD 67 2015-01-07) Organization: =?ISO-8859-15?Q?=22IBM_Deutschland_Research_&_Development_GmbH_=2F_Vorsitzende_des_Aufsichtsrats=3A_Martina_Koederitz_Gesch=E4ftsf=FChrung=3A_Dirk_Wittkopp_Sitz_der_Gesellschaft=3A_B=F6blingen_=2F_Registergericht?= =?ISO-8859-15?Q?=3A_Amtsgericht_Stuttgart=2C_HRB_243294=22?= MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-TM-AS-MML: disable X-Content-Scanned: Fidelis XPS MAILER x-cbid: 16042717-0021-0000-0000-000019D21AB9 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1929 Lines: 60 On Wed, 27 Apr 2016, Ben Hutchings wrote: > 3.16.35-rc1 review patch. If anyone has any objections, please let me know. > > ------------------ > > From: Sebastian Ott > > commit 80c544ded25ac14d7cc3e555abb8ed2c2da99b84 upstream. > > The function measurement block must not cross a page boundary. Ensure > that by raising the alignment requirement to the smallest power of 2 > larger than the size of the fmb. > > Fixes: d0b088531 ("s390/pci: performance statistics and debug infrastructure") > Signed-off-by: Sebastian Ott > Signed-off-by: Martin Schwidefsky > [bwh: Backported to 3.16: adjust context] > Signed-off-by: Ben Hutchings The BUILD_BUG_ON below will be triggered. This patch has a dependency on commit: 6001018ae "s390/pci: extract software counters from fmb" could you please fetch that one too? Thanks, Sebastian > --- > arch/s390/include/asm/pci.h | 2 +- > arch/s390/pci/pci.c | 5 ++++- > 2 files changed, 5 insertions(+), 2 deletions(-) > > --- a/arch/s390/include/asm/pci.h > +++ b/arch/s390/include/asm/pci.h > @@ -48,7 +48,7 @@ struct zpci_fmb { > atomic64_t allocated_pages; > atomic64_t mapped_pages; > atomic64_t unmapped_pages; > -} __packed __aligned(16); > +} __packed __aligned(64); > > #define ZPCI_MSI_VEC_BITS 11 > #define ZPCI_MSI_VEC_MAX (1 << ZPCI_MSI_VEC_BITS) > --- a/arch/s390/pci/pci.c > +++ b/arch/s390/pci/pci.c > @@ -840,8 +840,11 @@ static inline int barsize(u8 size) > > static int zpci_mem_init(void) > { > + BUILD_BUG_ON(!is_power_of_2(__alignof__(struct zpci_fmb)) || > + __alignof__(struct zpci_fmb) < sizeof(struct zpci_fmb)); > + > zdev_fmb_cache = kmem_cache_create("PCI_FMB_cache", sizeof(struct zpci_fmb), > - 16, 0, NULL); > + __alignof__(struct zpci_fmb), 0, NULL); > if (!zdev_fmb_cache) > goto error_zdev; > > >