From nobody Sat Aug 09 20:36:48 2025 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4bzt3h6Plfz64LNv; Sat, 09 Aug 2025 20:36:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R10" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4bzt3h2fCnz3JYN; Sat, 09 Aug 2025 20:36:48 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1754771808; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=G8IDx+ChHBStBTurxo+Dug4Y+zsaZrfYymLS8bqqNyw=; b=EFuDwuZ2jNBq/FLXEKqaYrWpmBJ9FIs47UItKeLtLpb30nM7RGqmJyd+pLEtGRLElbpwlz NgVKu/+LBFfL7ldn6VLeyZr2htRVCUDBo8onjF/2i2t+Wx7Iezqak9a7OK0hwRRapvfsxE wPctfquvd1kQXTKjRQmZVn2qGu4Cpxl6p/oEZIMSdM4If6/h0shbs9cNBB7UcAa8teEl2Q jKfJh1VQ+bQII2N11x9Polq4Sv+FWf6DBagA0wqVejnnV/h8gITnh057hHiH5ycJ/qH7oY khEoZxUXH7pkOqo1N1DYy2mwXuursbe0p0Dtnz5T/70uxNVvER9919VVIsFmwA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1754771808; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=G8IDx+ChHBStBTurxo+Dug4Y+zsaZrfYymLS8bqqNyw=; b=v2of3GPG59TwB7/0sh56xAhjPJrNbBfP9hf6DBiK9rdjX6Kgcueis7Ov4RnlQ+QQ5XcHWE zchukh+f/hnXCU/CrUa+VpKUWj4DCDjnElRcGb3xpqt5bEW9g8DIE/UBCdDZMo9tL7RcXo h0E2lMzhkvyx/V2ngaNgVZQOVWqTXcmiRdw0QsW/xPQZzPdMM6cy/T2Bum9IsjrDyrpyQi so6BYZzyLw6FPcHBy+f2ID+kBqVVxMJrGEvdd76UQMZsWeZGvvPZwJH7XWV9FWKp8NCbak arCHQlepmhrkXMYih/VmNZXySu6fCI3C4gxUglaWq2T5UP1g/WPXcFhAlnpk2g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1754771808; a=rsa-sha256; cv=none; b=Bmvw6imPqeln1/0MwWBYlHz5fmDe0M5aBmoLksgrVlBlncStS0G7giexS3xRCQho4rzYUU eKjCFX5lICa8TkyHQ9vvSX3/aIg3SKbr1AUk1vSj1FydD2/Luw2MBdVLskwgeWNVrmvvC2 v959GiFZXLn1+YwRy6yBpi13ZvmCmbrlXohidLTPCnivCi1F0D/lK0yB1Cg5hudVo0YBBq KZ7LFooKhFX+6h+EXhdgcvKa6KnJQFqCU/mlVPmqZELFIKEy5OoWXosnxMGWE2itE5QLDF yPkrD1nFBPlHxznjeuVLiAC8kE61HSDc+wk+pWrEcePAsbQaCfWxLV3Spd5tcA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4bzt3h20Gnzctv; Sat, 09 Aug 2025 20:36:48 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 579KamC4024600; Sat, 9 Aug 2025 20:36:48 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 579KamLx024597; Sat, 9 Aug 2025 20:36:48 GMT (envelope-from git) Date: Sat, 9 Aug 2025 20:36:48 GMT Message-Id: <202508092036.579KamLx024597@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Rick Macklem Subject: git: 7a9834041c91 - main - vfs: Put the definition of COPY_FILE_RANGE_CLONE in unistd.h List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: rmacklem X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 7a9834041c91596af83fa15768321cdc7290880b Auto-Submitted: auto-generated The branch main has been updated by rmacklem: URL: https://cgit.FreeBSD.org/src/commit/?id=7a9834041c91596af83fa15768321cdc7290880b commit 7a9834041c91596af83fa15768321cdc7290880b Author: Rick Macklem AuthorDate: 2025-08-09 20:33:53 +0000 Commit: Rick Macklem CommitDate: 2025-08-09 20:33:53 +0000 vfs: Put the definition of COPY_FILE_RANGE_CLONE in unistd.h kib@ noted that having COPY_FILE_RANGE_CLONE defined in vnode.h was inappropriate, since it is meant to be used from user space as well as kernel space. This patch moves it into sys/unistd.h and reverts the addition of it in vnode.h. Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D51838 Fixes: 37b2cb5ecb0f ("vfs: Add support for file cloning to VOP_COPY_FILE_RANGE") --- sys/sys/unistd.h | 9 +++++++++ sys/sys/vnode.h | 17 ++++------------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/sys/sys/unistd.h b/sys/sys/unistd.h index 7ab2f021e408..5743dc1c8033 100644 --- a/sys/sys/unistd.h +++ b/sys/sys/unistd.h @@ -216,6 +216,15 @@ #define CLOSE_RANGE_CLOEXEC (1<<2) #define CLOSE_RANGE_CLOFORK (1<<3) +/* + * copy_file_range flags visible to user space. + * High order 8 bits reserved for kernel flags. + * Allocate from bit 23 down, to try and avoid conflicts with + * future Linux flags. + */ +#define COPY_FILE_RANGE_CLONE 0x00800000 /* Require cloning. */ +#define COPY_FILE_RANGE_USERFLAGS (COPY_FILE_RANGE_CLONE) + #endif /* __BSD_VISIBLE */ #endif /* !_SYS_UNISTD_H_ */ diff --git a/sys/sys/vnode.h b/sys/sys/vnode.h index 8080e9edd8c3..074769d55c2d 100644 --- a/sys/sys/vnode.h +++ b/sys/sys/vnode.h @@ -397,21 +397,8 @@ struct vattr { */ #define VLKTIMEOUT (hz / 20 + 1) -/* copy_file_range flags */ -#define COPY_FILE_RANGE_KFLAGS 0xff000000 - -/* - * copy_file_range flags visible to user space. - * Allocate high bits first, to try and avoid conflicting with Linux. - */ -#define COPY_FILE_RANGE_CLONE 0x00800000 /* Require cloning. */ -#define COPY_FILE_RANGE_USERFLAGS (COPY_FILE_RANGE_CLONE) - #ifdef _KERNEL -/* copy_file_range flags only usable in the kernel */ -#define COPY_FILE_RANGE_TIMEO1SEC 0x01000000 /* Return after 1sec. */ - #ifdef MALLOC_DECLARE MALLOC_DECLARE(M_VNODE); #endif @@ -634,6 +621,10 @@ typedef void vop_getpages_iodone_t(void *, vm_page_t *, int, int); #define VN_OPEN_INVFS 0x00000008 #define VN_OPEN_WANTIOCTLCAPS 0x00000010 +/* copy_file_range kernel flags */ +#define COPY_FILE_RANGE_KFLAGS 0xff000000 +#define COPY_FILE_RANGE_TIMEO1SEC 0x01000000 /* Return after 1sec. */ + /* * Public vnode manipulation functions. */