Merge branch '555' of github.com:NVIDIA/open-gpu-kernel-modules into 555-testing-patches

This commit is contained in:
Milos Tijanic 2024-06-27 19:30:18 +02:00
commit d38990817b
8 changed files with 35 additions and 29 deletions

View File

@ -2,6 +2,8 @@
## Release 555 Entries
### [555.58] 2024-06-27
### [555.52.04] 2024-06-05
### [555.42.02] 2024-05-21

View File

@ -1,7 +1,7 @@
# NVIDIA Linux Open GPU Kernel Module Source
This is the source release of the NVIDIA Linux open GPU kernel modules,
version 555.52.04.
version 555.58.
## How to Build
@ -17,7 +17,7 @@ as root:
Note that the kernel modules built here must be used with GSP
firmware and user-space NVIDIA GPU driver components from a corresponding
555.52.04 driver release. This can be achieved by installing
555.58 driver release. This can be achieved by installing
the NVIDIA GPU driver from the .run file using the `--no-kernel-modules`
option. E.g.,
@ -188,7 +188,7 @@ encountered specific to them.
For details on feature support and limitations, see the NVIDIA GPU driver
end user README here:
https://us.download.nvidia.com/XFree86/Linux-x86_64/555.52.04/README/kernel_open.html
https://us.download.nvidia.com/XFree86/Linux-x86_64/555.58/README/kernel_open.html
For vGPU support, please refer to the README.vgpu packaged in the vGPU Host
Package for more details.

View File

@ -72,7 +72,7 @@ EXTRA_CFLAGS += -I$(src)/common/inc
EXTRA_CFLAGS += -I$(src)
EXTRA_CFLAGS += -Wall $(DEFINES) $(INCLUDES) -Wno-cast-qual -Wno-format-extra-args
EXTRA_CFLAGS += -D__KERNEL__ -DMODULE -DNVRM
EXTRA_CFLAGS += -DNV_VERSION_STRING=\"555.52.04\"
EXTRA_CFLAGS += -DNV_VERSION_STRING=\"555.58\"
ifneq ($(SYSSRCHOST1X),)
EXTRA_CFLAGS += -I$(SYSSRCHOST1X)

View File

@ -36,25 +36,25 @@
// and then checked back in. You cannot make changes to these sections without
// corresponding changes to the buildmeister script
#ifndef NV_BUILD_BRANCH
#define NV_BUILD_BRANCH r555_97
#define NV_BUILD_BRANCH r555_00
#endif
#ifndef NV_PUBLIC_BRANCH
#define NV_PUBLIC_BRANCH r555_97
#define NV_PUBLIC_BRANCH r555_00
#endif
#if defined(NV_LINUX) || defined(NV_BSD) || defined(NV_SUNOS)
#define NV_BUILD_BRANCH_VERSION "rel/gpu_drv/r555/r555_97-144"
#define NV_BUILD_CHANGELIST_NUM (34376233)
#define NV_BUILD_BRANCH_VERSION "rel/gpu_drv/r555/r555_00-164"
#define NV_BUILD_CHANGELIST_NUM (34441657)
#define NV_BUILD_TYPE "Official"
#define NV_BUILD_NAME "rel/gpu_drv/r555/r555_97-144"
#define NV_LAST_OFFICIAL_CHANGELIST_NUM (34376233)
#define NV_BUILD_NAME "rel/gpu_drv/r555/r555_00-164"
#define NV_LAST_OFFICIAL_CHANGELIST_NUM (34441657)
#else /* Windows builds */
#define NV_BUILD_BRANCH_VERSION "r555_97-2"
#define NV_BUILD_CHANGELIST_NUM (34367477)
#define NV_BUILD_BRANCH_VERSION "r555_00-166"
#define NV_BUILD_CHANGELIST_NUM (34441657)
#define NV_BUILD_TYPE "Official"
#define NV_BUILD_NAME "555.99"
#define NV_LAST_OFFICIAL_CHANGELIST_NUM (34367477)
#define NV_BUILD_NAME "556.09"
#define NV_LAST_OFFICIAL_CHANGELIST_NUM (34441657)
#define NV_BUILD_BRANCH_BASE_VERSION R555
#endif
// End buildmeister python edited section

View File

@ -4,7 +4,7 @@
#if defined(NV_LINUX) || defined(NV_BSD) || defined(NV_SUNOS) || defined(NV_VMWARE) || defined(NV_QNX) || defined(NV_INTEGRITY) || \
(defined(RMCFG_FEATURE_PLATFORM_GSP) && RMCFG_FEATURE_PLATFORM_GSP == 1)
#define NV_VERSION_STRING "555.52.04"
#define NV_VERSION_STRING "555.58"
#else

View File

