All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lai Jiangshan <laijs@cn.fujitsu.com>
To: mingo@redhat.com, hpa@zytor.com, linux-kernel@vger.kernel.org,
	tglx@linutronix.de, hpa@linux.intel.com
Cc: linux-tip-commits@vger.kernel.org
Subject: Re: [tip:x86/alternatives] x86, alternatives: Use 16-bit numbers for cpufeature index
Date: Fri, 25 Jun 2010 17:20:47 +0800	[thread overview]
Message-ID: <4C2474EF.4050902@cn.fujitsu.com> (raw)
In-Reply-To: <tip-f88731e3068f9d1392ba71cc9f50f035d26a0d4f@git.kernel.org>

tip-bot for H. Peter Anvin wrote:
> Commit-ID:  f88731e3068f9d1392ba71cc9f50f035d26a0d4f
> Gitweb:     http://git.kernel.org/tip/f88731e3068f9d1392ba71cc9f50f035d26a0d4f
> Author:     H. Peter Anvin <hpa@linux.intel.com>
> AuthorDate: Wed, 9 Jun 2010 16:03:09 -0700
> Committer:  H. Peter Anvin <hpa@linux.intel.com>
> CommitDate: Wed, 9 Jun 2010 16:03:09 -0700
> 
> x86, alternatives: Use 16-bit numbers for cpufeature index
> 
> We already have cpufeature indicies above 255, so use a 16-bit number
> for the alternatives index.  This consumes a padding field and so
> doesn't add any size, but it means that abusing the padding field to
> create assembly errors on overflow no longer works.  We can retain the
> test simply by redirecting it to the .discard section, however.
> 

My machine hits "invalid opcode" at *prepare_to_copy+0x79,
and it can't boot up.

(gdb) l *prepare_to_copy+0x79
0xc0101789 is in prepare_to_copy (/home/njubee/work/linux-2.6-tip/arch/x86/include/asm/xsave.h:118).
113
114     static inline void fpu_xsave(struct fpu *fpu)
115     {
116             /* This, however, we can work around by forcing the compiler to select
117                an addressing mode that doesn't require extended registers. */
118             __asm__ __volatile__(".byte " REX_PREFIX "0x0f,0xae,0x27"
119                                  : : "D" (&(fpu->state->xsave)),
120                                      "a" (-1), "d"(-1) : "memory");
121     }
122     #endif

It can boot up if this patch is reverted.
Does this patch change the return value of "use_xsave()"

cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 15
model           : 4
model name      : Intel(R) Pentium(R) D CPU 2.80GHz
stepping        : 8
cpu MHz         : 2800.120
cache size      : 1024 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 5
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss constant_tsc pebs bts tsc_reliable pni ds_cpl
bogomips        : 5600.24
clflush size    : 64
cache_alignment : 128
address sizes   : 36 bits physical, 48 bits virtual
power management:

processor       : 1
vendor_id       : GenuineIntel
cpu family      : 15
model           : 4
model name      : Intel(R) Pentium(R) D CPU 2.80GHz
stepping        : 8
cpu MHz         : 2800.120
cache size      : 1024 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 5
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss constant_tsc pebs bts tsc_reliable pni ds_cpl
bogomips        : 5574.36
clflush size    : 64
cache_alignment : 128
address sizes   : 36 bits physical, 48 bits virtual
power management:

  parent reply	other threads:[~2010-06-25  9:20 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <tip-*@git.kernel.org>
2009-12-12  0:16 ` [tip:x86/urgent] nvram: Fix write beyond end condition; prove to gcc copy is safe tip-bot for H. Peter Anvin
2009-12-15 23:18 ` [tip:x86/urgent] x86, msr/cpuid: Register enough minors for the MSR and CPUID drivers tip-bot for H. Peter Anvin
2010-02-19  6:21 ` [tip:x86/setup] x86-64, setup: Inhibit decompressor output if video info is invalid tip-bot for H. Peter Anvin
2010-02-19 21:41 ` [tip:x86/setup] x86, setup: Don't skip mode setting for the standard VGA modes tip-bot for H. Peter Anvin
2010-06-10  0:10 ` [tip:x86/alternatives] x86, alternatives: Use 16-bit numbers for cpufeature index tip-bot for H. Peter Anvin
2010-06-11 18:24   ` tip-bot for H. Peter Anvin
2010-06-25  9:20   ` Lai Jiangshan [this message]
2010-06-25 15:35     ` H. Peter Anvin
2010-06-28  7:58       ` Lai Jiangshan
2010-06-28 18:58         ` H. Peter Anvin
2010-06-28 19:06         ` H. Peter Anvin
2010-06-29  4:58           ` Lai Jiangshan
2010-06-29  7:07     ` [tip:x86/alternatives] x86, alternatives: correct obsolete use of "u8" in static_cpu_has() tip-bot for H. Peter Anvin
2010-06-29  7:06   ` [tip:x86/alternatives] x86, alternatives: Use 16-bit numbers for cpufeature index tip-bot for tip-bot for H. Peter Anvin
2010-06-29  9:15     ` Ingo Molnar
2010-06-29 15:33       ` H. Peter Anvin
2010-07-07 17:45   ` tip-bot for H. Peter Anvin
2010-07-20  2:06 ` [tip:x86/cpu] x86, cpu: Clean up formatting in cpufeature.h, remove override tip-bot for H. Peter Anvin
2010-07-20  2:06 ` [tip:x86/cpu] x86, cpu: Split addon_cpuid_features.c tip-bot for H. Peter Anvin
2010-08-12  6:12 ` [tip:x86/urgent] x86, asm: Refactor atomic64_386_32.S to support old binutils and be cleaner tip-bot for Luca Barbieri
2010-08-12 12:15   ` Luca Barbieri
2010-08-12 14:05     ` H. Peter Anvin
2010-08-12 15:18       ` Luca Barbieri
2010-08-12 15:33   ` [tip:x86/urgent] x86, asm: Use a lower case name for the end macro in atomic64_386_32.S tip-bot for Luca Barbieri
2010-08-19 19:06   ` [tip:x86/urgent] x86, asm: Refactor atomic64_386_32.S to support old binutils and be cleaner D. Stussy
2010-08-19 21:23     ` H. Peter Anvin
2010-08-20  8:21       ` Ingo Molnar
2010-08-25  0:37 ` [tip:x86/bios] x86, bios: By default, reserve the low 64K for all BIOSes tip-bot for H. Peter Anvin
2010-08-26  0:12   ` [tip:x86/bios] x86, bios: Make the x86 early memory reservation a kernel option tip-bot for H. Peter Anvin
2010-09-17 23:46 ` [tip:x86/idle] x86, mwait: Move mwait constants to a common header file tip-bot for H. Peter Anvin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4C2474EF.4050902@cn.fujitsu.com \
    --to=laijs@cn.fujitsu.com \
    --cc=hpa@linux.intel.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tip-commits@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.