On Thu, Jun 18, 2009 at 20:47, Paul Mackerras wrote: > Mike Frysinger writes: >> On Sat, Jun 13, 2009 at 03:10, Paul Mackerras wrote: >> > +typedef struct { >> > + long long counter; >> > +} atomic64_t; >> >> lack of volatile seems odd compared to: >> include/linux/types.h: >> typedef struct { >> volatile int counter; >> } atomic_t; > > It's only accessed under a spinlock, so I don't think it needs to be > volatile. On UP it's accessed within local_irq_save/restore which > should also be compiler barriers and prevent memory access reordering, > so again volatile isn't needed.
i'm not suggesting it is needed, i'm saying it's a bit confusing. a simple comment above the atomic64_t type with your simple explanation here would go a long way. -mike _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev