Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 30 Aug 2022 17:15:45 +0200
From:      Mateusz Guzik <mjguzik@gmail.com>
To:        Alexander Motin <mav@freebsd.org>
Cc:        Rick Macklem <rmacklem@uoguelph.ca>,  "src-committers@FreeBSD.org" <src-committers@freebsd.org>,  "dev-commits-src-all@FreeBSD.org" <dev-commits-src-all@freebsd.org>,  "dev-commits-src-main@FreeBSD.org" <dev-commits-src-main@freebsd.org>
Subject:   Re: git: 35b7759c05cb - main - cp: Fix build without VM_AND_BUFFER_CACHE_SYNCHRONIZED.
Message-ID:  <CAGudoHEMRkBRT6ew9ROh1p-mmYCbkT%2BewuMdLTdUAiqwg=_3Og@mail.gmail.com>
In-Reply-To: <837f27fc-97b0-6e71-50c0-12b8799e574d@FreeBSD.org>
References:  <202208301453.27UEroGr037461@gitrepo.freebsd.org> <CAGudoHEphH-4pKGf=ta4AWir2Uj9Mg_tUysU1V5ic6z_XVQG4Q@mail.gmail.com> <YQXPR01MB41500177CCDFEECFBE95861EDD799@YQXPR01MB4150.CANPRD01.PROD.OUTLOOK.COM> <837f27fc-97b0-6e71-50c0-12b8799e574d@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 8/30/22, Alexander Motin <mav@freebsd.org> wrote:
> On 30.08.2022 11:02, Rick Macklem wrote:
>> Mateusz Guzik <mjguzik@gmail.com> wrote:
>>> On 8/30/22, Alexander Motin <mav@freebsd.org> wrote:
>>>> The branch main has been updated by mav:
>>>>
>>>> URL:
>>>> https://cgit.FreeBSD.org/src/commit/?id=35b7759c05cbc65c06d87141da79f0f80af0f458
>>>>
>>>> commit 35b7759c05cbc65c06d87141da79f0f80af0f458
>>>> Author:     Alexander Motin <mav@FreeBSD.org>
>>>> AuthorDate: 2022-08-30 14:51:21 +0000
>>>> Commit:     Alexander Motin <mav@FreeBSD.org>
>>>> CommitDate: 2022-08-30 14:51:21 +0000
>>>>
>>>>      cp: Fix build without VM_AND_BUFFER_CACHE_SYNCHRONIZED.
>>>>
>>>>      It allows to not use mmap() for small files, which is not helpful
>>>>      in case of ZFS.  Should be no functional change.
>>>>
>>>
>>> This should be of no use thanks to copy_file_range
>> cp does not use copy_file_range(2) for small files, if I recall
>> correctly.
>
> Right.  I tried to look for motivation, but history of this file goes
> back to 4.4 Lite. :)  I wonder whether copy_file_range(2) for UFS does
> something clever, like this mmap() to avoid additional memory copy.  For
> ZFS though it cause big problem with buffer cache squeezing ARC to
> absolute minimum.  So if there is agreement to modernize this, I'd
> completely support it.
>
> --
> Alexander Motin
>

The way I see it userspace cannot do it any faster.

Especially with the zfs considerations it makes sense to straight up
copy_file_range if you can and let the kernel figure out what to do in
a sensible manner. Thought I have no idea if zfs is currently handled
in such a way. Someone(tm) should look into it.

-- 
Mateusz Guzik <mjguzik gmail.com>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGudoHEMRkBRT6ew9ROh1p-mmYCbkT%2BewuMdLTdUAiqwg=_3Og>