Re: newbus IO ordering semantics - moving forward



On 10/27/2011 1:28 PM, Adrian Chadd wrote:
* Make the bus default to use ordered semantics, much like what Linux
does - ie, all IO read/writes (io or memory) are in-order and flushed
with a barrier;
* Add an option which allows the driver to request a region with
loose-running/lazy semantics, what we're supposed to have now, and
then leave barriers up to the driver;
* Print out something nice and loud if a driver decides to use the
lazy/loose semantics, which may result in unpredictable behaviour on
non-{i386,amd64}.

I'd appreciate some feedback/comments before I go off and code all of this up.



No. Please don't change the current semantics which are well understood if only fitfully adhered to. This would put us in the position of having some drivers possibly work slower because they didn't do the "lazy" request.

I also am not sure I agree with your characterization of linux semantics.
_______________________________________________
freebsd-arch@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-arch
To unsubscribe, send any mail to "freebsd-arch-unsubscribe@xxxxxxxxxxx"



Relevant Pages

  • Re: [RFD] BIO_RW_BARRIER - what it means for devices, filesystems, and dm/md.
    ... then just reuses the empty-bio approach to queue an empty barrier, ... This is the first time the device driver ... * no fs request uses ELEVATOR_INSERT_FRONT and thus no fs ... * Check whether this bio extends beyond the end of the device. ...
    (Linux-Kernel)
  • [PATCH 2.6.28-rc6] block: internal dequeue shouldnt start timer
    ... Barrier code dequeues the original ... barrier request but doesn't passes the request itself to lower level ... driver, only broken down proxy requests; ... barrier code goes through the same dequeue path and timeout timer is ...
    (Linux-Kernel)
  • Re: newbus IO ordering semantics - moving forward
    ... Make the bus default to use ordered semantics, ... with a barrier; ... then leave barriers up to the driver; ... Having it whine on lazy will ensure that lazy is never used since such a message will "scare the horses" and people will stamped to using the synchronous one. ...
    (freebsd-arch)
  • Re: True fsync() in Linux (on IDE)
    ... All these ATA fsync() vs. write cache issues have been open for much too ... May I ask that the information whether a particular driver (file system, ... If I recall correctly from earlier patches, the barrier stuff is 1. ...
    (Linux-Kernel)
  • Re: Moulinearn crossing crash - a bit of sense at last
    ... >>understand user interface design. ... driver, who will be concentrating on the push button and barriers. ... "The sheriff said drivers were not warned that the barrier could go up ... The impression that it is correct and safe to proceed if the barrier ...
    (uk.railway)