X-Git-Url: http://git.onelab.eu/?p=vsys.git;a=blobdiff_plain;f=splice_stub.c;h=61fbd567e0d971ad8c3bf813041c64d8fefed85a;hp=a8da686069bfe381c47136b2d4a6104cd9b3e506;hb=HEAD;hpb=e8c4b9ece4508acb51bf6184f04e66a6a97324d4 diff --git a/splice_stub.c b/splice_stub.c index a8da686..61fbd56 100644 --- a/splice_stub.c +++ b/splice_stub.c @@ -22,8 +22,7 @@ CAMLprim value stub_splice(value fd_in, value fd_out, value len) CAMLparam3(fd_in, fd_out, len); long ret; ret = syscall(SPLICE_SYSCALL, Int_val(fd_in), NULL, Int_val(fd_out),NULL, Int_val(len), SPLICE_F_NONBLOCK); - if (ret == -1) { - printf ("Splice error: %s\n", strerror(errno)); + if (ret == -1 && errno!=EAGAIN) { caml_failwith("Splice system call returned -1"); } CAMLreturn(Val_int(ret)); @@ -34,9 +33,8 @@ CAMLprim value stub_tee(value fd_in, value fd_out, value len) CAMLparam3(fd_in, fd_out, len); long ret; ret = syscall(TEE_SYSCALL,Int_val(fd_in), Int_val(fd_out), Int_val(len), SPLICE_F_NONBLOCK); - if (ret == -1) { - printf ("Sendfile error: %s\n", strerror(errno)); - caml_failwith("Splice system call returned -1"); + if (ret == -1 && errno!=EAGAIN) { + caml_failwith(strerror(errno)); } CAMLreturn(Val_int(ret)); }