Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1495911 > unrolled thread
| Started by | Adam Borowski <kilobyte@angband.pl> |
|---|---|
| First post | 2016-10-05 17:10 +0200 |
| Last post | 2016-10-13 00:20 +0200 |
| Articles | 2 — 1 participant |
Back to article view | Back to linux.kernel
[PATCH resend] vfs: allow FILE_EXTENT_SAME (dedupe_file_range) on a file opened ro Adam Borowski <kilobyte@angband.pl> - 2016-10-05 17:10 +0200
ping howto (was Re: [PATCH resend] vfs: allow FILE_EXTENT_SAME (dedupe_file_range) on a file opened ro) Adam Borowski <kilobyte@angband.pl> - 2016-10-13 00:20 +0200
| From | Adam Borowski <kilobyte@angband.pl> |
|---|---|
| Date | 2016-10-05 17:10 +0200 |
| Subject | [PATCH resend] vfs: allow FILE_EXTENT_SAME (dedupe_file_range) on a file opened ro |
| Message-ID | <soVZw-2AE-29@gated-at.bofh.it> |
Instead of checking the mode of the file descriptor, let's check whether it
could have been opened rw. This allows fixing intermittent exec failures
when deduping a live system: anyone trying to exec a file currently being
deduped gets ETXTBSY.
Issuing this ioctl on a ro file was already allowed for root/cap.
Tested on btrfs and not-yet-merged xfs, as only them implement this ioctl.
Signed-off-by: Adam Borowski <kilobyte@angband.pl>
Reviewed-by: Mark Fasheh <mfasheh@suse.de>
---
fs/read_write.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/read_write.c b/fs/read_write.c
index 66215a7..8ea5297 100644
--- a/fs/read_write.c
+++ b/fs/read_write.c
@@ -1741,7 +1741,7 @@ int vfs_dedupe_file_range(struct file *file, struct file_dedupe_range *same)
if (info->reserved) {
info->status = -EINVAL;
- } else if (!(is_admin || (dst_file->f_mode & FMODE_WRITE))) {
+ } else if (!(is_admin || !inode_permission(dst, MAY_WRITE))) {
info->status = -EINVAL;
} else if (file->f_path.mnt != dst_file->f_path.mnt) {
info->status = -EXDEV;
--
2.9.3
[toc] | [next] | [standalone]
| From | Adam Borowski <kilobyte@angband.pl> |
|---|---|
| Date | 2016-10-13 00:20 +0200 |
| Subject | ping howto (was Re: [PATCH resend] vfs: allow FILE_EXTENT_SAME (dedupe_file_range) on a file opened ro) |
| Message-ID | <srA2u-2h0-45@gated-at.bofh.it> |
| In reply to | #1495911 |
[Multipart message — attachments visible in raw view] — view raw
On Wed, Oct 05, 2016 at 04:38:54PM +0200, Adam Borowski wrote: > [fix for dedupe-vs-exec ETXTBSY] > Reviewed-by: Mark Fasheh <mfasheh@suse.de> Hi guys! May I ask if I'm doing something wrong, or barking up the wrong tree? I've sent this patch thrice (May 20, Jul 18, Oct 5), pinged once (Aug 6), yet it hasn't been taken nor NACKed yet. For fixes to vfs core I need to bother Al Viro, -fsdevel@vger, -kernel@vger, right? It's not a vital fix (strictly speaking, it only allows to fix userspace), as save for unprivileged containers, when deduping executables you usually need to be root anyway -- but it'd still be nice to have it. It has been ACKed by the original author of that code. (Sorry for being annoying, I got only 13 commits elsewhere in the kernel so please point me in the right direction when hitting :p) Meow! -- A MAP07 (Dead Simple) raspberry tincture recipe: 0.5l 95% alcohol, 1kg raspberries, 0.4kg sugar; put into a big jar for 1 month. Filter out and throw away the fruits (can dump them into a cake, etc), let the drink age at least 3-6 months.
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web