Skip to content
  • Jiri Kosina's avatar
    s390: mark __cpacf_query() as __always_inline · 5c8e10f8
    Jiri Kosina authored
    
    
    arch/s390/kvm/kvm-s390.c calls on several places __cpacf_query() directly,
    which makes it impossible to meet the "i" constraint for the asm operands
    (opcode in this case).
    
    As we are now force-enabling CONFIG_OPTIMIZE_INLINING on all
    architectures, this causes a build failure on s390:
    
       In file included from arch/s390/kvm/kvm-s390.c:44:
       ./arch/s390/include/asm/cpacf.h: In function '__cpacf_query':
       ./arch/s390/include/asm/cpacf.h:179:2: warning: asm operand 3 probably doesn't match constraints
         179 |  asm volatile(
             |  ^~~
       ./arch/s390/include/asm/cpacf.h:179:2: error: impossible constraint in 'asm'
    
    Mark __cpacf_query() as __always_inline in order to fix that, analogically
    how we fixes __cpacf_check_opcode(), cpacf_query_func() and scpacf_query()
    already.
    
    Reported-and-tested-by: default avatarMichal Kubecek <mkubecek@suse.cz>
    Fixes: d83623c5 ("s390: mark __cpacf_check_opcode() and cpacf_query_func() as __always_inline")
    Fixes: e60fb8bf ("s390/cpacf: mark scpacf_query() as __always_inline")
    Fixes: ac7c3e4f ("compiler: enable CONFIG_OPTIMIZE_INLINING forcibly")
    Fixes: 9012d011
    
     ("compiler: allow all arches to enable CONFIG_OPTIMIZE_INLINING")
    Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
    Link: https://lore.kernel.org/lkml/nycvar.YFH.7.76.1910012203010.13160@cbobk.fhfr.pm
    
    
    Signed-off-by: default avatarChristian Borntraeger <borntraeger@de.ibm.com>
    Signed-off-by: default avatarVasily Gorbik <gor@linux.ibm.com>
    5c8e10f8