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.
