From mboxrd@z Thu Jan 1 00:00:00 1970 References: <35dbd2d8996bf96d65c969836bd2e172@terzarima.net> In-Reply-To: Mime-Version: 1.0 (iPhone Mail 8B117) Content-Type: multipart/alternative; boundary=Apple-Mail-5-754484775 Message-Id: <4FB02A06-85AA-45F8-9334-9B956FB11F86@gmail.com> Content-Transfer-Encoding: 7bit From: Nemo Date: Thu, 28 Oct 2010 22:55:25 +0200 To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Subject: Re: [9fans] A little more ado about async Tclunk Topicbox-Message-UUID: 70c42968-ead6-11e9-9d60-3106f5b1d025 --Apple-Mail-5-754484775 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=us-ascii i have decent servers that wait for clunk to operate on written data once it= 's complete. all octopus spoolers do that.=20 On Oct 28, 2010, at 10:32 PM, Venkatesh Srinivas wrote: > On Thu, Oct 28, 2010 at 4:18 PM, Charles Forsyth w= rote: > the race is that there's nothing to say that the clunk completes before th= e > process continues on to do something more, including some action that depe= nds on the clunk completing, > such as simply repeating the open. that open can fail if the mode or the n= ame > imposes particular constraints; constraints that depend on the order of ev= ents as > expressed by the process. >=20 > Of course, we don't want the process to wait.=20 >=20 > On a 'decent' file server, TClunk doesn't do anything that a process would= have to wait for, except invalidate the FID; (I exclude ORCLOSE and OEXCL f= iles here). Guarding this with MCACHE means that there was already a stateme= nt from the user "I think that this file server is a decent character.". You= can definitely write file servers on which TClunk does things -- ones in wh= ich the right combination of opens and clunks fires the missiles, for exampl= e. This is not for those file servers.=20 >=20 > On a decent server, since clunk cannot fail and won't launch the missiles,= you can't really do anything that would depend on the result anyway... >=20 > Seem reasonable? > -- vs --Apple-Mail-5-754484775 Content-Transfer-Encoding: 7bit Content-Type: text/html; charset=utf-8
i have decent servers that wait for clunk to operate on written data once it's complete. all octopus spoolers do that. 

On Oct 28, 2010, at 10:32 PM, Venkatesh Srinivas <me@acm.jhu.edu> wrote:

On Thu, Oct 28, 2010 at 4:18 PM, Charles Forsyth <forsyth@terzarima.net> wrote:
the race is that there's nothing to say that the clunk completes before the
process continues on to do something more, including some action that depends on the clunk completing,
such as simply repeating the open. that open can fail if the mode or the name
imposes particular constraints; constraints that depend on the order of events as
expressed by the process.

Of course, we don't want the process to wait. 

On a 'decent' file server, TClunk doesn't do anything that a process would have to wait for, except invalidate the FID; (I exclude ORCLOSE and OEXCL files here). Guarding this with MCACHE means that there was already a statement from the user "I think that this file server is a decent character.". You can definitely write file servers on which TClunk does things -- ones in which the right combination of opens and clunks fires the missiles, for example. This is not for those file servers. 

On a decent server, since clunk cannot fail and won't launch the missiles, you can't really do anything that would depend on the result anyway...

Seem reasonable?
-- vs
--Apple-Mail-5-754484775--