nvidia modules are ready
This commit is contained in:
+78
@@ -0,0 +1,78 @@
|
||||
--- kernel/os-interface.c 2017-09-14 23:51:09.000000000 +0300
|
||||
+++ kernel/os-interface.c 2019-11-05 19:23:48.332089532 +0300
|
||||
@@ -24,6 +24,7 @@
|
||||
|
||||
#include "os-interface.h"
|
||||
#include "nv-linux.h"
|
||||
+#include <linux/time.h>
|
||||
|
||||
void NV_API_CALL os_disable_preemption(void)
|
||||
{
|
||||
|
||||
--- kernel/os-interface.c 2019-11-05 19:34:40.868104129 +0300
|
||||
+++ kernel/os-interface.c 2019-11-05 19:38:43.529109557 +0300
|
||||
@@ -26,6 +26,14 @@
|
||||
#include "nv-linux.h"
|
||||
#include <linux/time.h>
|
||||
|
||||
+void do_gettimeofday(struct timeval *tv)
|
||||
+{
|
||||
+struct timespec64 ts;
|
||||
+ktime_get_real_ts64(&ts);
|
||||
+tv->tv_sec = ts.tv_sec;
|
||||
+tv->tv_usec = ts.tv_nsec;
|
||||
+}
|
||||
+
|
||||
void NV_API_CALL os_disable_preemption(void)
|
||||
{
|
||||
#if defined(preempt_disable)
|
||||
diff --git kernel/nv-linux.h kernel/nv-linux.h
|
||||
index 4043bf1..62f0874 100644
|
||||
--- kernel/nv-linux.h
|
||||
+++ kernel/nv-linux.h
|
||||
@@ -877,12 +877,21 @@ extern void *nv_stack_t_cache;
|
||||
__ret; \
|
||||
})
|
||||
#elif (NV_SMP_CALL_FUNCTION_ARGUMENT_COUNT == 3)
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 3, 0)
|
||||
#define NV_SMP_CALL_FUNCTION(func, info, wait) \
|
||||
({ \
|
||||
int __ret = smp_call_function(func, info, wait); \
|
||||
__ret; \
|
||||
})
|
||||
#else
|
||||
+#define NV_SMP_CALL_FUNCTION(func, info, wait) \
|
||||
+ ({ \
|
||||
+ int __ret = 0; \
|
||||
+ smp_call_function(func, info, wait); \
|
||||
+ __ret; \
|
||||
+ })
|
||||
+#endif
|
||||
+#else
|
||||
#error "NV_SMP_CALL_FUNCTION_ARGUMENT_COUNT value unrecognized!"
|
||||
#endif
|
||||
#elif defined(CONFIG_SMP)
|
||||
@@ -897,12 +906,21 @@ extern void *nv_stack_t_cache;
|
||||
__ret; \
|
||||
})
|
||||
#elif (NV_ON_EACH_CPU_ARGUMENT_COUNT == 3)
|
||||
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 3, 0)
|
||||
#define NV_ON_EACH_CPU(func, info, wait) \
|
||||
({ \
|
||||
int __ret = on_each_cpu(func, info, wait); \
|
||||
__ret; \
|
||||
})
|
||||
#else
|
||||
+#define NV_ON_EACH_CPU(func, info, wait) \
|
||||
+ ({ \
|
||||
+ int __ret = 0; \
|
||||
+ on_each_cpu(func, info, wait); \
|
||||
+ __ret; \
|
||||
+ })
|
||||
+#endif
|
||||
+#else
|
||||
#error "NV_ON_EACH_CPU_ARGUMENT_COUNT value unrecognized!"
|
||||
#endif
|
||||
#elif defined(CONFIG_SMP)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user