1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
diff -u --recursive NVIDIA-Linux-x86_64-367.36.02/kernel/nvidia-drm/nvidia-drm-drv.c patched_NVIDIA-Linux-x86_64-367.36.02/kernel/nvidia-drm/nvidia-drm-drv.c
--- NVIDIA-Linux-x86_64-367.36.02/kernel/nvidia-drm/nvidia-drm-drv.c 2016-07-25 13:23:10.000000000 +0200
+++ patched_NVIDIA-Linux-x86_64-367.36.02/kernel/nvidia-drm/nvidia-drm-drv.c 2016-08-02 17:09:53.500398878 +0200
@@ -36,6 +36,7 @@
#include "nvidia-drm-ioctl.h"
#include <drm/drmP.h>
+#include <drm/drm_auth.h>
#include <drm/drm_crtc_helper.h>
@@ -419,7 +420,7 @@
static
void nvidia_drm_master_drop(struct drm_device *dev,
- struct drm_file *file_priv, bool from_release)
+ struct drm_file *file_priv)
{
struct nvidia_drm_device *nv_dev = dev->dev_private;
int ret;
@@ -452,7 +453,7 @@
mutex_lock(&dev->master_mutex);
if (!file_priv->is_master ||
- !file_priv->minor->master)
+ !file_priv->master)
{
goto done;
}
@@ -473,7 +474,7 @@
* NVKMS modeset ownership, because nvidia_drm_master_set()'s call to
* grabOwnership() will fail.
*/
- drm_master_put(&file_priv->minor->master);
+ drm_master_put(&file_priv->master);
file_priv->is_master = 0;
ret = 0;
diff -u --recursive NVIDIA-Linux-x86_64-367.36.02/kernel/nvidia-drm/nvidia-drm-fb.c patched_NVIDIA-Linux-x86_64-367.36.02/kernel/nvidia-drm/nvidia-drm-fb.c
--- NVIDIA-Linux-x86_64-367.36.02/kernel/nvidia-drm/nvidia-drm-fb.c 2016-07-25 13:23:10.000000000 +0200
+++ patched_NVIDIA-Linux-x86_64-367.36.02/kernel/nvidia-drm/nvidia-drm-fb.c 2016-07-31 05:37:57.013950532 +0200
@@ -114,7 +114,7 @@
* We don't support any planar format, pick up first buffer only.
*/
- gem = drm_gem_object_lookup(dev, file, cmd->handles[0]);
+ gem = drm_gem_object_lookup(file, cmd->handles[0]);
if (gem == NULL)
{
diff -u --recursive NVIDIA-Linux-x86_64-367.36.02/kernel/nvidia-drm/nvidia-drm-gem.c patched_NVIDIA-Linux-x86_64-367.36.02/kernel/nvidia-drm/nvidia-drm-gem.c
--- NVIDIA-Linux-x86_64-367.36.02/kernel/nvidia-drm/nvidia-drm-gem.c 2016-07-25 13:23:10.000000000 +0200
+++ patched_NVIDIA-Linux-x86_64-367.36.02/kernel/nvidia-drm/nvidia-drm-gem.c 2016-07-31 05:37:57.013950532 +0200
@@ -408,7 +408,7 @@
mutex_lock(&dev->struct_mutex);
- gem = drm_gem_object_lookup(dev, file, handle);
+ gem = drm_gem_object_lookup(file, handle);
if (gem == NULL)
{
diff -u --recursive NVIDIA-Linux-x86_64-367.36.02/kernel/nvidia-drm/nvidia-drm-modeset.c patched_NVIDIA-Linux-x86_64-367.36.02/kernel/nvidia-drm/nvidia-drm-modeset.c
--- NVIDIA-Linux-x86_64-367.36.02/kernel/nvidia-drm/nvidia-drm-modeset.c 2016-07-25 13:23:10.000000000 +0200
+++ patched_NVIDIA-Linux-x86_64-367.36.02/kernel/nvidia-drm/nvidia-drm-modeset.c 2016-08-02 17:14:57.895422720 +0200
@@ -675,7 +675,7 @@
goto failed;
}
- drm_atomic_helper_swap_state(dev, state);
+ drm_atomic_helper_swap_state(state, true);
nvidia_drm_update_head_mode_config(state, requested_config);
|