Re: [PATCH] atomic_long_t & include/asm-generic/atomic.h V2

From: Christoph Lameter
Date: Tue Dec 13 2005 - 22:01:00 EST


On Tue, 13 Dec 2005, Andrew Morton wrote:

> I dunno, this still looks kludgy. It looks like we couldn't be assed
> implementing atomic_long_t in each architecture ;)

What do you mean by "assed"?

> How about requiring that all 64-bit archs implement atomic64_t and do:

It may be reasonable to have 64 bit arches that are not
capable of 64 bit atomic ops. As far as I can remember sparc was initially
a 32 bit platform without 32 bit atomic ops.

> static inline void atomic_long_set(atomic_long_t *vl, long i)
> {
> /*
> * Do the cast separately to avoid possible cast-as-lval errors
> */
> atomic64_t *v = (atomic64_t *)vl;
> atomic64_set(v, i);
> }

The lval casts only become necessary if you truly define a separate
type. Are the #define statements that bad?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/