Received: by 2002:a25:1506:0:0:0:0:0 with SMTP id 6csp2090105ybv; Fri, 14 Feb 2020 11:15:26 -0800 (PST) X-Google-Smtp-Source: APXvYqxRFhmQ7710kwC0qD7BXGWrpPX9BQYOw84ovgjs8Q61ohqbOMmibWzdA2yDXlCb9IK6nb2H X-Received: by 2002:aca:33d5:: with SMTP id z204mr2771485oiz.120.1581707726379; Fri, 14 Feb 2020 11:15:26 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1581707726; cv=none; d=google.com; s=arc-20160816; b=hWg3HMKlyryYNMa6RDFvxzziXt1EgrhCtL7xlhgBSkS6jzSRHRWQEqJJPaVQNe5PtW V06NdypqYJGUKAwPu9/9wgXShkQaYrFO6DosiM/AgUSjhti3N+bIyPXdBvwuG7W0JvGU /YOJg7brNcSx4AXsYGPPG0NPYF3yF1GDMp7JcmctEm6oJXszg81LlgkSH5Mobb9VQdov BEFtDaXI5wvZzfsfdb2nhiIwZIIW3PpG+ixqhCiE0nE0GA5YdGBVg9BdKsOAEXdAcjv/ aFtsu0GeXl5CdQ8WQGseQQWRHXCPJGy7T8V0uNuXErmaBDgiJ0xx0T1TFzZnI6PV8bN9 X04Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:date:cc:to:from:subject:message-id :dkim-signature; bh=scnEoR+rGyXwnk7+XhNjguBgKH2xz3AYHqxz930H50g=; b=fQKajyWFYXrkDrkWSgibccAbLri2Tpfu693PqPP9g/y2SYxnAYEdFgdEyl3Hif9gbI pXSo7xQTVTvJezlcPC9D3DzS3SZUAjHwEAnNXO3pICNYn/g392SPvDBgVb59NkFRQGBs sMyBWCo20FWS83mcTelW3OKGX1DKCFhGe9nDvaZB9PbKrh3it5eIoOp0GcoUQ9S/H47x pvGs1FkvkbdG+IHRHJnfHO+BIB2zjRqbghq99vAG5dBclVqPysyQP0zf/eho2bbDUF+x TUuc4MgEkYL/AmFqeF8DzT/yYxCiFEYB9OwuUy2Kx5mAUYfSlzDvU24+ekRV3QV3710w HcsQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@lca.pw header.s=google header.b=RzdXkWTL; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b126si3154483oii.72.2020.02.14.11.15.14; Fri, 14 Feb 2020 11:15:26 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@lca.pw header.s=google header.b=RzdXkWTL; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2387718AbgBNTOK (ORCPT + 99 others); Fri, 14 Feb 2020 14:14:10 -0500 Received: from mail-qt1-f195.google.com ([209.85.160.195]:42060 "EHLO mail-qt1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2387603AbgBNTOJ (ORCPT ); Fri, 14 Feb 2020 14:14:09 -0500 Received: by mail-qt1-f195.google.com with SMTP id r5so7677937qtt.9 for ; Fri, 14 Feb 2020 11:14:09 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lca.pw; s=google; h=message-id:subject:from:to:cc:date:in-reply-to:references :mime-version:content-transfer-encoding; bh=scnEoR+rGyXwnk7+XhNjguBgKH2xz3AYHqxz930H50g=; b=RzdXkWTLw9HZo7wGGYxbe32zLEXoVEUum/GroJFlvy/OqFanHtxrUUSTvsI9E8M27N TByGA/BF7OrGpT/4xfadH6mDsaBVOqQJnWMvdlfwtqI3bwaehXqHQihHrKxfmB4wW1SV Vj4545QIFYgl3393+10HVm88sNn+2DwlX6jRxw6SdyXvqGCe6VuMf+qunmPmOlemlX1j VETn72COVYnOpbGYfD4q5n/vcnCdvep7XtH3bNaaqvX6AtNn8rZM+3YMMHqnzD/gwUXm tisJGXe0T/pAVQ/Qb0EK2mRmiocplXXt+SBTsZReo94obPoke06rofB4BUi702zvNQYJ dsRA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:message-id:subject:from:to:cc:date:in-reply-to :references:mime-version:content-transfer-encoding; bh=scnEoR+rGyXwnk7+XhNjguBgKH2xz3AYHqxz930H50g=; b=L0ZpQqmT0skD9Bl5pqQjlLFEn/yRlcp0IAuu23FAcokWKeFFFZa5xPP2YuI+/CvTr7 CIavSXMJbnlcPUA8cwrk6U6e0iXOyVeFlFmwt4OunDdmyZIW/Cpe+dfgrXcTV4P/kNjS +wZ4WyvwU8FbmP/IHxceK91HRd2YGkdQjzI2YrD34n9GRdgIYtK1ekbmpyHMHEhesMFd lcBLrbvnLsXdxwS3u9mMoroui4+Obp6UDhMO+Fq1m0aIRUR/Ud0FsezfUEwTbMLmZ252 nHsCOdIPCj55GkB8kJf6NbEfiFlYBwCaFBj4C12IqOEqvhMJRfRGnooVNp6RNQPQ6zgt 7pfA== X-Gm-Message-State: APjAAAWnCeRqs3cNqbbCOQ1ujM3cyYKwIjnNCfVPUd0m/oVyWG6fvycY ST4BTfxIVotiG/Lmtk0xxSD3ldY7/IqlFw== X-Received: by 2002:ac8:145:: with SMTP id f5mr3793275qtg.194.1581707648516; Fri, 14 Feb 2020 11:14:08 -0800 (PST) Received: from dhcp-41-57.bos.redhat.com (nat-pool-bos-t.redhat.com. [66.187.233.206]) by smtp.gmail.com with ESMTPSA id u4sm3816823qkh.59.2020.02.14.11.14.07 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 14 Feb 2020 11:14:07 -0800 (PST) Message-ID: <1581707646.7365.72.camel@lca.pw> Subject: Re: [PATCH] kvm/emulate: fix a -Werror=cast-function-type From: Qian Cai To: Jim Mattson Cc: Sean Christopherson , Paolo Bonzini , Vitaly Kuznetsov , Wanpeng Li , Joerg Roedel , kvm list , LKML Date: Fri, 14 Feb 2020 14:14:06 -0500 In-Reply-To: References: <1581695768-6123-1-git-send-email-cai@lca.pw> <20200214165923.GA20690@linux.intel.com> <1581700124.7365.70.camel@lca.pw> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.22.6 (3.22.6-10.el7) Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 2020-02-14 at 09:40 -0800, Jim Mattson wrote: > On Fri, Feb 14, 2020 at 9:08 AM Qian Cai wrote: > > > > On Fri, 2020-02-14 at 08:59 -0800, Sean Christopherson wrote: > > > On Fri, Feb 14, 2020 at 10:56:08AM -0500, Qian Cai wrote: > > > > arch/x86/kvm/emulate.c: In function 'x86_emulate_insn': > > > > arch/x86/kvm/emulate.c:5686:22: error: cast between incompatible > > > > function types from 'int (*)(struct x86_emulate_ctxt *)' to 'void > > > > (*)(struct fastop *)' [-Werror=cast-function-type] > > > > rc = fastop(ctxt, (fastop_t)ctxt->execute); > > > > > > > > Fixes: 3009afc6e39e ("KVM: x86: Use a typedef for fastop functions") > > > > Signed-off-by: Qian Cai > > > > --- > > > > arch/x86/kvm/emulate.c | 8 +++++--- > > > > 1 file changed, 5 insertions(+), 3 deletions(-) > > > > > > > > diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c > > > > index ddbc61984227..17ae820cf59d 100644 > > > > --- a/arch/x86/kvm/emulate.c > > > > +++ b/arch/x86/kvm/emulate.c > > > > @@ -5682,10 +5682,12 @@ int x86_emulate_insn(struct x86_emulate_ctxt *ctxt) > > > > ctxt->eflags &= ~X86_EFLAGS_RF; > > > > > > > > if (ctxt->execute) { > > > > - if (ctxt->d & Fastop) > > > > - rc = fastop(ctxt, (fastop_t)ctxt->execute); > > > > > > Alternatively, can we do -Wno-cast-function-type? That's a silly warning > > > IMO. > > > > I am doing W=1 on linux-next where some of the warnings might be silly but the > > recent commit changes all warnings to errors forces me having to silence those > > somehow. > > > > > > > > If not, will either of these work? > > > > > > rc = fastop(ctxt, (void *)ctxt->execute); > > > > > > or > > > rc = fastop(ctxt, (fastop_t)(void *)ctxt->execute); > > > > I have no strong preference. I originally thought just to go back the previous > > code style where might be more acceptable, but it is up to maintainers. > > It seems misguided to define a local variable just to get an implicit > cast from (void *) to (fastop_t). Sean's first suggestion gives you > the same implicit cast without the local variable. The second > suggestion makes both casts explicit. OK, I'll do a v2 using the first suggestion which looks simpler once it passed compilations.