Re: [block IO crash] Re: 2.6.39-rc5-git2 boot crashs

From: Tejun Heo
Date: Wed May 04 2011 - 10:08:05 EST


Hello, Christoph.

On Wed, May 04, 2011 at 09:04:19AM -0500, Christoph Lameter wrote:
> The above should not happen. If a kernel config indicates that there is no
> cmpxchg16b/cmpxchg8b available then we need to not compile the path that
> uses cmpxchg8b/cmpxchg16b. Guess we need CMPXCHG_DOUBLE_LOCAL or so.

But regardless of that, if the code requires irq safety it should be
using irqsafe_* operations. CMPXCHG_LOCAL is an optimization hint and
doesn't necessarily imply stronger synchronization guarantees. In
addition, there's no downside to using irqsafe_* variant when CPU
actually supports cmpxchg[_double]. So, let's first fix that and
think about CMPXCHG[_DOUBLE]_LOCAL or whatnot later.

Thank you.

--
tejun
--
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/