Received: by 2002:ac0:a582:0:0:0:0:0 with SMTP id m2-v6csp1787013imm; Thu, 18 Oct 2018 04:20:30 -0700 (PDT) X-Google-Smtp-Source: ACcGV61EKbbPcqE+r9AHcEbzkyd4iAYKxAdIlUBxDtRduGGdsGpjBlJNaqIRUABW8XK1CBmXc37u X-Received: by 2002:a17:902:e012:: with SMTP id ca18-v6mr28977833plb.195.1539861630796; Thu, 18 Oct 2018 04:20:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1539861630; cv=none; d=google.com; s=arc-20160816; b=Ews9rYtfj0GthjvNkaLE4vIvmvrUOgyAtItxXgqBR31NxCh8Dc1SqU67gCt6H2GYCV K1kW0Mcvltfk92Aj8XwT33NWlGy0TdJn7HCkN5NkVdn6w/Kjcvsn3NNryfgYuKalJTSU OShx5c4XY5OcSOdsSulWRsswv+dfZl0OLQqBNqsqfM+HkaJVNznHLQsI1WL6HgmVb9kc dtk9dGTWX/jECIaGsFRp4XcuoJJiWwTzR8PW/kqdwpU2bGolk3xaplg7Kq3l11ToXFEq ke9ye6PHHeaxw7oIiR1pEqRZKlGWQ3gMZKg6lmdvw0D19fjrP6TIqc6cAWOqh4GJUYVF PpJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-transfer-encoding:content-disposition:mime-version :references:message-id:subject:cc:to:from:date; bh=XbPQ4EQX3h/qrwRO6GmkuLO4MndQ0HzjopJR57PczQc=; b=UmZdWimBSmykLKjgyHTOooxY4mQyXh1tctnb4sqcLq/R6AL+t9BRVSA0QnYlLlZj04 n6Fo1h3Y2rkAmhulLsBvifpy70NLlFyh3yJH+bNJ4oV6a6E5Ip7gziIReL3OoT5h6454 yhcNutsOxOFEPwsC1v01esKY5fU7P9iGIf73YQZMGP0AHradGDvnNBNTuHikhygmPT7Z sPNJow98VC4FjKwCCNjlsEgl4JV2zi3Ql4Hq1lDZXjK97d1U2oLYDLho+pmHpCgJb9qu xNqvdKqp9pbErQHg5PSYmbDEe2Sosz65qCACER4/DuxtzrD7vEhmDw7nC28ljLyWtJh8 aylg== ARC-Authentication-Results: i=1; mx.google.com; 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 m185-v6si16717729pgm.206.2018.10.18.04.20.15; Thu, 18 Oct 2018 04:20:30 -0700 (PDT) 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; 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 S1728216AbeJRTUT convert rfc822-to-8bit (ORCPT + 99 others); Thu, 18 Oct 2018 15:20:19 -0400 Received: from Galois.linutronix.de ([146.0.238.70]:34176 "EHLO Galois.linutronix.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726173AbeJRTUS (ORCPT ); Thu, 18 Oct 2018 15:20:18 -0400 Received: from bigeasy by Galois.linutronix.de with local (Exim 4.80) (envelope-from ) id 1gD6L7-0005ml-PG; Thu, 18 Oct 2018 13:19:41 +0200 Date: Thu, 18 Oct 2018 13:19:41 +0200 From: Sebastian Andrzej Siewior To: Christophe de Dinechin Cc: linux-kernel@vger.kernel.org, x86@kernel.org, Andy Lutomirski , Paolo Bonzini , Radim =?utf-8?B?S3LEjW3DocWZ?= , kvm@vger.kernel.org, "Jason A. Donenfeld" , Rik van Riel , Dave Hansen Subject: Re: [PATCH 03/11] x86/fpu: make __raw_xsave_addr() use feature number instead of mask Message-ID: <20181018111941.og4jg4yzg53f2nnt@linutronix.de> References: <20181004140547.13014-1-bigeasy@linutronix.de> <20181004140547.13014-4-bigeasy@linutronix.de> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8BIT In-Reply-To: User-Agent: NeoMutt/20180716 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2018-10-11 19:30:07 [+0200], Christophe de Dinechin wrote: > > diff --git a/arch/x86/kernel/fpu/xstate.c b/arch/x86/kernel/fpu/xstate.c > > index 87a57b7642d36..38d0b5ea40425 100644 > > --- a/arch/x86/kernel/fpu/xstate.c > > +++ b/arch/x86/kernel/fpu/xstate.c > > @@ -811,10 +811,8 @@ void fpu__resume_cpu(void) > > * > > * Note: does not work for compacted buffers. > > */ > > -void *__raw_xsave_addr(struct xregs_state *xsave, int xstate_feature_mask) > > +void *__raw_xsave_addr(struct xregs_state *xsave, int feature_nr) > > It might be clearer to offer both interfaces, since both are used? > … > > @@ -869,7 +868,8 @@ void *get_xsave_addr(struct xregs_state *xsave, int xstate_feature) > > if (!(xsave->header.xfeatures & xstate_feature)) > > return NULL; > > > > - return __raw_xsave_addr(xsave, xstate_feature); > > + feature_nr = fls64(xstate_feature) - 1; > > + return __raw_xsave_addr(xsave, feature_nr); > > and then move that to a wrapper function that takes a mask? made another patch this fls is gone now and everyone is using a number instead of a mask. Sebastian