# git rev-parse -q --verify e310e405015f48d18684d89aa27f8c7536b51268^{commit} e310e405015f48d18684d89aa27f8c7536b51268 already have revision, skipping fetch # git checkout -q -f -B kisskb e310e405015f48d18684d89aa27f8c7536b51268 # git clean -qxdf # < git log -1 # commit e310e405015f48d18684d89aa27f8c7536b51268 # Author: Mahesh Salgaonkar # Date: Sun Aug 19 22:38:32 2018 +0530 # # powerpc/pseries: Dump the SLB contents on SLB MCE errors. # # If we get a machine check exceptions due to SLB errors then dump the # current SLB contents which will be very much helpful in debugging the # root cause of SLB errors. Introduce an exclusive buffer per cpu to hold # faulty SLB entries. In real mode mce handler saves the old SLB contents # into this buffer accessible through paca and print it out later in virtual # mode. # # With this patch the console will log SLB contents like below on SLB MCE # errors: # # [ 507.297236] SLB contents of cpu 0x1 # [ 507.297237] Last SLB entry inserted at slot 16 # [ 507.297238] 00 c000000008000000 400ea1b217000500 # [ 507.297239] 1T ESID= c00000 VSID= ea1b217 LLP:100 # [ 507.297240] 01 d000000008000000 400d43642f000510 # [ 507.297242] 1T ESID= d00000 VSID= d43642f LLP:110 # [ 507.297243] 11 f000000008000000 400a86c85f000500 # [ 507.297244] 1T ESID= f00000 VSID= a86c85f LLP:100 # [ 507.297245] 12 00007f0008000000 4008119624000d90 # [ 507.297246] 1T ESID= 7f VSID= 8119624 LLP:110 # [ 507.297247] 13 0000000018000000 00092885f5150d90 # [ 507.297247] 256M ESID= 1 VSID= 92885f5150 LLP:110 # [ 507.297248] 14 0000010008000000 4009e7cb50000d90 # [ 507.297249] 1T ESID= 1 VSID= 9e7cb50 LLP:110 # [ 507.297250] 15 d000000008000000 400d43642f000510 # [ 507.297251] 1T ESID= d00000 VSID= d43642f LLP:110 # [ 507.297252] 16 d000000008000000 400d43642f000510 # [ 507.297253] 1T ESID= d00000 VSID= d43642f LLP:110 # [ 507.297253] ---------------------------------- # [ 507.297254] SLB cache ptr value = 3 # [ 507.297254] Valid SLB cache entries: # [ 507.297255] 00 EA[0-35]= 7f000 # [ 507.297256] 01 EA[0-35]= 1 # [ 507.297257] 02 EA[0-35]= 1000 # [ 507.297257] Rest of SLB cache entries: # [ 507.297258] 03 EA[0-35]= 7f000 # [ 507.297258] 04 EA[0-35]= 1 # [ 507.297259] 05 EA[0-35]= 1000 # [ 507.297260] 06 EA[0-35]= 12 # [ 507.297260] 07 EA[0-35]= 7f000 # # Suggested-by: Aneesh Kumar K.V # Suggested-by: Michael Ellerman # Signed-off-by: Mahesh Salgaonkar # Reviewed-by: Nicholas Piggin # Signed-off-by: Michael Ellerman # < /opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux-gcc --version # < git log --format=%s --max-count=1 e310e405015f48d18684d89aa27f8c7536b51268 # < make -s -j 120 ARCH=powerpc O=/kisskb/build/powerpc-next_ppc64_book3e_allmodconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- ppc64_book3e_allmodconfig # make -s -j 120 ARCH=powerpc O=/kisskb/build/powerpc-next_ppc64_book3e_allmodconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- /kisskb/src/net/Makefile:24: CC cannot link executables. Skipping bpfilter. /kisskb/src/net/Makefile:24: CC cannot link executables. Skipping bpfilter. In file included from /kisskb/src/drivers/net/ethernet/aurora/nb8800.c:40:0: /kisskb/src/drivers/net/ethernet/aurora/nb8800.h:92:0: warning: "TCR_DIE" redefined #define TCR_DIE BIT(7) ^ In file included from /kisskb/src/arch/powerpc/include/asm/reg.h:21:0, from /kisskb/src/arch/powerpc/include/asm/processor.h:13, from /kisskb/src/arch/powerpc/include/asm/thread_info.h:28, from /kisskb/src/include/linux/thread_info.h:38, from /kisskb/src/include/asm-generic/preempt.h:5, from ./arch/powerpc/include/generated/asm/preempt.h:1, from /kisskb/src/include/linux/preempt.h:81, from /kisskb/src/include/linux/spinlock.h:51, from /kisskb/src/include/linux/seqlock.h:36, from /kisskb/src/include/linux/time.h:6, from /kisskb/src/include/linux/stat.h:19, from /kisskb/src/include/linux/module.h:10, from /kisskb/src/drivers/net/ethernet/aurora/nb8800.c:23: /kisskb/src/arch/powerpc/include/asm/reg_booke.h:554:0: note: this is the location of the previous definition #define TCR_DIE TCR_PIE /* DEC Interrupt Enable */ ^ /kisskb/src/drivers/usb/phy/phy-fsl-usb.c: In function 'usb_otg_start': /kisskb/src/drivers/usb/phy/phy-fsl-usb.c:865:3: error: '_fsl_readl' undeclared (first use in this function) _fsl_readl = _fsl_readl_be; ^ /kisskb/src/drivers/usb/phy/phy-fsl-usb.c:865:3: note: each undeclared identifier is reported only once for each function it appears in /kisskb/src/drivers/usb/phy/phy-fsl-usb.c:865:16: error: '_fsl_readl_be' undeclared (first use in this function) _fsl_readl = _fsl_readl_be; ^ /kisskb/src/drivers/usb/phy/phy-fsl-usb.c:866:3: error: '_fsl_writel' undeclared (first use in this function) _fsl_writel = _fsl_writel_be; ^ /kisskb/src/drivers/usb/phy/phy-fsl-usb.c:866:17: error: '_fsl_writel_be' undeclared (first use in this function) _fsl_writel = _fsl_writel_be; ^ /kisskb/src/drivers/usb/phy/phy-fsl-usb.c:868:16: error: '_fsl_readl_le' undeclared (first use in this function) _fsl_readl = _fsl_readl_le; ^ /kisskb/src/drivers/usb/phy/phy-fsl-usb.c:869:17: error: '_fsl_writel_le' undeclared (first use in this function) _fsl_writel = _fsl_writel_le; ^ In file included from /kisskb/src/include/linux/kobject.h:20:0, from /kisskb/src/include/linux/module.h:17, from /kisskb/src/drivers/usb/phy/phy-fsl-usb.c:11: /kisskb/src/drivers/usb/phy/phy-fsl-usb.c: At top level: /kisskb/src/drivers/usb/phy/phy-fsl-usb.c:1042:49: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types] static DEVICE_ATTR(fsl_usb2_otg_state, S_IRUGO, show_fsl_usb2_otg_state, NULL); ^ /kisskb/src/include/linux/sysfs.h:104:10: note: in definition of macro '__ATTR' .show = _show, \ ^ /kisskb/src/drivers/usb/phy/phy-fsl-usb.c:1042:8: note: in expansion of macro 'DEVICE_ATTR' static DEVICE_ATTR(fsl_usb2_otg_state, S_IRUGO, show_fsl_usb2_otg_state, NULL); ^ /kisskb/src/drivers/usb/phy/phy-fsl-usb.c:1042:49: note: (near initialization for 'dev_attr_fsl_usb2_otg_state.show') static DEVICE_ATTR(fsl_usb2_otg_state, S_IRUGO, show_fsl_usb2_otg_state, NULL); ^ /kisskb/src/include/linux/sysfs.h:104:10: note: in definition of macro '__ATTR' .show = _show, \ ^ /kisskb/src/drivers/usb/phy/phy-fsl-usb.c:1042:8: note: in expansion of macro 'DEVICE_ATTR' static DEVICE_ATTR(fsl_usb2_otg_state, S_IRUGO, show_fsl_usb2_otg_state, NULL); ^ cc1: some warnings being treated as errors make[4]: *** [/kisskb/src/scripts/Makefile.build:317: drivers/usb/phy/phy-fsl-usb.o] Error 1 make[4]: *** Waiting for unfinished jobs.... make[3]: *** [/kisskb/src/scripts/Makefile.build:558: drivers/usb/phy] Error 2 make[3]: *** Waiting for unfinished jobs.... make[2]: *** [/kisskb/src/scripts/Makefile.build:558: drivers/usb] Error 2 make[2]: *** Waiting for unfinished jobs.... make[1]: *** [/kisskb/src/Makefile:1034: drivers] Error 2 make: *** [Makefile:146: sub-make] Error 2 Command 'make -s -j 120 ARCH=powerpc O=/kisskb/build/powerpc-next_ppc64_book3e_allmodconfig_powerpc-gcc5 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-5.5.0-nolibc/powerpc64-linux/bin/powerpc64-linux- ' returned non-zero exit status 2 # rm -rf /kisskb/build/powerpc-next_ppc64_book3e_allmodconfig_powerpc-gcc5 # Build took: 0:02:54.201560