On 02/01/2012 11:09 AM, David Miller wrote:
Torvald Riegel & I were told that was kernel policy when we brought up the upcoming bitfield semantic changes with some of the linux kernel folks last year.From: Michael Matz<matz@xxxxxxx> Date: Wed, 1 Feb 2012 18:41:05 +0100 (CET)One problem is that it's not a new problem, GCC emitted similar code since about forever, and still they turned up only now (well, probably because ia64 is dead, but sparc64 should have similar problems).Indeed, on sparc64 it does do the silly 64-bit access too: wrong: ldx [%o0+8], %g2 sethi %hi(2147483648), %g1 or %g2, %g1, %g1 jmp %o7+8 stx %g1, [%o0+8] Personally I've avoided C bitfields like the plague in any code I've written.
Regardless of the kernel team's policy WRT bitfields, I believe fixing the semantics to avoid creation of data races in bitfields is going to be important. I'm hoping Aldy can return to that task soon and he and Richi can come to some agreement on the implementation with gcc-4.8 as a target.
jeff -- To unsubscribe from this list: send the line "unsubscribe linux-ia64" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html