@ -628,7 +628,7 @@ rmGpuLockFree(NvU32 gpuInst)
// Disable GPUs Interrupts thus blocking the ISR from
// entering.
//
static void _gpuLocksAcquireDisableInterrupts(NvU32 gpuInst, NvBool bInIsr)
static void _gpuLocksAcquireDisableInterrupts(NvU32 gpuInst, NvU32 flags)
{
OBJGPU *pGpu = gpumgrGetGpu(gpuInst);
@ -653,6 +653,7 @@ static void _gpuLocksAcquireDisableInterrupts(NvU32 gpuInst, NvBool bInIsr)
if (osLockShouldToggleInterrupts(pGpu))
{
Intr *pIntr = GPU_GET_INTR(pGpu);
NvBool isIsr = !!(flags & GPU_LOCK_FLAGS_COND_ACQUIRE);
NvBool bBcEnabled = gpumgrGetBcEnabledStatus(pGpu);
// Always disable intrs for cond code
@ -666,10 +667,10 @@ static void _gpuLocksAcquireDisableInterrupts(NvU32 gpuInst, NvBool bInIsr)
tmrRmCallbackIntrDisable(pTmr, pGpu);
}
osDisableInterrupts(pGpu, bInIsr);
osDisableInterrupts(pGpu, isIsr);
if ((pIntr != NULL) && pIntr->getProperty(pIntr, PDB_PROP_INTR_USE_INTR_MASK_FOR_LOCKING) &&
(bInIsr == NV_FALSE) )
(isIsr == NV_FALSE) )
{
NvU64 oldIrql;
NvU32 intrMaskFlags;
@ -714,7 +715,7 @@ _rmGpuLocksAcquire(NvU32 gpuMask, NvU32 flags, NvU32 module, void *ra, NvU32 *pG
NvU32 gpuMaskLocked = 0;
GPULOCK *pAllocLock = &rmGpuLockInfo.gpuAllocLock;
GPULOCK *pGpuLock;
NvBool bHighIrql, bInIsr, bCondAcquireCheck;
NvBool bHighIrql, bCondAcquireCheck;
NvU32 maxLockableGpuInst;
NvU64 threadId = portThreadGetCurrentThreadId();
NvU64 priority = 0;
@ -726,7 +727,6 @@ _rmGpuLocksAcquire(NvU32 gpuMask, NvU32 flags, NvU32 module, void *ra, NvU32 *pG
NvU32 loopCount;
bHighIrql = (portSyncExSafeToSleep() == NV_FALSE);
bInIsr = portUtilIsInterruptContext();
bCondAcquireCheck = ((flags & GPU_LOCK_FLAGS_COND_ACQUIRE) != 0);
if (pGpuLockedMask)
@ -1065,7 +1065,7 @@ per_gpu_lock_acquired:
if (gpuInst != GPU_INST_ALLOC_LOCK)
{
// now disable interrupts
_gpuLocksAcquireDisableInterrupts(gpuInst, bInIsr);
_gpuLocksAcquireDisableInterrupts(gpuInst, flags);
// mark this one as locked
gpuMaskLocked |= NVBIT(gpuInst);

View File

@ -325,13 +325,17 @@ _kgspCompleteRpcHistoryEntry
NvU32 historyIndex;
NvU32 historyEntry;
// Complete the current entry (it should be active)
// TODO: assert that ts_end == 0 here when continuation record timestamps are fixed
NV_ASSERT_OR_RETURN_VOID(pHistory[current].ts_start != 0);
pHistory[current].ts_end = osGetTimestamp();
//
// Complete any previous entries that aren't marked complete yet, using the same timestamp
// (we may not have explicitly waited for them)
//
for (historyIndex = 0; historyIndex < RPC_HISTORY_DEPTH; historyIndex++)
for (historyIndex = 1; historyIndex < RPC_HISTORY_DEPTH; historyIndex++)
{
historyEntry = (current + RPC_HISTORY_DEPTH - historyIndex) % RPC_HISTORY_DEPTH;
if (pHistory[historyEntry].ts_start != 0 &&
@ -1669,13 +1673,13 @@ _tsDiffToDuration
{
duration /= 1000;
*pDurationUnitsChar = 'm';
}
// 9999ms then 10s
if (duration >= 10000)
{
duration /= 1000;
*pDurationUnitsChar = ' '; // so caller can always just append 's'
// 9999ms then 10s
if (duration >= 10000)
{
duration /= 1000;
*pDurationUnitsChar = ' '; // so caller can always just append 's'
}
}
return duration;

View File

@ -1,4 +1,4 @@
NVIDIA_VERSION = 555.52.04
NVIDIA_VERSION = 555.58
# This file.
VERSION_MK_FILE := $(lastword $(MAKEFILE_LIST))