GNU bug report logs - #68504
[PATCH] Add copy-on-write support to scm_copy_file.

Previous Next

Package: guile;

Reported by: Tomas Volf <~@wolfsden.cz>

Date: Tue, 16 Jan 2024 12:49:02 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Ludovic Courtès <ludo <at> gnu.org>
To: Tomas Volf <~@wolfsden.cz>
Cc: 68504 <at> debbugs.gnu.org
Subject: bug#68504: [PATCH v3] Add copy-on-write support to scm_copy_file.
Date: Thu, 21 Mar 2024 15:23:33 +0100
Hi,

Tomas Volf <~@wolfsden.cz> skribis:

> Sure, I am willing to do my part.  I managed to find this blog post[0], so after
> some minor troubles I did manage to get a VM with GNU/Hurd running.  Next I will
> read up on copy_file_range and try to put together a patch.

It’s really just (service hurd-vm-service-type) on Guix System:

  https://guix.gnu.org/manual/devel/en/html_node/Virtualization-Services.html#The-Hurd-in-a-Virtual-Machine

> Just to make sure, your idea here is exactly what?  Always try to use
> copy_file_range before the regular copy?  So the flow would be
>
> For 'always case:
>
>     CoW  ---fail-->  FAIL
>
> For 'auto case:
>
>     CoW  ---fail-->  copy_file_range  ---fail-->  current copy  ---fail-->  FAIL
>
> For 'never case:
>
>     copy_file_range  ---fail-->  current copy  ---fail-->  FAIL
>
> Is that an accurate summary?

Yes, that’s exactly what I had in mind.

Actually it might be better to use sendfile(2), which is slightly less
generic but otherwise equivalent AFAICS, and which happens to have a
Hurd implementation in glibc.

Thanks for your help!

Ludo’.




This bug report was last modified 1 year and 117 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.