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.
next prev parent 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