From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1750990AbdAXCi6 (ORCPT ); Mon, 23 Jan 2017 21:38:58 -0500 Received: from mga06.intel.com ([134.134.136.31]:9173 "EHLO mga06.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750975AbdAXCiz (ORCPT ); Mon, 23 Jan 2017 21:38:55 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.33,276,1477983600"; d="scan'208";a="1098023572" Subject: Re: [tip:x86/urgent] x86/fpu: Set the xcomp_bv when we fake up a XSAVES area To: Kevin Hao References: <20170123165529.GA4996@test-lenovo> <2be814b7-9fd6-7955-b4e3-6ecb4ef76052@linux.intel.com> <20170123205725.GA3920@test-lenovo> <90b0fbee-273b-31c2-6fe9-228f00c0a205@linux.intel.com> <20170123211640.GA3976@test-lenovo> <20170124001447.GD15017@pek-khao-d1> <0d717394-eaf0-4d29-1aae-218ffcc8f06b@linux.intel.com> <20170124015012.GA9969@pek-khao-d1> <1b4e8b6c-c143-1867-712c-8b2e336a6ce0@linux.intel.com> <20170124020921.GC9969@pek-khao-d1> Cc: Yu-cheng Yu , fenghua.yu@intel.com, dvlasenk@redhat.com, peterz@infradead.org, oleg@redhat.com, mingo@kernel.org, linux-kernel@vger.kernel.org, brgerst@gmail.com, luto@kernel.org, bp@alien8.de, jpoimboe@redhat.com, hpa@zytor.com, quentin.casasnovas@oracle.com, tglx@linutronix.de, torvalds@linux-foundation.org, riel@redhat.com, linux-tip-commits@vger.kernel.org From: Dave Hansen Message-ID: <2b638f89-70b4-7c0b-a271-a430157c5bfd@linux.intel.com> Date: Mon, 23 Jan 2017 18:38:42 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: <20170124020921.GC9969@pek-khao-d1> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 01/23/2017 06:09 PM, Kevin Hao wrote: > On Mon, Jan 23, 2017 at 06:01:10PM -0800, Dave Hansen wrote: >> On 01/23/2017 05:50 PM, Kevin Hao wrote: >>> According to the ISA manual, XSAVES also set the XCOMP_BV[62:0]. My code only >>> try to be compatible with what the cpu does when excuting XSAVES. The following >>> is quoted from 325462-sdm-vol-1-2abcd-3abcd.pdf. >>> The XSAVES instructions sets bit 63 of the XCOMP_BV field of the XSAVE header while writing RFBM[62:0] to >>> XCOMP_BV[62:0]. The XSAVES instruction does not write any part of the XSAVE header other than the XSTATE_BV >>> and XCOMP_BV fields. >> What purpose does it serve to make copyin_to_xsaves() set that bit, > We try to fake up a memory area which is supposed to be composed by XSAVES > instruction. My code is just trying to do what the XSAVES do. No. copyin_to_xsaves() copies data into an *existing* XSAVES-formatted buffer. If you want to change what it does, fine, but that's not what it does or tries to do today. >> other than helping to hide bugs? > Why do you think it hide the bug? In contrast, I think my patch fixes what the > bug really is. The memory area we fake up is bug, we should fix it there. Yu-cheng found the bug. That bug will probably manifest in other code paths than copyin_to_xsaves(). If we did your patch, it would hide the bug in those other code paths.