[cap-talk] [CapROS-devel] Rescind vs. sever

Bill Frantz frantz at pwpconsult.com
Thu Nov 29 02:13:33 EST 2007


david.hopwood at industrial-designers.co.uk (David Hopwood) on Wednesday, November 28, 2007 wrote:

>Bill Frantz wrote:
>> The "sever" operation provides a way to make an atomic snapshot of a
>> page or node, with the assurances that the snapshot represents a single
>> instance of time, and that the snapshot will not change without use of
>> the new page or node key.  Cloning a page or node followed by deleting
>> the old version does not provide these assurances.
>
>Why not? (Assume that the page/node implementation is trusted and
>correct.)

While you are copying a page of data, another processor, or DMA device,
can be changing it, making it possible that the copy has a mixture of
data.  For example, if it changes addresses p+2, p+1, and then p+3 in
that order, and you copy p+1 followed by p+2 and then p+3, you could get
the old p+1, and the new p+2 and p+3, a state the original page never
held.

When you sever, access is removed from other processors and DMA devices
atomically, and this problem does not occur.

Cheers - Bill

-------------------------------------------------------------------------
Bill Frantz        | The first thing you need when  | Periwinkle
(408)356-8506      | using a perimeter defense is a | 16345 Englewood Ave
www.pwpconsult.com | perimeter.                     | Los Gatos, CA 95032



More information about the cap-talk mailing list