Lines 2106-2111
Link Here
|
2106 |
} |
2106 |
} |
2107 |
} |
2107 |
} |
2108 |
|
2108 |
|
|
|
2109 |
#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 5, 0) |
2110 |
# define NO_DO_MMAP |
2111 |
# define do_mmap(a,b,c,d,e,f) vm_mmap(a, b, c, d, e, f) |
2112 |
# define do_munmap(a,b,c) vm_munmap(b, c) |
2113 |
#endif |
2114 |
|
2109 |
unsigned long ATI_API_CALL KCL_MEM_AllocLinearAddrInterval( |
2115 |
unsigned long ATI_API_CALL KCL_MEM_AllocLinearAddrInterval( |
2110 |
KCL_IO_FILE_Handle file, |
2116 |
KCL_IO_FILE_Handle file, |
2111 |
unsigned long addr, |
2117 |
unsigned long addr, |
Lines 2117-2126
Link Here
|
2117 |
|
2123 |
|
2118 |
flags = MAP_SHARED; |
2124 |
flags = MAP_SHARED; |
2119 |
prot = PROT_READ|PROT_WRITE; |
2125 |
prot = PROT_READ|PROT_WRITE; |
2120 |
|
2126 |
#ifdef NO_DO_MMAP |
|
|
2127 |
vaddr = (void *) vm_mmap(file, 0, len, prot, flags, pgoff >> PAGE_SHIFT); |
2128 |
#else |
2121 |
down_write(¤t->mm->mmap_sem); |
2129 |
down_write(¤t->mm->mmap_sem); |
2122 |
vaddr = (void *) do_mmap(file, 0, len, prot, flags, pgoff); |
2130 |
vaddr = (void *) do_mmap(file, 0, len, prot, flags, pgoff); |
2123 |
up_write(¤t->mm->mmap_sem); |
2131 |
up_write(¤t->mm->mmap_sem); |
|
|
2132 |
#endif |
2124 |
if (IS_ERR(vaddr)) |
2133 |
if (IS_ERR(vaddr)) |
2125 |
return 0; |
2134 |
return 0; |
2126 |
else |
2135 |
else |
Lines 2131-2137
Link Here
|
2131 |
{ |
2140 |
{ |
2132 |
int retcode = 0; |
2141 |
int retcode = 0; |
2133 |
|
2142 |
|
|
|
2143 |
#ifndef NO_DO_MMAP |
2134 |
down_write(¤t->mm->mmap_sem); |
2144 |
down_write(¤t->mm->mmap_sem); |
|
|
2145 |
#endif |
2135 |
#ifdef FGL_LINUX_RHEL_MUNMAP_API |
2146 |
#ifdef FGL_LINUX_RHEL_MUNMAP_API |
2136 |
retcode = do_munmap(current->mm, |
2147 |
retcode = do_munmap(current->mm, |
2137 |
addr, |
2148 |
addr, |
Lines 2142-2148
Link Here
|
2142 |
addr, |
2153 |
addr, |
2143 |
len); |
2154 |
len); |
2144 |
#endif |
2155 |
#endif |
|
|
2156 |
#ifndef NO_DO_MMAP |
2145 |
up_write(¤t->mm->mmap_sem); |
2157 |
up_write(¤t->mm->mmap_sem); |
|
|
2158 |
#endif |
2146 |
return retcode; |
2159 |
return retcode; |
2147 |
} |
2160 |
} |
2148 |
|
2161 |
|