diff for duplicates of <1282106338.22370.151.camel@pasglop> diff --git a/a/1.txt b/N1/1.txt index dd54c8c..9234d9f 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -91,9 +91,9 @@ index 24cd928..ca64a98 100644 + long tmp; - while ((tmp = sem->count) >= 0) { -- if (tmp == cmpxchg(&sem->count, tmp, +- if (tmp = cmpxchg(&sem->count, tmp, + while ((tmp = atomic_long_read(&sem->count)) >= 0) { -+ if (tmp == cmpxchg((long *)&sem->count, tmp, ++ if (tmp = cmpxchg((long *)&sem->count, tmp, tmp + RWSEM_ACTIVE_READ_BIAS)) { return 1; } @@ -121,7 +121,7 @@ index 24cd928..ca64a98 100644 - tmp = cmpxchg(&sem->count, RWSEM_UNLOCKED_VALUE, + tmp = cmpxchg((long *)&sem->count, RWSEM_UNLOCKED_VALUE, RWSEM_ACTIVE_WRITE_BIAS); - return tmp == RWSEM_UNLOCKED_VALUE; + return tmp = RWSEM_UNLOCKED_VALUE; } @@ -119,9 +128,9 @@ static inline int __down_write_trylock(struct rw_semaphore *sem) */ @@ -132,7 +132,7 @@ index 24cd928..ca64a98 100644 - tmp = atomic_dec_return((atomic_t *)(&sem->count)); + tmp = atomic_long_dec_return(&sem->count); - if (unlikely(tmp < -1 && (tmp & RWSEM_ACTIVE_MASK) == 0)) + if (unlikely(tmp < -1 && (tmp & RWSEM_ACTIVE_MASK) = 0)) rwsem_wake(sem); } @@ -131,17 +140,17 @@ static inline void __up_read(struct rw_semaphore *sem) diff --git a/a/content_digest b/N1/content_digest index f528820..43a348f 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -4,7 +4,7 @@ "ref\020100817.191424.183031381.davem@davemloft.net\0" "From\0Benjamin Herrenschmidt <benh@kernel.crashing.org>\0" "Subject\064-bit ppc rwsem (was: Re: [GIT] Sparc)\0" - "Date\0Wed, 18 Aug 2010 14:38:58 +1000\0" + "Date\0Wed, 18 Aug 2010 04:38:58 +0000\0" "To\0David Miller <davem@davemloft.net>\0" "Cc\0torvalds@linux-foundation.org" paulus@au.ibm.com @@ -107,9 +107,9 @@ "+\tlong tmp;\n" " \n" "-\twhile ((tmp = sem->count) >= 0) {\n" - "-\t\tif (tmp == cmpxchg(&sem->count, tmp,\n" + "-\t\tif (tmp = cmpxchg(&sem->count, tmp,\n" "+\twhile ((tmp = atomic_long_read(&sem->count)) >= 0) {\n" - "+\t\tif (tmp == cmpxchg((long *)&sem->count, tmp,\n" + "+\t\tif (tmp = cmpxchg((long *)&sem->count, tmp,\n" " \t\t\t\t tmp + RWSEM_ACTIVE_READ_BIAS)) {\n" " \t\t\treturn 1;\n" " \t\t}\n" @@ -137,7 +137,7 @@ "-\ttmp = cmpxchg(&sem->count, RWSEM_UNLOCKED_VALUE,\n" "+\ttmp = cmpxchg((long *)&sem->count, RWSEM_UNLOCKED_VALUE,\n" " \t\t RWSEM_ACTIVE_WRITE_BIAS);\n" - " \treturn tmp == RWSEM_UNLOCKED_VALUE;\n" + " \treturn tmp = RWSEM_UNLOCKED_VALUE;\n" " }\n" "@@ -119,9 +128,9 @@ static inline int __down_write_trylock(struct rw_semaphore *sem)\n" " */\n" @@ -148,7 +148,7 @@ " \n" "-\ttmp = atomic_dec_return((atomic_t *)(&sem->count));\n" "+\ttmp = atomic_long_dec_return(&sem->count);\n" - " \tif (unlikely(tmp < -1 && (tmp & RWSEM_ACTIVE_MASK) == 0))\n" + " \tif (unlikely(tmp < -1 && (tmp & RWSEM_ACTIVE_MASK) = 0))\n" " \t\trwsem_wake(sem);\n" " }\n" "@@ -131,17 +140,17 @@ static inline void __up_read(struct rw_semaphore *sem)\n" @@ -204,4 +204,4 @@ " \n" " #endif\t/* __KERNEL__ */" -edc4f97211900a32bd2d96cfc4376c9352ca3fdf9a384c63b6af348a454b7942 +063d2693b1bbc9ef436c875d4468a03d4f0df60432d09b62d296fc3de6cb51d2
diff --git a/a/content_digest b/N2/content_digest index f528820..9e087a2 100644 --- a/a/content_digest +++ b/N2/content_digest @@ -7,10 +7,10 @@ "Date\0Wed, 18 Aug 2010 14:38:58 +1000\0" "To\0David Miller <davem@davemloft.net>\0" "Cc\0torvalds@linux-foundation.org" - paulus@au.ibm.com - linux-kernel@vger.kernel.org - sparclinux@vger.kernel.org akpm@linux-foundation.org + sparclinux@vger.kernel.org + linux-kernel@vger.kernel.org + paulus@au.ibm.com " linuxppc-dev <linuxppc-dev@lists.ozlabs.org>\0" "\00:1\0" "b\0" @@ -204,4 +204,4 @@ " \n" " #endif\t/* __KERNEL__ */" -edc4f97211900a32bd2d96cfc4376c9352ca3fdf9a384c63b6af348a454b7942 +e7f18daf6d16da09309496f4c44fd5865a971a4f46ffadfc884380dfa73c199c
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.