• C
    [S390] kvm-s390: fix stfle facilities numbers >=64 · 9950f8be
    Christian Borntraeger 提交于
    Currently KVM masks out the known good facilities only for the first
    double word, but passed the 2nd double word without filtering. This
    breaks some code on newer systems:
    
    [    0.593966] ------------[ cut here ]------------
    [    0.594086] WARNING: at arch/s390/oprofile/hwsampler.c:696
    [    0.594213] Modules linked in:
    [    0.594321] Modules linked in:
    [    0.594439] CPU: 0 Not tainted 3.0.0-rc1 #46
    [    0.594564] Process swapper (pid: 1, task: 00000001effa8038, ksp: 00000001effafab8)
    [    0.594735] Krnl PSW : 0704100180000000 00000000004ab89a (hwsampler_setup+0x75a/0x7b8)
    [    0.594910]            R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:0 CC:1 PM:0 EA:3
    [    0.595120] Krnl GPRS: ffffffff00000000 00000000ffffffea ffffffffffffffea 00000000004a98f8
    [    0.595351]            00000000004aa002 0000000000000001 000000000080e720 000000000088b9f8
    [    0.595522]            000000000080d3e8 0000000000000000 0000000000000000 000000000080e464
    [    0.595725]            0000000000000000 00000000005db198 00000000004ab3a2 00000001effafd98
    [    0.595901] Krnl Code: 00000000004ab88c: c0e5000673ca        brasl   %r14,57a020
    [    0.596071]            00000000004ab892: a7f4fc77            brc     15,4ab180
    [    0.596276]            00000000004ab896: a7f40001            brc     15,4ab898
    [    0.596454]           >00000000004ab89a: a7c8ffa1            lhi     %r12,-95
    [    0.596657]            00000000004ab89e: a7f4fc71            brc     15,4ab180
    [    0.596854]            00000000004ab8a2: a7f40001            brc     15,4ab8a4
    [    0.597029]            00000000004ab8a6: a7f4ff22            brc     15,4ab6ea
    [    0.597230]            00000000004ab8aa: c0200011009a        larl    %r2,6cb9de
    [    0.597441] Call Trace:
    [    0.597511] ([<00000000004ab3a2>] hwsampler_setup+0x262/0x7b8)
    [    0.597676]  [<0000000000875812>] oprofile_arch_init+0x32/0xd0
    [    0.597834]  [<0000000000875788>] oprofile_init+0x28/0x74
    [    0.597991]  [<00000000001001be>] do_one_initcall+0x3a/0x170
    [    0.598151]  [<000000000084fa22>] kernel_init+0x142/0x1ec
    [    0.598314]  [<000000000057db16>] kernel_thread_starter+0x6/0xc
    [    0.598468]  [<000000000057db10>] kernel_thread_starter+0x0/0xc
    [    0.598606] Last Breaking-Event-Address:
    [    0.598707]  [<00000000004ab896>] hwsampler_setup+0x756/0x7b8
    [    0.598863] ---[ end trace ce3179037f4e3e5b ]---
    
    So lets also mask the 2nd double word. Facilites 66,76,76,77 should be fine.
    Signed-off-by: NChristian Borntraeger <borntraeger@de.ibm.com>
    Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
    9950f8be
kvm-s390.c 19.3 KB