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 how 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>
