- From d7c9fbfc814803317308694fb3104deafc1adf3c Mon Sep 17 00:00:00 2001
- From: Roland Mainz <roland.mainz@nrubsig.org>
- Date: Tue, 16 Dec 2025 13:34:57 +0100
- Subject: [PATCH 1/4] tests: Fix nfsbuildtest gcc build.* make error
- Fix nfsbuildtest gcc build.* make error.
- Reported-by: Cedric Blancher <cedric.blancher@gmail.com>
- Signed-off-by: Cedric Blancher <cedric.blancher@gmail.com>
- ---
- tests/nfsbuildtest/nfsbuildtest.ksh93 | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
- diff --git a/tests/nfsbuildtest/nfsbuildtest.ksh93 b/tests/nfsbuildtest/nfsbuildtest.ksh93
- index 11671ca..0def5f7 100644
- --- a/tests/nfsbuildtest/nfsbuildtest.ksh93
- +++ b/tests/nfsbuildtest/nfsbuildtest.ksh93
- @@ -251,7 +251,7 @@ function gcc_build
- if (( build_parallel == 1 )) ; then
- make_options+=(
- - '--load-average 32'
- + '--load-average' '32'
- '-j16'
- )
- else
- --
- 2.51.0
- From 0c5f7e0d3ba7bb88d466acba2781f00af3f46d6c Mon Sep 17 00:00:00 2001
- From: Roland Mainz <roland.mainz@nrubsig.org>
- Date: Tue, 16 Dec 2025 13:36:40 +0100
- Subject: [PATCH 2/4] sys: |nfs41_Create()| should enable
- |FCB_STATE_COLLAPSING_ENABLED|
- |nfs41_Create()| should enable |FCB_STATE_COLLAPSING_ENABLED| (for
- files).
- Signed-off-by: Cedric Blancher <cedric.blancher@gmail.com>
- ---
- sys/nfs41sys_openclose.c | 4 ++++
- 1 file changed, 4 insertions(+)
- diff --git a/sys/nfs41sys_openclose.c b/sys/nfs41sys_openclose.c
- index 79b7e8a..93c95b1 100644
- --- a/sys/nfs41sys_openclose.c
- +++ b/sys/nfs41sys_openclose.c
- @@ -1187,6 +1187,10 @@ retry_on_link:
- (void)RxFlushFcbInSystemCache((PFCB)RxContext->pFcb, TRUE);
- }
- + if (!nfs41_fcb->StandardInfo.Directory) {
- + SrvOpen->BufferingFlags |= FCB_STATE_COLLAPSING_ENABLED;
- + }
- +
- if (!nfs41_fcb->StandardInfo.Directory &&
- isAttributeOnlyDesiredAccess(params)) {
- SrvOpen->Flags |= SRVOPEN_FLAG_NO_BUFFERING_STATE_CHANGE;
- --
- 2.51.0
- From 0a329b5921ed692ef39f284aea04714409a042ee Mon Sep 17 00:00:00 2001
- From: Roland Mainz <roland.mainz@nrubsig.org>
- Date: Tue, 16 Dec 2025 18:14:27 +0100
- Subject: [PATCH 3/4] sys: Decrease |MaximumNumberOfCloseDelayedFiles| to |63|
- Decrease |MaximumNumberOfCloseDelayedFiles| to |63| and document
- the value+usage.
- Signed-off-by: Cedric Blancher <cedric.blancher@gmail.com>
- ---
- sys/nfs41sys_driver.c | 10 ++++++++--
- 1 file changed, 8 insertions(+), 2 deletions(-)
- diff --git a/sys/nfs41sys_driver.c b/sys/nfs41sys_driver.c
- index 82e6719..6e2c583 100644
- --- a/sys/nfs41sys_driver.c
- +++ b/sys/nfs41sys_driver.c
- @@ -792,10 +792,16 @@ NTSTATUS nfs41_CreateSrvCall(
- * FIXME: This should be a tuneable
- *
- * Notes:
- - * - Windows 10 limit is 1023 per
- + * - This has only an effect if |nfs41_Create()| enables
- + * |SrvOpen->BufferingFlags |= FCB_STATE_COLLAPSING_ENABLED|
- + * - A large value like |8191| will almost double the build time of a parallel
- + * bash build
- + * - Windows 10 limit is |1023| per
- * $ powershell -Command 'Get-SmbClientConfiguration | Select DormantFileLimit'
- + * - It seems most RDBSS users use |2^n-1| values, but we do not know yet
- + * *WHY* they use this formula.
- */
- - pSrvCall->MaximumNumberOfCloseDelayedFiles = 8192;
- + pSrvCall->MaximumNumberOfCloseDelayedFiles = 64-1;
- #endif /* ENABLE_COLLAPSEOPEN */
- if (IoGetCurrentProcess() == RxGetRDBSSProcess()) {
- --
- 2.51.0
- From 7471f4269e76560e112653c3972bd4cb65e3b89a Mon Sep 17 00:00:00 2001
- From: Cedric Blancher <cedric.blancher@gmail.com>
- Date: Tue, 16 Dec 2025 20:51:23 +0100
- Subject: [PATCH 4/4] cygwin,tests: Fix 32bit-only build
- Fix 32bit-only build.
- Signed-off-by: Roland Mainz <roland.mainz@nrubsig.org>
- ---
- cygwin/Makefile.install | 4 +++-
- tests/lssparse/Makefile | 8 ++++++++
- tests/winfsinfo1/winfsinfo.c | 2 +-
- 3 files changed, 12 insertions(+), 2 deletions(-)
- diff --git a/cygwin/Makefile.install b/cygwin/Makefile.install
- index 1db56fc..064b417 100644
- --- a/cygwin/Makefile.install
- +++ b/cygwin/Makefile.install
- @@ -173,7 +173,9 @@ installdest:
- cp "$(PROJECT_BASEDIR_DIR)/tests/winrunassystem/winrunassystem.i686.exe" $(DESTDIR)/sbin/winrunassystem.i686.exe
- cp "$(PROJECT_BASEDIR_DIR)/tests/winrunassystem/nfs_globalmount.x86_64.exe" $(DESTDIR)/sbin/nfs_globalmount.x86_64.exe
- cp "$(PROJECT_BASEDIR_DIR)/tests/winrunassystem/nfs_globalmount.i686.exe" $(DESTDIR)/sbin/nfs_globalmount.i686.exe
- - cp "$(PROJECT_BASEDIR_DIR)/tests/lssparse/lssparse.x86_64.exe" $(DESTDIR)/bin/lssparse.x86_64.exe
- + if [[ "$$(uname -m)" != 'i686' ]] ; then \
- + cp "$(PROJECT_BASEDIR_DIR)/tests/lssparse/lssparse.x86_64.exe" $(DESTDIR)/bin/lssparse.x86_64.exe ; \
- + fi
- cp "$(PROJECT_BASEDIR_DIR)/tests/winsg/winsg.x86_64.exe" $(DESTDIR)/bin/winsg.x86_64.exe
- cp "$(PROJECT_BASEDIR_DIR)/tests/winsg/winsg.i686.exe" $(DESTDIR)/bin/winsg.i686.exe
- cp "$(PROJECT_BASEDIR_DIR)/tests/ea/nfs_ea.x86_64.exe" $(DESTDIR)/bin/nfs_ea.x86_64.exe
- diff --git a/tests/lssparse/Makefile b/tests/lssparse/Makefile
- index d87d40c..97ee532 100644
- --- a/tests/lssparse/Makefile
- +++ b/tests/lssparse/Makefile
- @@ -5,7 +5,15 @@
- # signtool.exe can be in either '/cygdrive/c/Program Files/' or '/cygdrive/c/Program Files (x86)/'
- SIGNTOOL := $(shell ls -1 '/cygdrive/c/Program Files'*'/Microsoft SDKs/ClickOnce/SignTool/signtool.exe' | head -n 1)
- +# Cygwin stopped supporting 32bit with Cygwin release 3.3, so no 32bit version
- +# has SEEK_HOLE/SEEK_DATA support
- +GETCONF_LONG_BIT := $(strip $(shell getconf LONG_BIT 2>/dev/null || echo 0))
- +
- +ifeq ($(GETCONF_LONG_BIT),64)
- all: lssparse.x86_64.exe lssparse.exe
- +else
- +all:
- +endif
- # Cygwin 3.6 does not support 32bit builds anymore
- #lssparse.i686.exe: lssparse.c
- diff --git a/tests/winfsinfo1/winfsinfo.c b/tests/winfsinfo1/winfsinfo.c
- index e81e0b4..edc3255 100644
- --- a/tests/winfsinfo1/winfsinfo.c
- +++ b/tests/winfsinfo1/winfsinfo.c
- @@ -1187,7 +1187,7 @@ int get_file_remote_protocol_info(const char *progname, const char *filename)
- (void)printf("\t\t\tcompound Share=(\n");
- (void)printf("\t\t\t\tCapabilities=0x%lx\n",
- (unsigned long)frpi.ProtocolSpecific.Smb2.Share.Capabilities);
- -#if NTDDI_VERSION >= NTDDI_WIN10_NI
- +#if defined(RPI_SMB2_SHAREFLAG_ENCRYPT_DATA)
- (void)printf("\t\t\t\tShareFlags=0x%lx\n",
- (unsigned long)frpi.ProtocolSpecific.Smb2.Share.ShareFlags);
- #else
- --
- 2.51.0
msnfs41client: Patches for collapseopen fixes, 32bit-only build, tests+misc, 2025-12-16-002
Posted by Anonymous on Wed 17th Dec 2025 10:31
raw | new post
Submit a correction or amendment below (click here to make a fresh posting)
After submitting an amendment, you'll be able to view the differences between the old and new posts easily.
rovema.kpaste.net RSS