[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-users] Need help with -PIE patch


  • To: xen-users@xxxxxxxxxxxxxxxxxxx
  • From: Benjamin Schweikert <b.schweikert@xxxxxxxxxxxxxx>
  • Date: Fri, 13 May 2011 17:58:31 +0200
  • Delivery-date: Fri, 13 May 2011 09:07:29 -0700
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject :content-type:content-transfer-encoding; b=XSTYjMQRAB07bhmbZgOgeXPn7n0/9q1NsT+bZKD8VJEhyUt2dAvMBhOUMu5+mCNXbV duGxOR7o2h7pFJQFMWvLiWGbhXYrpGJYGHiU8wA8RoAsQbHWeF9p2ZDaeVVopTrdwIJp xfesaY0fw7XebAKiMyZKHld98BrADL8A86t6U=
  • List-id: Xen user discussion <xen-users.lists.xensource.com>

Hi,
me and a friend of mine working on a patch with which xen-tools build with the CFLAGS -fpie and -stack-protection. We saw, that everything build expect of xen.detect. We developed a patch with which xen.detect builds and we can execute the binary after that, but we dont get the right information, that for example we are running a PV fedora domain. Maybe someone, who is better in assambler than we are can give us some hints.

thanx and bye

Ben

xen-detect: Change assembly cpuinfo code that allows this to be built with 
-fPIC.

diff -r 4b0692880dfa tools/misc/xen-detect.c
--- a/tools/misc/xen-detect.c   Thu May 05 17:40:34 2011 +0100
+++ b/tools/misc/xen-detect.c   Fri May 06 17:14:46 2011 +0200
@@ -41,8 +41,20 @@
                   int pv_context)
 {
     asm volatile (
-        "test %1,%1 ; jz 1f ; ud2a ; .ascii \"xen\" ; 1: cpuid"
-        : "=a" (*eax), "=b" (*ebx), "=c" (*ecx), "=d" (*edx)
+        "test %1,%1 ; jz 1f ; ud2a ; .ascii \"xen\" ;"
+#if defined(__PIC__)&&  defined(__i386__)
+        "1: pushl %%ebx;"
+        "cpuid;"
+        "movl %%ebx,%%esi;"
+        "popl %%ebx"
+        : "=S" (*ebx),
+#else
+        "1: cpuid"
+        : "=b" (*ebx),
+#endif
+          "=a" (*eax),
+          "=c" (*ecx),
+          "=d" (*edx)
         : "0" (idx), "1" (pv_context) );
 }



_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.