These changes are the raw update to linux-4.4.6-rt14. Kernel sources
[kvmfornfv.git] / kernel / arch / s390 / include / asm / diag.h
index 7e91c58..5fac921 100644 (file)
@@ -8,6 +8,34 @@
 #ifndef _ASM_S390_DIAG_H
 #define _ASM_S390_DIAG_H
 
+#include <linux/percpu.h>
+
+enum diag_stat_enum {
+       DIAG_STAT_X008,
+       DIAG_STAT_X00C,
+       DIAG_STAT_X010,
+       DIAG_STAT_X014,
+       DIAG_STAT_X044,
+       DIAG_STAT_X064,
+       DIAG_STAT_X09C,
+       DIAG_STAT_X0DC,
+       DIAG_STAT_X204,
+       DIAG_STAT_X210,
+       DIAG_STAT_X224,
+       DIAG_STAT_X250,
+       DIAG_STAT_X258,
+       DIAG_STAT_X288,
+       DIAG_STAT_X2C4,
+       DIAG_STAT_X2FC,
+       DIAG_STAT_X304,
+       DIAG_STAT_X308,
+       DIAG_STAT_X500,
+       NR_DIAG_STAT
+};
+
+void diag_stat_inc(enum diag_stat_enum nr);
+void diag_stat_inc_norecursion(enum diag_stat_enum nr);
+
 /*
  * Diagnose 10: Release page range
  */
@@ -18,6 +46,7 @@ static inline void diag10_range(unsigned long start_pfn, unsigned long num_pfn)
        start_addr = start_pfn << PAGE_SHIFT;
        end_addr = (start_pfn + num_pfn - 1) << PAGE_SHIFT;
 
+       diag_stat_inc(DIAG_STAT_X010);
        asm volatile(
                "0:     diag    %0,%1,0x10\n"
                "1:\n"