Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 19 Sep 1999 22:42:03 -0700 (PDT)
From:      Matthew Dillon <dillon@apollo.backplane.com>
To:        John-Mark Gurney <gurney_j@efn.org>
Cc:        Peter Wemm <peter@netplex.com.au>, Matthew Jacob <mjacob@feral.com>, Poul-Henning Kamp <phk@critter.freebsd.dk>, dg@root.com, Greg Lehey <grog@lemis.com>, cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org
Subject:   Re: User block device access (was: cvs commit: src/sys/miscfs/specfs spec_vnops.c src/sys/sys vnode.h src/sys/kern vfs_subr.c)
Message-ID:  <199909200542.WAA77463@apollo.backplane.com>
References:  <19990919183556.802C81CA7@overcee.netplex.com.au> <199909191911.MAA73893@apollo.backplane.com> <19990919212227.21537@hydrogen.fircrest.net>

next in thread | previous in thread | raw e-mail | index | archive | help

:hmmm... I think that the application should recieve a signal of some
:sort (such as SIGBUS) if the mmap'd area can't be synced because of a
:write error, of course we would need to have a mechanism for the
:application to find out about the problem...
:
:-- 
:  John-Mark Gurney				Voice: +1 408 975 9651
:  Cu Networking					  

    This would be easy to implement, but it would be difficult for the
    program do anything meaningful with the information when it gets it. 
    We have to the facts that mmap() is an inherently asynchronous medium.
    write() doesn't have to be, though.  In fact, aio makes it fairly easy to
    run bdevs in a write-through mode rather then a write-behind mode
    because programmers who want to run the write asynchronously now can.

    I would argue that aio gives us an excellent 'out' in regards to handling
    bdevs.  We simply change the write-behind to a write-through and 
    implement mmap() (I already have patches for mmap), and the result is
    a bdev implementation that can be extremely useful to a wide set of
    programming problems, including databases.

					-Matt
					Matthew Dillon 
					<dillon@backplane.com>


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199909200542.WAA77463>