Re: LFENCE instruction (was: [rfc][patch 3/3] x86: optimise barriers)

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Nick Piggin
Date: Tuesday, October 16, 2007 - 3:29 pm

On Tue, Oct 16, 2007 at 12:33:54PM +0200, Mikulas Patocka wrote:

No. In Linux kernel, rmb() means that all previous loads, including to
any IO regions, will be executed before any subsequent load.

How can you possibly get rid of lfence from there just because you may
happen to *know* that it isn't used (btw. the IO serialisation isn't for
kernel data structures, it is for actual IO operations, generally).

Doing that would lead to an unmaintainable mess. If drivers don't need rmb,
then they don't call it.
-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: LFENCE instruction, H. Peter Anvin, (Tue Oct 16, 8:42 am)
Re: LFENCE instruction, Mikulas Patocka, (Tue Oct 16, 2:25 pm)
Re: LFENCE instruction (was: [rfc][patch 3/3] x86: optimis ..., Nick Piggin, (Tue Oct 16, 3:29 pm)