Re: Problems in sendfile?

2016-12-04 Thread Nadav Har'El
On Sun, Dec 4, 2016 at 9:05 PM, Rick Payne wrote: > > What about something like the following. Not sure if you favour a > different approach rather than checking the extents in the sendfile code, > but this certainly gets me moving forward again. > Your patch looks good - my only question was wh

Re: Problems in sendfile?

2016-12-04 Thread Roman Shaposhnik
On Sun, Dec 4, 2016 at 12:34 AM, Avi Kivity wrote: > On 12/04/2016 04:00 AM, Roman Shaposhnik wrote: >> >> sendfile is a pretty Linux-centric API and I'm sure it isn't implemented >> by OSv. > > > OSv aims to be Linux compatible, and does implement sendfile() (though not > without problems, as we

Re: Problems in sendfile?

2016-12-04 Thread Rick Payne
What about something like the following. Not sure if you favour a different approach rather than checking the extents in the sendfile code, but this certainly gets me moving forward again. I can work on some tst-sendfile code too if you want - but don’t want to duplicate effort if you’re alrea

Re: Problems in sendfile?

2016-12-04 Thread Rick Payne
> On 4 Dec 2016, at 05:20, Nadav Har'El wrote: > > I just noticed that you did already verify that the given count is larger > than the actual file size. So clearly, the code expected that to work, but it > doesn't on OSv. > So I opened an issue https://github.com/cloudius-systems/osv/issues/8

Re: Problems in sendfile?

2016-12-04 Thread Nadav Har'El
On Sun, Dec 4, 2016 at 11:00 AM, Nadav Har'El wrote: > > > I am guessing that the problem might be that the file is smaller than 1 > gigabyte, and the sendfile() is reading more than mmap() mapped and thus > getting a sigsegv. We need to see what Linux does in that case - does > sendfile() succee

Re: Problems in sendfile?

2016-12-04 Thread Nadav Har'El
On Sun, Dec 4, 2016 at 3:06 AM, Rick Payne wrote: > > The erlang app that I’m hacking is sending out some data to a socket and > its using sendfile to do this. This is causing OSv to abort: > Note that sendfile() *is* available on OSv, and should work (of course, unless it has bugs) Our current

Re: Problems in sendfile?

2016-12-04 Thread Avi Kivity
On 12/04/2016 04:00 AM, Roman Shaposhnik wrote: sendfile is a pretty Linux-centric API and I'm sure it isn't implemented by OSv. OSv aims to be Linux compatible, and does implement sendfile() (though not without problems, as we see). sendfile() originated in Solaris, IIRC, and variants exist

Re: Problems in sendfile?

2016-12-03 Thread Roman Shaposhnik
sendfile is a pretty Linux-centric API and I'm sure it isn't implemented by OSv. Given that this is erlang and it must support platforms that don't have sendfile(2) I suggest you look into how to build it for POSIX (as opposed to Linux) environment Thanks, Roman. On Sat, Dec 3, 2016 at 5:06 PM,

Problems in sendfile?

2016-12-03 Thread Rick Payne
The erlang app that I’m hacking is sending out some data to a socket and its using sendfile to do this. This is causing OSv to abort: (gdb) bt #0 processor::cli_hlt () at arch/x64/processor.hh:248 #1 0x00209cf6 in arch::halt_no_interrupts () at arch/x64/arch.hh:48 #2 0x0049983