> +#define READ_ONCE(p) \ > + typeof(p) __val; __read_once_size(&p, &__val, sizeof(__val)); __val; }) > + > +#define ASSIGN_ONCE(val, p) \ > + ({ typeof(p) __val; __val = val; __assign_once_size(&p, &__val, sizeof(__val)); __val; }) Minor style nit: is it necessary to name a non-pointer variable "p"? I expect typeof(p) to be a pointer type. (The other fun style question, which is a lot less minor, is whether ASSIGN_ONCE should be (src,dst) as above, or (dst,src) like = and <string.h>.) -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html