diff options
Diffstat (limited to 'arch/parisc/kernel')
-rw-r--r-- | arch/parisc/kernel/syscall.S | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/arch/parisc/kernel/syscall.S b/arch/parisc/kernel/syscall.S index 9505c317818d..a9bc90dc4ae7 100644 --- a/arch/parisc/kernel/syscall.S +++ b/arch/parisc/kernel/syscall.S | |||
@@ -640,7 +640,8 @@ cas_action: | |||
640 | sub,<> %r28, %r25, %r0 | 640 | sub,<> %r28, %r25, %r0 |
641 | 2: stw %r24, 0(%r26) | 641 | 2: stw %r24, 0(%r26) |
642 | /* Free lock */ | 642 | /* Free lock */ |
643 | stw,ma %r20, 0(%sr2,%r20) | 643 | sync |
644 | stw %r20, 0(%sr2,%r20) | ||
644 | #if ENABLE_LWS_DEBUG | 645 | #if ENABLE_LWS_DEBUG |
645 | /* Clear thread register indicator */ | 646 | /* Clear thread register indicator */ |
646 | stw %r0, 4(%sr2,%r20) | 647 | stw %r0, 4(%sr2,%r20) |
@@ -654,7 +655,8 @@ cas_action: | |||
654 | 3: | 655 | 3: |
655 | /* Error occurred on load or store */ | 656 | /* Error occurred on load or store */ |
656 | /* Free lock */ | 657 | /* Free lock */ |
657 | stw,ma %r20, 0(%sr2,%r20) | 658 | sync |
659 | stw %r20, 0(%sr2,%r20) | ||
658 | #if ENABLE_LWS_DEBUG | 660 | #if ENABLE_LWS_DEBUG |
659 | stw %r0, 4(%sr2,%r20) | 661 | stw %r0, 4(%sr2,%r20) |
660 | #endif | 662 | #endif |
@@ -855,7 +857,8 @@ cas2_action: | |||
855 | 857 | ||
856 | cas2_end: | 858 | cas2_end: |
857 | /* Free lock */ | 859 | /* Free lock */ |
858 | stw,ma %r20, 0(%sr2,%r20) | 860 | sync |
861 | stw %r20, 0(%sr2,%r20) | ||
859 | /* Enable interrupts */ | 862 | /* Enable interrupts */ |
860 | ssm PSW_SM_I, %r0 | 863 | ssm PSW_SM_I, %r0 |
861 | /* Return to userspace, set no error */ | 864 | /* Return to userspace, set no error */ |
@@ -865,7 +868,8 @@ cas2_end: | |||
865 | 22: | 868 | 22: |
866 | /* Error occurred on load or store */ | 869 | /* Error occurred on load or store */ |
867 | /* Free lock */ | 870 | /* Free lock */ |
868 | stw,ma %r20, 0(%sr2,%r20) | 871 | sync |
872 | stw %r20, 0(%sr2,%r20) | ||
869 | ssm PSW_SM_I, %r0 | 873 | ssm PSW_SM_I, %r0 |
870 | ldo 1(%r0),%r28 | 874 | ldo 1(%r0),%r28 |
871 | b lws_exit | 875 | b lws_exit |