Gentoo Archives: gentoo-portage-dev

From: Zac Medico <zmedico@g.o>
To: gentoo-portage-dev@l.g.o
Cc: Zac Medico <zmedico@g.o>, "Tomáš Mózes" <hydrapolic@×××××.com>
Subject: [gentoo-portage-dev] [PATCH] file_copy: handle lseek SEEK_DATA EBADFD for GlusterFS (bug 705536)
Date: Sat, 18 Jan 2020 17:37:58
Message-Id: 20200118173518.10577-1-zmedico@gentoo.org
1 GlusterFS can set the errno to EBADFD for lseek SEEK_DATA.
2
3 Tested-by: Tomáš Mózes <hydrapolic@×××××.com>
4 Bug: https://bugs.gentoo.org/705536
5 Signed-off-by: Zac Medico <zmedico@g.o>
6 ---
7 src/portage_util_file_copy_reflink_linux.c | 2 +-
8 1 file changed, 1 insertion(+), 1 deletion(-)
9
10 diff --git a/src/portage_util_file_copy_reflink_linux.c b/src/portage_util_file_copy_reflink_linux.c
11 index 352342c06..f3278aeb7 100644
12 --- a/src/portage_util_file_copy_reflink_linux.c
13 +++ b/src/portage_util_file_copy_reflink_linux.c
14 @@ -258,7 +258,7 @@ _reflink_linux_file_copy(PyObject *self, PyObject *args)
15 break;
16 } else if (len < 0) {
17 error = errno;
18 - if ((errno == EINVAL || errno == EOPNOTSUPP) && !offset_out) {
19 + if ((errno == EINVAL || errno == EOPNOTSUPP || errno == EBADFD) && !offset_out) {
20 lseek_works = 0;
21 }
22 break;
23 --
24 2.24.1