]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
thp, s390: add missing earlyclobber to inline assembly
authorGerald Schaefer <gerald.schaefer@de.ibm.com>
Wed, 26 Sep 2012 01:33:28 +0000 (11:33 +1000)
committerStephen Rothwell <sfr@canb.auug.org.au>
Thu, 27 Sep 2012 07:26:05 +0000 (17:26 +1000)
The constraints of the rrbm inline assembly are missing two
earlyclobber operands, which can lead to an addressing exception
depending on compiler register allocation decisions.

Signed-off-by: Gerald Schaefer <gerald.schaefer@de.ibm.com>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
arch/s390/include/asm/pgtable.h

index 2fdab82e70d9591202f2b8024f9c6e2a700f990e..ed14fc2db6e0e98abf5805760eb92602bb5a3547 100644 (file)
@@ -1296,7 +1296,8 @@ static inline int pmdp_test_and_clear_young(struct vm_area_struct *vma,
                        "       ogr     %1,%0\n"
                        "       la      %3,0(%4,%3)\n"
                        "       brct    %2,0b\n"
-                       : "=d" (tmp), "+d" (rc), "+d" (counter), "+a" (pmd_addr)
+                       : "=&d" (tmp), "+&d" (rc), "+d" (counter),
+                         "+a" (pmd_addr)
                        : "a" (64 * 4096UL) : "cc");
                rc = !!rc;
        } else {