diff mbox series

cpu: msr: do not check SYSCALL MSRs

Message ID 1522993120-4070-1-git-send-email-alex.hung@canonical.com
State Accepted
Headers show
Series cpu: msr: do not check SYSCALL MSRs | expand

Commit Message

Alex Hung April 6, 2018, 5:38 a.m. UTC
This includes IA32_STAR, IA32_LSTAR and IA32_FMASK registers

Signed-off-by: Alex Hung <alex.hung@canonical.com>
---
 src/cpu/msr/msr.c | 6 ++++++
 1 file changed, 6 insertions(+)

Comments

Ivan Hu April 11, 2018, 8:58 a.m. UTC | #1
On 04/06/2018 01:38 PM, Alex Hung wrote:
> This includes IA32_STAR, IA32_LSTAR and IA32_FMASK registers
>
> Signed-off-by: Alex Hung <alex.hung@canonical.com>
> ---
>  src/cpu/msr/msr.c | 6 ++++++
>  1 file changed, 6 insertions(+)
>
> diff --git a/src/cpu/msr/msr.c b/src/cpu/msr/msr.c
> index 362bb33..70d8965 100644
> --- a/src/cpu/msr/msr.c
> +++ b/src/cpu/msr/msr.c
> @@ -294,9 +294,12 @@ static const msr_info AMD_MSRs[] = {
>  	{ "PAT",			0x00000277,	0x0707070707070703ULL, NULL },
>  	{ "MTRR_DEF_TYPE",		0x000002ff,	0x0000000000000c0fULL, NULL },
>  	{ "EFER",			0xc0000080,	0x0000000000000d01ULL, NULL },
> +	/* Do not check syscall MSRs, they will be different on
> +	 * each CPU, so checking them across CPUs is incorrect
>  	{ "STAR",			0xc0000081,	0xffffffffffffffffULL, NULL },
>  	{ "LSTAR",			0xc0000082,	0xffffffffffffffffULL, NULL },
>  	{ "FMASK",			0xc0000084,	0xffffffffffffffffULL, NULL },
> +	 */
>  	//{ "FS_BASE",			0xc0000100,	0xffffffffffffffffULL, NULL },
>  	//{ "GS_BASE",			0xc0000101, 	0xffffffffffffffffULL, NULL },
>  	{ "KERNEL_GS_BASE",		0xc0000102, 	0xffffffffffffffffULL, NULL },
> @@ -437,9 +440,12 @@ static const msr_info IA32_MSRs[] = {
>  	{ "A_PMC6",			0x000004c7,	0xffffffffffffffffULL, NULL },
>  	{ "A_PMC7",			0x000004c8,	0xffffffffffffffffULL, NULL },
>  	{ "EFER",			0xc0000080,	0x0000000000000d01ULL, NULL },
> +	/* Do not check syscall MSRs, they will be different on
> +	 * each CPU, so checking them across CPUs is incorrect
>  	{ "STAR",			0xc0000081,	0xffffffffffffffffULL, NULL },
>  	{ "LSTAR",			0xc0000082,	0xffffffffffffffffULL, NULL },
>  	{ "FMASK",			0xc0000084,	0xffffffffffffffffULL, NULL },
> +	 */
>  	//{ "FS_BASE",			0xc0000100,	0xffffffffffffffffULL, NULL },
>  	//{ "GS_BASE",			0xc0000101, 	0xffffffffffffffffULL, NULL },
>  	{ "KERNEL_GS_BASE",		0xc0000102, 	0xffffffffffffffffULL, NULL },

Acked-by: Ivan Hu <ivan.hu@canonical.com>
Colin Ian King April 11, 2018, 9:01 a.m. UTC | #2
On 06/04/18 06:38, Alex Hung wrote:
> This includes IA32_STAR, IA32_LSTAR and IA32_FMASK registers
> 
> Signed-off-by: Alex Hung <alex.hung@canonical.com>
> ---
>  src/cpu/msr/msr.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/src/cpu/msr/msr.c b/src/cpu/msr/msr.c
> index 362bb33..70d8965 100644
> --- a/src/cpu/msr/msr.c
> +++ b/src/cpu/msr/msr.c
> @@ -294,9 +294,12 @@ static const msr_info AMD_MSRs[] = {
>  	{ "PAT",			0x00000277,	0x0707070707070703ULL, NULL },
>  	{ "MTRR_DEF_TYPE",		0x000002ff,	0x0000000000000c0fULL, NULL },
>  	{ "EFER",			0xc0000080,	0x0000000000000d01ULL, NULL },
> +	/* Do not check syscall MSRs, they will be different on
> +	 * each CPU, so checking them across CPUs is incorrect
>  	{ "STAR",			0xc0000081,	0xffffffffffffffffULL, NULL },
>  	{ "LSTAR",			0xc0000082,	0xffffffffffffffffULL, NULL },
>  	{ "FMASK",			0xc0000084,	0xffffffffffffffffULL, NULL },
> +	 */
>  	//{ "FS_BASE",			0xc0000100,	0xffffffffffffffffULL, NULL },
>  	//{ "GS_BASE",			0xc0000101, 	0xffffffffffffffffULL, NULL },
>  	{ "KERNEL_GS_BASE",		0xc0000102, 	0xffffffffffffffffULL, NULL },
> @@ -437,9 +440,12 @@ static const msr_info IA32_MSRs[] = {
>  	{ "A_PMC6",			0x000004c7,	0xffffffffffffffffULL, NULL },
>  	{ "A_PMC7",			0x000004c8,	0xffffffffffffffffULL, NULL },
>  	{ "EFER",			0xc0000080,	0x0000000000000d01ULL, NULL },
> +	/* Do not check syscall MSRs, they will be different on
> +	 * each CPU, so checking them across CPUs is incorrect
>  	{ "STAR",			0xc0000081,	0xffffffffffffffffULL, NULL },
>  	{ "LSTAR",			0xc0000082,	0xffffffffffffffffULL, NULL },
>  	{ "FMASK",			0xc0000084,	0xffffffffffffffffULL, NULL },
> +	 */
>  	//{ "FS_BASE",			0xc0000100,	0xffffffffffffffffULL, NULL },
>  	//{ "GS_BASE",			0xc0000101, 	0xffffffffffffffffULL, NULL },
>  	{ "KERNEL_GS_BASE",		0xc0000102, 	0xffffffffffffffffULL, NULL },
> 

Acked-by: Colin Ian King <colin.king@canonical.com>
diff mbox series

Patch

diff --git a/src/cpu/msr/msr.c b/src/cpu/msr/msr.c
index 362bb33..70d8965 100644
--- a/src/cpu/msr/msr.c
+++ b/src/cpu/msr/msr.c
@@ -294,9 +294,12 @@  static const msr_info AMD_MSRs[] = {
 	{ "PAT",			0x00000277,	0x0707070707070703ULL, NULL },
 	{ "MTRR_DEF_TYPE",		0x000002ff,	0x0000000000000c0fULL, NULL },
 	{ "EFER",			0xc0000080,	0x0000000000000d01ULL, NULL },
+	/* Do not check syscall MSRs, they will be different on
+	 * each CPU, so checking them across CPUs is incorrect
 	{ "STAR",			0xc0000081,	0xffffffffffffffffULL, NULL },
 	{ "LSTAR",			0xc0000082,	0xffffffffffffffffULL, NULL },
 	{ "FMASK",			0xc0000084,	0xffffffffffffffffULL, NULL },
+	 */
 	//{ "FS_BASE",			0xc0000100,	0xffffffffffffffffULL, NULL },
 	//{ "GS_BASE",			0xc0000101, 	0xffffffffffffffffULL, NULL },
 	{ "KERNEL_GS_BASE",		0xc0000102, 	0xffffffffffffffffULL, NULL },
@@ -437,9 +440,12 @@  static const msr_info IA32_MSRs[] = {
 	{ "A_PMC6",			0x000004c7,	0xffffffffffffffffULL, NULL },
 	{ "A_PMC7",			0x000004c8,	0xffffffffffffffffULL, NULL },
 	{ "EFER",			0xc0000080,	0x0000000000000d01ULL, NULL },
+	/* Do not check syscall MSRs, they will be different on
+	 * each CPU, so checking them across CPUs is incorrect
 	{ "STAR",			0xc0000081,	0xffffffffffffffffULL, NULL },
 	{ "LSTAR",			0xc0000082,	0xffffffffffffffffULL, NULL },
 	{ "FMASK",			0xc0000084,	0xffffffffffffffffULL, NULL },
+	 */
 	//{ "FS_BASE",			0xc0000100,	0xffffffffffffffffULL, NULL },
 	//{ "GS_BASE",			0xc0000101, 	0xffffffffffffffffULL, NULL },
 	{ "KERNEL_GS_BASE",		0xc0000102, 	0xffffffffffffffffULL, NULL },