lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 12 Oct 2009 22:52:08 +0200
From:	Ingo Molnar <mingo@...e.hu>
To:	Jeremy Fitzhardinge <jeremy@...p.org>
Cc:	Bastian Blank <bastian@...di.eu.org>,
	Ingo Molnar <mingo@...hat.com>,
	the arch/x86 maintainers <x86@...nel.org>,
	Stable Kernel <stable@...nel.org>,
	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
	Xen-devel <xen-devel@...ts.xensource.com>
Subject: Re: [Xen-devel] Re: [PATCH] xen: Disable stack protector for irq
	helper


* Jeremy Fitzhardinge <jeremy@...p.org> wrote:

> On 10/07/09 09:35, Bastian Blank wrote:
> > On Tue, Oct 06, 2009 at 12:01:12PM -0700, Jeremy Fitzhardinge wrote:
> >   
> >> On 10/05/09 20:30, Bastian Blank wrote:
> >>     
> >>> The original version saves ecx, but not edx. Both are official
> >>> caller-saved registers.
> >>>       
> >> Hm.  It doesn't save edx because that can be half of a 64-bit return
> >> value, and in general both eax and edx are marked clobbered.
> >>     
> > Then it will be also wrong for functions returning void. They may
> > clobber eax but never set it to something correct.
> >   
> 
> The asm is marked as clobbering eax/edx, so the compiler knows it can't
> rely on them being preserved.  void functions are not expected to
> preserve them either, so it all works out (or if they are, the compiler
> will do the right thing).
> 
> Or did you have something else in mind?
> 
> 
> >>                                                               Except one
> >> place; does the patch below help?
> >>     
> > Don't you need to remove the complete wrapper setup to get a correct
> > result? (And type safety.)
> >   
> 
> Which wrapper?  Do you mean the callee-save function stuff?  Or
> something else?
> 
> It compiles cleanly for me and appears to work.  Does it solve the
> problem for you?
> 
> >>> Well, my call stack say something different. It crashs during early
> >>> startup without a console. The modifications to the function pointers is
> >>> done much later.
> >>>       
> >> You're right.  But you're holding out on me; can I see your backtrace? 
> >>     
> > Well, I'm traveling and it needs some time to recreate a broken kernel.
> >
> >   
> >> And the disassembly of the troublesome code (both the Xen function and
> >> the calling function)?
> >>     
> > That is easy.
> >   
> 
> OK, I see, thanks.

ping - any update about this fix? Since it fixes a real crash it would 
be nice to fix this for .32.

	Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