LWN.net Logo

Block layer discard requests

Block layer discard requests

Posted Aug 14, 2008 11:22 UTC (Thu) by willy (subscriber, #9762)
In reply to: Block layer discard requests by jzbiciak
Parent article: Block layer discard requests

We guarantee the ordering by making discard requests be soft barriers.


(Log in to post comments)

Reordering requirements

Posted Aug 15, 2008 9:34 UTC (Fri) by pjm (subscriber, #2080) [Link]

What am I missing?  Jon Corbet's article and seanyoung's implementation and possibly willy's
comment above suggest that these trim/punch/discard/... requests are somehow very special in
their reordering requirements, whereas it seems to me that a discard is just the same as a
write: the existing code mustn't reorder any writes to a given block, and the new code mustn't
reorder any write-or-discard requests to a given block.  This shouldn't require any more
barriers or speed penalty than we already have for writes.

(The only difference is that one might use *looser* requirements for reordering discards and
reads for a given block, depending on the semantics of reading a discarded block.)

Reordering requirements

Posted Aug 15, 2008 14:54 UTC (Fri) by willy (subscriber, #9762) [Link]

This was already discussed in the email thread ... overlapping writes are already serialised
by the page lock.  Discard doesn't have a page to lock, so you can't rely on this.

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds