Oh, IC.
BTW, looking at syspipe(), it seems to have the
rely-on-values-written-after-waserror issue.


On Tue, Jan 26, 2016 at 7:22 PM, ron minnich <[email protected]> wrote:

> Akaros pipes derive from Plan 9 pipes, which are bidirectional.
>
> ron
>
> On Tue, Jan 26, 2016 at 5:50 PM 'Davide Libenzi' via Akaros <
> [email protected]> wrote:
>
>> This is what you get on Linux if you do that?
>>
>> $ ./zpipe
>>
>> RDFD=3  WRFD=4
>> pipe write to fd[0] (should fail): Bad file descriptor
>>
>> POSIX leaves as "unspecified" doing the contrary:
>>
>> http://pubs.opengroup.org/onlinepubs/009695399/functions/pipe.html
>>
>>
>>
>> [zpipe.c]
>>
>> #include <unistd.h>
>> #include <stdio.h>
>> #include <fcntl.h>
>>
>> int main(int ac, char **av)
>> {
>>     int fd[2];
>>
>>     if (pipe(fd)) {
>>         perror("pipe");
>>         return 1;
>>     }
>>     printf("RDFD=%d  WRFD=%d\n", fd[0], fd[1]);
>>
>>     if (write(fd[0], "w", 1) != 1) {
>>         perror("pipe write to fd[0] (should fail)");
>>         return 1;
>>     }
>>
>>     return 0;
>> }
>>
>>
>> On Tue, Jan 26, 2016 at 5:30 PM, Davide Libenzi <[email protected]>
>> wrote:
>>
>>> Does that work (pipe read side is supposed to be fd[0] and write side
>>> fd[1])?
>>>
>>>
>>>
>>> On Tue, Jan 26, 2016 at 5:20 PM, ron minnich <[email protected]> wrote:
>>>
>>>> Oh, just for fun, I included a simple strace program in tests.
>>>>
>>>>
>>>> https://github.com/rminnich/akaros/commit/d2d2b0c09b44d2d2df8966a12d257bd857430bae
>>>>
>>>> On Tue, Jan 26, 2016 at 4:12 PM ron minnich <[email protected]> wrote:
>>>>
>>>>> It's now dumping data correctly, PTAL
>>>>>
>>>>> https://github.com/rminnich/akaros/commit/97832e05ba2524579d1bbef4ef71299208030dc2
>>>>>
>>>>> On Tue, Jan 26, 2016 at 9:48 AM ron minnich <[email protected]>
>>>>> wrote:
>>>>>
>>>>>> updated to dump data from read and write system calls, just to show
>>>>>> how it's done.
>>>>>>
>>>>>> If this looks ok it's not a big deal to add symbolic dumps of stuff
>>>>>> like open modes, etc.
>>>>>>
>>>>>> in the limit we can drive the trace overhead per target system call
>>>>>> to below one. The plan 9 work I did got it down to about 4, lower than 
>>>>>> the
>>>>>> strace ratio of about 25.
>>>>>>
>>>>>> It also means, now that we can export file systems from akaros, that
>>>>>> on a linux system, stracing an akaros process works like this:
>>>>>> import akaros /proc akproc
>>>>>> cat akproc/pid/strace
>>>>>>
>>>>>> All done. Distributed systems are nice. Unix, come to think of it, is
>>>>>> a nice model.
>>>>>>
>>>>>> The following changes since commit
>>>>>> 915eac00a7e0f578f9e921af2b205b6efa3739b5:
>>>>>>
>>>>>>   Slices: A growable list of pointers. (2016-01-25 11:02:20 -0500)
>>>>>>
>>>>>> are available in the git repository at:
>>>>>>
>>>>>>   [email protected]:rminnich/akaros strace
>>>>>>
>>>>>> for you to fetch changes up to
>>>>>> 070b569c2962e98c2a645837fb5a332c31ac2f32:
>>>>>>
>>>>>>   New and easy strace framework. (2016-01-25 17:39:24 -0800)
>>>>>>
>>>>>> ----------------------------------------------------------------
>>>>>> Ronald G. Minnich (1):
>>>>>>       New and easy strace framework.
>>>>>>
>>>>>>  kern/drivers/dev/proc.c |  25 +++++++++++
>>>>>>  kern/include/env.h      |   5 +++
>>>>>>  kern/src/process.c      |   5 +++
>>>>>>  kern/src/syscall.c      | 112
>>>>>> ++++++++++++++++++++++++++++++++++++++++--------
>>>>>>  4 files changed, 128 insertions(+), 19 deletions(-)
>>>>>>
>>>>>> https://github.com/rminnich/akaros/compare/rminnich:master...strace
>>>>>>
>>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "Akaros" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to [email protected].
>>>> To post to this group, send email to [email protected].
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Akaros" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> For more options, visit https://groups.google.com/d/optout.
>>
> --
> You received this message because you are subscribed to the Google Groups
> "Akaros" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Akaros" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to