Date: Fri, 5 Jul 2019 00:28:51 +0000 From: Rick Macklem <rmacklem@uoguelph.ca> To: "freebsd-current@FreeBSD.org" <freebsd-current@FreeBSD.org> Cc: "kib@freebsd.org" <kib@FreeBSD.org>, Alan Somers <asomers@freebsd.org> Subject: should a copy_file_range(2) syscall be interrupted via a signal Message-ID: <YTXPR01MB0285E79DFAAE250FD7A7A181DDF50@YTXPR01MB0285.CANPRD01.PROD.OUTLOOK.COM>
next in thread | raw e-mail | index | archive | help
Hi, I have been working on a Linux compatible copy_file_range(2) syscall (the current code can be found at https://reviews.freebsd.org/D20584). One outstanding issue is how it should deal with signals. Right now, I have vn_start_write() without PCATCH, so that it won't be interrupted by a signal, but I notice that vn_write() {ie. write syscall } = does have PCATCH on vn_start_write() and so does vn_rdwr() when it is called without IO_NODELOCKED. I am thinking that copy_file_range(2) should do this also. However, if it returns an error, it is impossible for the caller to know ho= w much of the data range got copied. What do you think the copy_file_range(2) code should do? Thanks, rick ps: I've used FreeBSD-current@ this time, to see if I get more replies than= I did using FreeBSD-fs@.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?YTXPR01MB0285E79DFAAE250FD7A7A181DDF50>