Return-Path: Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:58556 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1754763AbeEHJyE (ORCPT ); Tue, 8 May 2018 05:54:04 -0400 Received: from pps.filterd (m0098419.ppops.net [127.0.0.1]) by mx0b-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w489nQdk084465 for ; Tue, 8 May 2018 05:54:03 -0400 Received: from e06smtp14.uk.ibm.com (e06smtp14.uk.ibm.com [195.75.94.110]) by mx0b-001b2d01.pphosted.com with ESMTP id 2hu6kx0rc2-1 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 08 May 2018 05:54:03 -0400 Received: from localhost by e06smtp14.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Tue, 8 May 2018 10:54:01 +0100 From: Thomas Richter To: linux390-list@tuxmaker.boeblingen.de.ibm.com Cc: Thomas Richter , stable@vger.kernel.org Subject: [PATCH] s390/cpum_sf: Add descriptor sizes in sampling trailer entry Date: Tue, 8 May 2018 11:53:55 +0200 Message-Id: <20180508095355.93822-1-tmricht@linux.ibm.com> Sender: stable-owner@vger.kernel.org List-ID: The CPU Measurement sampling facility creates a trailer entry for each Sample-Data-Block of stored samples. The trailer entry contains the sizes (in bytes) of the stored samples types: - basic-sampling data entry size - diagnostic-sampling data entry size Both sizes are 2 bytes long. This patch changes the trailer entry definition to reflect this. Fixes: fcc77f507333 ("s390/cpum_sf: Atomically reset trailer entry fields of sample-data-blocks") Cc: stable@vger.kernel.org # v3.14+ Signed-off-by: Thomas Richter Reviewed-by: Hendrik Brueckner --- arch/s390/include/asm/cpu_mf.h | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/arch/s390/include/asm/cpu_mf.h b/arch/s390/include/asm/cpu_mf.h index 7093a27520ee..5c5b747671e8 100644 --- a/arch/s390/include/asm/cpu_mf.h +++ b/arch/s390/include/asm/cpu_mf.h @@ -129,11 +129,15 @@ struct hws_trailer_entry { unsigned int f:1; /* 0 - Block Full Indicator */ unsigned int a:1; /* 1 - Alert request control */ unsigned int t:1; /* 2 - Timestamp format */ - unsigned long long:61; /* 3 - 63: Reserved */ + unsigned long :29; /* 3 - 31: Reserved */ + }; + unsigned long flags; /* 0 - 31: All indicators */ + struct { + unsigned short bsdes; /* 32-47: Basic set desc size*/ + unsigned short dsdes; /* 48-63 Diag set desc size */ }; - unsigned long long flags; /* 0 - 63: All indicators */ }; - unsigned long long overflow; /* 64 - sample Overflow count */ + unsigned long long overflow; /* 8 - sample Overflow count */ unsigned char timestamp[16]; /* 16 - 31 timestamp */ unsigned long long reserved1; /* 32 -Reserved */ unsigned long long reserved2; /* */ -- 2.16.3