mirror of
https://github.com/winfsp/winfsp.git
synced 2025-06-07 20:42:09 -05:00
sys: FspFsvolDeviceDirInfoCacheItemSizeMax: increase to 64K
This commit is contained in:
parent
f3df3f6dd2
commit
d816d607f4
@ -865,6 +865,8 @@ NTSTATUS FspFsvolDirectoryControlPrepare(
|
|||||||
PVOID Address;
|
PVOID Address;
|
||||||
PEPROCESS Process;
|
PEPROCESS Process;
|
||||||
|
|
||||||
|
ASSERT(FspProcessBufferSizeMax >= Request->Req.QueryDirectory.Length);
|
||||||
|
|
||||||
Result = FspProcessBufferAcquire(Request->Req.QueryDirectory.Length, &Cookie, &Address);
|
Result = FspProcessBufferAcquire(Request->Req.QueryDirectory.Length, &Cookie, &Address);
|
||||||
if (!NT_SUCCESS(Result))
|
if (!NT_SUCCESS(Result))
|
||||||
return Result;
|
return Result;
|
||||||
|
@ -1127,7 +1127,7 @@ enum
|
|||||||
FspFsvolDeviceSecurityCacheCapacity = 100,
|
FspFsvolDeviceSecurityCacheCapacity = 100,
|
||||||
FspFsvolDeviceSecurityCacheItemSizeMax = 4096,
|
FspFsvolDeviceSecurityCacheItemSizeMax = 4096,
|
||||||
FspFsvolDeviceDirInfoCacheCapacity = 100,
|
FspFsvolDeviceDirInfoCacheCapacity = 100,
|
||||||
FspFsvolDeviceDirInfoCacheItemSizeMax = FSP_FSCTL_ALIGN_UP(16384, PAGE_SIZE),
|
FspFsvolDeviceDirInfoCacheItemSizeMax = FSP_FSCTL_ALIGN_UP(FspProcessBufferSizeMax, PAGE_SIZE),
|
||||||
FspFsvolDeviceStreamInfoCacheCapacity = 100,
|
FspFsvolDeviceStreamInfoCacheCapacity = 100,
|
||||||
FspFsvolDeviceStreamInfoCacheItemSizeMax = FSP_FSCTL_ALIGN_UP(16384, PAGE_SIZE),
|
FspFsvolDeviceStreamInfoCacheItemSizeMax = FSP_FSCTL_ALIGN_UP(16384, PAGE_SIZE),
|
||||||
FspFsvolDeviceEaCacheCapacity = 100,
|
FspFsvolDeviceEaCacheCapacity = 100,
|
||||||
|
@ -46,7 +46,7 @@ static void querydir_dotest(ULONG Flags, PWSTR Prefix, ULONG FileInfoTimeout, UL
|
|||||||
ASSERT(Success);
|
ASSERT(Success);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int j = 1; 100 >= j; j++)
|
for (int j = 1; 400 >= j; j++)
|
||||||
{
|
{
|
||||||
StringCbPrintfW(FilePath, sizeof FilePath, L"%s%s\\fileABCDEFGHIJKLMNOPQRSTUVXWYZfile%d",
|
StringCbPrintfW(FilePath, sizeof FilePath, L"%s%s\\fileABCDEFGHIJKLMNOPQRSTUVXWYZfile%d",
|
||||||
Prefix ? L"" : L"\\\\?\\GLOBALROOT", Prefix ? Prefix : memfs_volumename(memfs), j);
|
Prefix ? L"" : L"\\\\?\\GLOBALROOT", Prefix ? Prefix : memfs_volumename(memfs), j);
|
||||||
@ -90,7 +90,7 @@ static void querydir_dotest(ULONG Flags, PWSTR Prefix, ULONG FileInfoTimeout, UL
|
|||||||
} while (FindNextFileW(Handle, &FindData));
|
} while (FindNextFileW(Handle, &FindData));
|
||||||
ASSERT(ERROR_NO_MORE_FILES == GetLastError());
|
ASSERT(ERROR_NO_MORE_FILES == GetLastError());
|
||||||
|
|
||||||
ASSERT(110 == FileCount);
|
ASSERT(410 == FileCount);
|
||||||
|
|
||||||
Success = FindClose(Handle);
|
Success = FindClose(Handle);
|
||||||
ASSERT(Success);
|
ASSERT(Success);
|
||||||
@ -194,8 +194,8 @@ static void querydir_dotest(ULONG Flags, PWSTR Prefix, ULONG FileInfoTimeout, UL
|
|||||||
} while (FindNextFileW(Handle, &FindData));
|
} while (FindNextFileW(Handle, &FindData));
|
||||||
ASSERT(ERROR_NO_MORE_FILES == GetLastError());
|
ASSERT(ERROR_NO_MORE_FILES == GetLastError());
|
||||||
|
|
||||||
ASSERT(100 == FileCount);
|
ASSERT(400 == FileCount);
|
||||||
ASSERT(101 * 100 / 2 == FileTotal);
|
ASSERT(401 * 400 / 2 == FileTotal);
|
||||||
|
|
||||||
Success = FindClose(Handle);
|
Success = FindClose(Handle);
|
||||||
ASSERT(Success);
|
ASSERT(Success);
|
||||||
@ -224,7 +224,7 @@ static void querydir_dotest(ULONG Flags, PWSTR Prefix, ULONG FileInfoTimeout, UL
|
|||||||
ASSERT(Success);
|
ASSERT(Success);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int j = 1; 100 >= j; j++)
|
for (int j = 1; 400 >= j; j++)
|
||||||
{
|
{
|
||||||
StringCbPrintfW(FilePath, sizeof FilePath, L"%s%s\\fileABCDEFGHIJKLMNOPQRSTUVXWYZfile%d",
|
StringCbPrintfW(FilePath, sizeof FilePath, L"%s%s\\fileABCDEFGHIJKLMNOPQRSTUVXWYZfile%d",
|
||||||
Prefix ? L"" : L"\\\\?\\GLOBALROOT", Prefix ? Prefix : memfs_volumename(memfs), j);
|
Prefix ? L"" : L"\\\\?\\GLOBALROOT", Prefix ? Prefix : memfs_volumename(memfs), j);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user