Messages in this thread | | | Date | Mon, 22 Nov 2004 10:24:31 +1100 | From | Paul Mackerras <> | Subject | cachefs broken on ppc64 |
| |
David,
I just tried compiling 2.6.10-rc2-mm2, and just for fun, I turned on cachefs, and found out that cachefs won't build on ppc64. The problem is that it is using xchg() on 16-bit quantities, which we don't support on ppc (32 or 64). Is there a good reason why cachefs_super.ujnl_serial has to be 16 bits rather than 32?
It worries me a bit that you are using xchg() so much, actually. It feels like you are trying to be clever and do things without taking any locks, but there are no memory barriers anywhere in fs/cachefs that I could see. So I suspect it would have problems on SMP ppc64 or ia64 systems, which have weak memory consistency. Or is there some serialization at a higher level that saves you? (If so, why do you need to use xchg()?)
Paul. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |