[S390] Small barrier() and cpu_relax() cleanup.
authorHeiko Carstens <heiko.carstens@de.ibm.com>
Mon, 5 Feb 2007 20:17:20 +0000 (21:17 +0100)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Mon, 5 Feb 2007 20:17:20 +0000 (21:17 +0100)
cpu_relax() has barrier() semantics hence there is no need to use both
of them in conjunction in sclp_sync_wait(). Also change cpu_relax()
so it's more obvious that it has barrier semantics.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
drivers/s390/char/sclp.c
include/asm-s390/processor.h

index 027cdc18df31409fc8485334872cccff6bbbf97e..c1dd19bb7bf85e44522c0fa1eee1b5d3ac43cc37 100644 (file)
@@ -433,7 +433,6 @@ sclp_sync_wait(void)
                    get_clock() > timeout &&
                    del_timer(&sclp_request_timer))
                        sclp_request_timer.function(sclp_request_timer.data);
-               barrier();
                cpu_relax();
        }
        local_irq_disable();
index cbbedc63ba25bac653aba4363ea5e1c6c2822fbb..5dc6b938895f451ba7df408b9e9efc31c3b164c5 100644 (file)
@@ -201,9 +201,8 @@ unsigned long get_wchan(struct task_struct *p);
 static inline void cpu_relax(void)
 {
        if (MACHINE_HAS_DIAG44)
-               asm volatile("diag 0,0,68" : : : "memory");
-       else
-               barrier();
+               asm volatile("diag 0,0,68");
+       barrier();
 }
 
 /*