Subject: Re: M:N and blocking ops without SA, AIO
To: Jonathan Stone <jonathan@Pescadero.dsg.stanford.edu>
From: Matt Thomas <matt@3am-software.com>
List: tech-kern
Date: 03/01/2007 18:02:42
Jonathan Stone wrote:
> In message <45E77377.8040308@3am-software.com>Matt Thomas writes
>> Jason Thorpe wrote:
>>
>> Me too.  I'd like to see kcont, softintr, and callouts all use a similar
>> if not the same callback signature.
> 
> Hi Matt,
> 
> One of hte key aspects of kcont(9) is that it takes a callback similar
> to softints, or callouts, *plus* something more. I called that
> "something more" an "environment" variable, because that's the common
> term in theoretical study of programming languages.
> 
> Think currying. If I said "currying!", Thor would appreciate why
> kcont(9) callbacks have one extra argument than softintr or callout
> callbacks; but I'm not sure who else here would.
> 
> Yes, you could remove the extra argument, dumbing donw kcont(9)
> callbacks to be just like sofintr callbacks; but that would cripple
> the uses for which I designed kcont(9), and for which I used a
> predecessor: splice() or sendfile().
> 
> I'd be happy to see generic softintr callbacks take an extra argument.
> But that argument would be NULL for all existing, non-kcont uses.
> That sounds like wasted verbiage to me; how about you?

Is there any reason why, when a callout triggers, it wouldn't be delivered
via a kcont?  Or if you need a softintr?

What I am saying that callout and softintr are specific invokation of kconts.
I see no reason why they can't all use the same mechanism for delivery?

I am not saying dumb down kconts, but raising the other up.

-- 
Matt Thomas                     email: matt@3am-software.com
3am Software Foundry              www: http://3am-software.com/bio/matt/
Cupertino, CA              disclaimer: I avow all knowledge of this message.