Tarantool development patches archive
 help / color / mirror / Atom feed
From: Cyrill Gorcunov <gorcunov@gmail.com>
To: Konstantin Osipov <kostja.osipov@gmail.com>
Cc: tarantool-patches@dev.tarantool.org
Subject: Re: [Tarantool-patches] [PATCH 1/2] Copy DSO module before load instead of symlink-ing
Date: Mon, 25 May 2020 18:26:05 +0300	[thread overview]
Message-ID: <20200525152605.GD2464@grain> (raw)
In-Reply-To: <20200525151848.GC2464@grain>

On Mon, May 25, 2020 at 06:18:48PM +0300, Cyrill Gorcunov wrote:
> On Mon, May 25, 2020 at 05:34:19PM +0300, Konstantin Osipov wrote:
> > 
> > > +	off_t pos, left;
> > > +	for (left = st.st_size, pos = 0; left > 0;) {
> > > +		off_t ret = eio_sendfile_sync(dest_fd, source_fd, pos,
> > > +					      st.st_size);
> > 
> > I wonder why do you use eio_sendfile_sync()?
> > 
> > I don't know why coio_copyfile uses it BTW. Why is eio_sendfile()
> > not enough?
> 
> ```
> eio_ssize_t
> eio_sendfile_sync (int ofd, int ifd, off_t offset, size_t count)
> {
>   return eio__sendfile (ofd, ifd, offset, count);
> }
> ```
> 
> They are simply alias to each other.

If you meant that there is no need for a loop, then indeed,
looks like eio__sendfile can handle partial writes by self.
Still it comes from commit

commit 04bf646f359cdf9ef0e07121b4d316c5d5d6213e
Author: Cyrill Gorcunov <gorcunov@gmail.com>
Date:   Thu Apr 18 23:49:58 2019 +0300

    core/coio_file: Use eio_sendfile_sync instead of a chunk mode
    
    eio library provides a portable version of sendfile syscall
    which works a way more efficient than explicit copying file
    by 4K chunks.

we've left this cycle here to be able to test partial transfers.
Probably worth to simply drop it off by now, the commit is more
than year old and I think we can assume that everything is tested
enoough and we don't need error injection in this code anymore.

  reply	other threads:[~2020-05-25 15:26 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-20  9:51 [Tarantool-patches] [PATCH 0/2] Fix C module reloading Kirill Yukhin
2020-05-20  9:51 ` [Tarantool-patches] [PATCH 1/2] Copy DSO module before load instead of symlink-ing Kirill Yukhin
2020-05-23 18:30   ` Konstantin Osipov
2020-05-25 13:13     ` Kirill Yukhin
2020-05-25 14:34       ` Konstantin Osipov
2020-05-25 15:18         ` Cyrill Gorcunov
2020-05-25 15:26           ` Cyrill Gorcunov [this message]
2020-05-25 16:45           ` Konstantin Osipov
2020-05-25 18:38             ` Cyrill Gorcunov
2020-05-26 11:11         ` Kirill Yukhin
2020-05-26 15:16       ` Cyrill Gorcunov
2020-05-27  9:17         ` Kirill Yukhin
2020-05-27 10:49           ` Cyrill Gorcunov
2020-05-20  9:51 ` [Tarantool-patches] [PATCH 2/2] Allow to set directory for copying DSO before load Kirill Yukhin
2020-05-29 10:59   ` Cyrill Gorcunov
2020-06-01 10:53     ` Kirill Yukhin
2020-05-20 20:41 ` [Tarantool-patches] [PATCH 0/2] Fix C module reloading Nikita Pettik
2020-05-21  8:41   ` Kirill Yukhin
2020-06-01 10:52 ` Kirill Yukhin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200525152605.GD2464@grain \
    --to=gorcunov@gmail.com \
    --cc=kostja.osipov@gmail.com \
    --cc=tarantool-patches@dev.tarantool.org \
    --subject='Re: [Tarantool-patches] [PATCH 1/2] Copy DSO module before load instead of symlink-ing' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox