Annotation of /trunk/nvidia/1.0.6629/NVIDIA_kernel-1.0-6629-1182399.patch
Parent Directory | Revision Log
Revision 153 -
(hide annotations)
(download)
Tue May 8 20:52:56 2007 UTC (17 years ago) by niro
File size: 2608 byte(s)
Tue May 8 20:52:56 2007 UTC (17 years ago) by niro
File size: 2608 byte(s)
-import
1 | niro | 153 | diff -ru usr/src/nv/nv-linux.h usr/src/nv.1182399/nv-linux.h |
2 | --- usr/src/nv/nv-linux.h 2004-11-03 22:53:00.000000000 +0100 | ||
3 | +++ usr/src/nv.1182399/nv-linux.h 2004-12-21 18:58:41.000000000 +0100 | ||
4 | @@ -155,6 +155,10 @@ | ||
5 | #endif | ||
6 | #endif /* defined(NVCPU_X86) */ | ||
7 | |||
8 | +#ifndef get_cpu | ||
9 | +#define get_cpu() smp_processor_id() | ||
10 | +#define put_cpu() | ||
11 | +#endif | ||
12 | |||
13 | #if !defined (list_for_each) | ||
14 | #define list_for_each(pos, head) \ | ||
15 | diff -ru usr/src/nv/nv.c usr/src/nv.1182399/nv.c | ||
16 | --- usr/src/nv/nv.c 2004-11-03 22:53:00.000000000 +0100 | ||
17 | +++ usr/src/nv.1182399/nv.c 2004-12-21 18:58:55.000000000 +0100 | ||
18 | @@ -2769,21 +2769,13 @@ | ||
19 | } | ||
20 | |||
21 | |||
22 | -/* avoid compiler warnings on UP kernels, | ||
23 | - * when spinlock macros are defined away | ||
24 | - */ | ||
25 | -#define NO_COMPILER_WARNINGS(nvl) \ | ||
26 | - if (nvl == NULL) return | ||
27 | - | ||
28 | - | ||
29 | static void nv_lock_init_locks | ||
30 | ( | ||
31 | nv_state_t *nv | ||
32 | ) | ||
33 | { | ||
34 | - nv_linux_state_t *nvl = NV_GET_NVL_FROM_NV_STATE(nv); | ||
35 | - | ||
36 | - NO_COMPILER_WARNINGS(nvl); | ||
37 | + nv_linux_state_t *nvl; | ||
38 | + nvl = NV_GET_NVL_FROM_NV_STATE(nv); | ||
39 | |||
40 | spin_lock_init(&nvl->rm_lock); | ||
41 | |||
42 | @@ -2799,28 +2791,33 @@ | ||
43 | nv_state_t *nv | ||
44 | ) | ||
45 | { | ||
46 | - nv_linux_state_t *nvl = NV_GET_NVL_FROM_NV_STATE(nv); | ||
47 | - NO_COMPILER_WARNINGS(nvl); | ||
48 | + nv_linux_state_t *nvl; | ||
49 | + int cpu; | ||
50 | + | ||
51 | + nvl = NV_GET_NVL_FROM_NV_STATE(nv); | ||
52 | + cpu = get_cpu(); | ||
53 | |||
54 | - if (nvl->rm_lock_cpu == smp_processor_id()) | ||
55 | + if (nvl->rm_lock_cpu == cpu) | ||
56 | { | ||
57 | nvl->rm_lock_count++; | ||
58 | + put_cpu(); | ||
59 | return; | ||
60 | } | ||
61 | |||
62 | + put_cpu(); | ||
63 | spin_unlock_wait(&nvl->rm_lock); | ||
64 | spin_lock_irq(&nvl->rm_lock); | ||
65 | |||
66 | - nvl->rm_lock_cpu = smp_processor_id(); | ||
67 | - nvl->rm_lock_count = 1; | ||
68 | + nvl->rm_lock_cpu = smp_processor_id(); | ||
69 | + nvl->rm_lock_count = 1; | ||
70 | } | ||
71 | |||
72 | void NV_API_CALL nv_unlock_rm( | ||
73 | nv_state_t *nv | ||
74 | ) | ||
75 | { | ||
76 | - nv_linux_state_t *nvl = NV_GET_NVL_FROM_NV_STATE(nv); | ||
77 | - NO_COMPILER_WARNINGS(nvl); | ||
78 | + nv_linux_state_t *nvl; | ||
79 | + nvl = NV_GET_NVL_FROM_NV_STATE(nv); | ||
80 | |||
81 | if (--nvl->rm_lock_count) | ||
82 | return; | ||
83 | diff -ru usr/src/nv/os-interface.c usr/src/nv.1182399/os-interface.c | ||
84 | --- usr/src/nv/os-interface.c 2004-11-03 22:53:00.000000000 +0100 | ||
85 | +++ usr/src/nv.1182399/os-interface.c 2004-12-21 18:58:47.000000000 +0100 | ||
86 | @@ -732,10 +732,17 @@ | ||
87 | // | ||
88 | inline void NV_API_CALL out_string(const char *str) | ||
89 | { | ||
90 | +#if DEBUG | ||
91 | static int was_newline = 0; | ||
92 | |||
93 | - if (was_newline) printk("%d: %s", smp_processor_id(), str); | ||
94 | - else printk("%s", str); | ||
95 | + if (NV_NUM_CPUS() > 1 && was_newline) | ||
96 | + { | ||
97 | + printk("%d: %s", get_cpu(), str); | ||
98 | + put_cpu(); | ||
99 | + } | ||
100 | + else | ||
101 | +#endif | ||
102 | + printk("%s", str); | ||
103 | |||
104 | #if DEBUG | ||
105 | if (NV_NUM_CPUS() > 1) |
Properties
Name | Value |
---|---|
svn:executable | * |