Bug#544145: 32bit binaries on x86_64/Xen segfaults in syscall-vdso
- To: Jeremy Fitzhardinge <jeremy@goop.org>
- Cc: linux-kernel@vger.kernel.org, xen-devel@lists.xensource.com, 544145@bugs.debian.org, Keir Fraser <keir.fraser@eu.citrix.com>
- Subject: Bug#544145: 32bit binaries on x86_64/Xen segfaults in syscall-vdso
- From: Bastian Blank <waldi@debian.org>
- Date: Fri, 4 Sep 2009 00:36:03 +0200
- Message-id: <[🔎] 20090903223603.GA19945@wavehammer.waldi.eu.org>
- Mail-followup-to: Bastian Blank <waldi@debian.org>, Jeremy Fitzhardinge <jeremy@goop.org>, linux-kernel@vger.kernel.org, xen-devel@lists.xensource.com, 544145@bugs.debian.org, Keir Fraser <keir.fraser@eu.citrix.com>
- Reply-to: Bastian Blank <waldi@debian.org>, 544145@bugs.debian.org
- In-reply-to: <[🔎] 4AA03DE8.40706@goop.org>
- References: <20090830181637.GA7155@wavehammer.waldi.eu.org> <[🔎] 4AA02C57.30106@goop.org> <[🔎] 20090903220252.GA19309@wavehammer.waldi.eu.org> <[🔎] 4AA03DE8.40706@goop.org>
On Thu, Sep 03, 2009 at 03:06:32PM -0700, Jeremy Fitzhardinge wrote:
> On 09/03/09 15:02, Bastian Blank wrote:
> > AFAIK only AMD support the syscall instruction, so yes it is an AMD
> > machine. And yes, disabling the only thing that make the glibc call this
> > instruction works around it.
> The bug actually appears to be in xen_sysret32, ie the crash happens on
> the way out of the kernel.
This function looks weird. It tries to restores the user code segment.
But the documentation from AMD explicitely stat that the CS and SS are
restored from the STAR register.
Bastian
--
Killing is stupid; useless!
-- McCoy, "A Private Little War", stardate 4211.8
Reply to: