- 论坛徽章:
- 0
|
diff -ur fglrx/build_mod/firegl_public.c fglrx-new/build_mod/firegl_public.c
--- fglrx/build_mod/firegl_public.c 2008-04-11 02:20:59.000000000 +0800
+++ fglrx-new/build_mod/firegl_public.c 2008-05-26 03:56:13.415676168 +0800
@@ -1158,7 +1158,7 @@
int ATI_API_CALL KCL_SetPageNoCache(void* virt, int pages)
{
- return change_page_attr(virt_to_page(virt), pages, PAGE_KERNEL_NOCACHE);
+ return set_memory_uc(virt, pages);
}
/** /brief Call global kernel task/thread scheduler */
@@ -1885,7 +1885,7 @@
*/
KCL_TYPE_Cap ATI_API_CALL KCL_PosixSecurityCapGetEffectiveVector()
{
- return cap_t(current->cap_effective);
+ return current->cap_effective.cap[0];
}
/** \brief Set vector of effective security caps for the current process
@@ -1893,7 +1893,8 @@
*/
void ATI_API_CALL KCL_PosixSecurityCapSetEffectiveVector(KCL_TYPE_Cap cap)
{
- cap_t(current->cap_effective) = cap;
+ current->cap_effective.cap[0] = cap;
+ current->cap_effective.cap[1] = 0;
}
/** \brief Get number of available RAM pages
@@ -2372,11 +2373,6 @@
return access_ok(VERIFY_WRITE, addr, size) ? 0 : -EFAULT;
}
-struct mm_struct* ATI_API_CALL __ke_init_mm(void)
-{
- return &init_mm;
-}
-
struct mm_struct* ATI_API_CALL __ke_current_mm(void)
{
return current->mm;
@@ -3094,7 +3090,7 @@
in paging system of the kernel VM
(or is it the init process? - not sure yet)
*/
- PGD_OFFSET_K(pgd_p, pte_linear);
+ PGD_OFFSET(vma->vm_mm, pgd_p, pte_linear);
PGD_PRESENT(pgd_p);
/* locate medium level page table (x86 => nop) */
PMD_OFFSET(pmd_p, pgd_p, pte_linear)
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/42947/showart_706296.html |
|