fglrx-8.6-2.6.26.patch
von Anonymous- SNIPPET_TEXT:
-
- diff -aur build_mod.old/firegl_public.c build_mod/firegl_public.c
- --- build_mod.old/firegl_public.c 2008-07-16 13:45:19.000000000 +0200
- +++ build_mod/firegl_public.c 2008-07-16 13:51:40.000000000 +0200
- @@ -3274,10 +3274,6 @@
- /*****************************************************************************/
- -#ifndef NOPAGE_SIGBUS
- -#define NOPAGE_SIGBUS 0
- -#endif /* !NOPAGE_SIGBUS */
- -
- typedef struct page mem_map_t;
- typedef mem_map_t *vm_nopage_ret_t;
- @@ -3310,7 +3306,7 @@
- return page;
- }
- }
- - return NOPAGE_SIGBUS; /* Disallow mremap */
- + return VM_FAULT_SIGBUS; /* Disallow mremap */
- }
- #endif /* __ia64__ */
- @@ -3351,7 +3347,7 @@
- (unsigned long)__ke_vm_offset(vma));
- if (address > vma->vm_end)
- - return NOPAGE_SIGBUS; /* address is out of range */
- + return VM_FAULT_SIGBUS; /* address is out of range */
- /* Calculate offset into VMA */
- vma_offset = address - vma->vm_start;
- @@ -3363,7 +3359,7 @@
- pte_linear = firegl_get_addr_from_vm(vma);
- if (!pte_linear)
- {
- - return NOPAGE_SIGBUS; /* bad address */
- + return VM_FAULT_SIGBUS; /* bad address */
- }
- pte_linear += vma_offset;
- @@ -3417,7 +3413,7 @@
- kaddr = firegl_get_addr_from_vm(vma);
- if (!kaddr)
- {
- - return NOPAGE_SIGBUS; /* bad address */
- + return VM_FAULT_SIGBUS; /* bad address */
- }
- kaddr += (address - vma->vm_start);
- @@ -3457,7 +3453,7 @@
- kaddr = firegl_get_addr_from_vm(vma);
- if (!kaddr)
- {
- - return NOPAGE_SIGBUS; /* bad address */
- + return VM_FAULT_SIGBUS; /* bad address */
- }
- kaddr += (address - vma->vm_start);
- @@ -3492,26 +3488,26 @@
- if (dev == NULL)
- {
- __KE_ERROR("dev is NULL\n");
- - return NOPAGE_SIGBUS;
- + return VM_FAULT_SIGBUS;
- }
- if (address > vma->vm_end)
- {
- __KE_ERROR("address out of range\n");
- - return NOPAGE_SIGBUS; /* address is out of range */
- + return VM_FAULT_SIGBUS; /* address is out of range */
- }
- pciemem = firegl_get_pciemem_from_addr ( vma, address);
- if (pciemem == NULL)
- {
- __KE_ERROR("No pciemem found! \n");
- - return NOPAGE_SIGBUS;
- + return VM_FAULT_SIGBUS;
- }
- pagelist = firegl_get_pagelist_from_vm(vma);
- if (pagelist == NULL)
- {
- __KE_ERROR("No pagelist! \n");
- - return NOPAGE_SIGBUS;
- + return VM_FAULT_SIGBUS;
- }
- /** Find offset in vma */
- @@ -3525,7 +3521,7 @@
- if (page_address(pMmPage) == 0x0)
- {
- __KE_ERROR("Invalid page address\n");
- - return NOPAGE_SIGBUS;
- + return VM_FAULT_SIGBUS;
- }
- return pMmPage;
- }
- @@ -3541,7 +3537,7 @@
- if (address > vma->vm_end)
- {
- __KE_ERROR("Invalid virtual address\n");
- - return NOPAGE_SIGBUS; /* Disallow mremap */
- + return VM_FAULT_SIGBUS; /* Disallow mremap */
- }
- offset = address - vma->vm_start;
- @@ -3553,7 +3549,7 @@
- if( !page_addr)
- {
- __KE_ERROR("Invalid page address\n");
- - return NOPAGE_SIGBUS; /* Disallow mremap */
- + return VM_FAULT_SIGBUS; /* Disallow mremap */
- }
- page = virt_to_page(page_addr);
- get_page(page);
- @@ -3830,7 +3826,7 @@
- static struct vm_operations_struct vm_ops =
- {
- - nopage: vm_nopage,
- + fault: vm_nopage,
- open: ip_drm_vm_open,
- close: ip_drm_vm_close,
- };
- @@ -3839,7 +3835,7 @@
- #ifdef __ia64__
- static struct vm_operations_struct vm_cant_ops =
- {
- - nopage: vm_cant_nopage,
- + fault: vm_cant_nopage,
- open: ip_drm_vm_open,
- close: ip_drm_vm_close,
- };
- @@ -3848,42 +3844,42 @@
- static struct vm_operations_struct vm_shm_ops =
- {
- - nopage: vm_shm_nopage,
- + fault: vm_shm_nopage,
- open: ip_drm_vm_open,
- close: ip_drm_vm_close,
- };
- static struct vm_operations_struct vm_pci_bq_ops =
- {
- - nopage: vm_dma_nopage,
- + fault: vm_dma_nopage,
- open: ip_drm_vm_open,
- close: ip_drm_vm_close,
- };
- static struct vm_operations_struct vm_ctx_ops =
- {
- - nopage: vm_dma_nopage,
- + fault: vm_dma_nopage,
- open: ip_drm_vm_open,
- close: ip_drm_vm_close,
- };
- static struct vm_operations_struct vm_pcie_ops =
- {
- - nopage: vm_pcie_nopage,
- + fault: vm_pcie_nopage,
- open: ip_drm_vm_open,
- close: ip_drm_vm_close,
- };
- static struct vm_operations_struct vm_kmap_ops =
- {
- - nopage: vm_kmap_nopage,
- + fault: vm_kmap_nopage,
- open: ip_drm_vm_open,
- close: ip_drm_vm_close,
- };
- static struct vm_operations_struct vm_gart_ops =
- {
- - nopage: vm_gart_nopage,
- + fault: vm_gart_nopage,
- open: ip_drm_vm_open,
- close: ip_drm_vm_close,
- };
- @@ -3892,14 +3888,14 @@
- #ifndef __ia64__
- static struct vm_operations_struct vm_agp_bq_ops =
- {
- - nopage: vm_nopage,
- + fault: vm_nopage,
- open: ip_drm_vm_open,
- close: ip_drm_vm_close,
- };
- #else
- static struct vm_operations_struct vm_cant_agp_bq_ops =
- {
- - nopage: vm_cant_nopage,
- + fault: vm_cant_nopage,
- open: ip_drm_vm_open,
- close: ip_drm_vm_close,
- };
- diff -aur build_mod.old/firegl_public.h build_mod/firegl_public.h
- --- build_mod.old/firegl_public.h 2008-07-16 13:45:19.000000000 +0200
- +++ build_mod/firegl_public.h 2008-07-16 13:48:03.000000000 +0200
- @@ -78,7 +78,7 @@
- if (!pgd_present(*(pgd_p))) \
- { \
- __KE_ERROR("FATAL ERROR: User queue buffer not present! (pgd)\n"); \
- - return (unsigned long)NOPAGE_SIGBUS; /* Something bad happened; generate SIGBUS */ \
- + return VM_FAULT_SIGBUS; /* Something bad happened; generate SIGBUS */ \
- /* alternatively we could generate a NOPAGE_OOM "out of memory" */ \
- } \
- } while(0)
- @@ -91,7 +91,7 @@
- if (!pud_present(*(pud_p))) \
- { \
- __KE_ERROR("FATAL ERROR: User queue buffer not present! (pud)\n"); \
- - return (unsigned long)NOPAGE_SIGBUS; /* Something bad happened; generate SIGBUS */ \
- + return VM_FAULT_SIGBUS; /* Something bad happened; generate SIGBUS */ \
- /* alternatively we could generate a NOPAGE_OOM "out of memory" */ \
- } \
- pmd_p = pmd_offset(pud_p, pte_linear); \
- @@ -111,7 +111,7 @@
- if (!pmd_present(*(pmd_p))) \
- { \
- __KE_ERROR("FATAL ERROR: User queue buffer not present! (pmd)\n"); \
- - return (unsigned long)NOPAGE_SIGBUS; /* Something bad happened; generate SIGBUS */ \
- + return VM_FAULT_SIGBUS; /* Something bad happened; generate SIGBUS */ \
- /* alternatively we could generate a NOPAGE_OOM "out of memory" */ \
- } \
- } while(0)
- @@ -157,7 +157,7 @@
- if (!pte_present(pte)) \
- { \
- __KE_ERROR("FATAL ERROR: User queue buffer not present! (pte)\n"); \
- - return (unsigned long)NOPAGE_SIGBUS; /* Something bad happened; generate SIGBUS */ \
- + return VM_FAULT_SIGBUS; /* Something bad happened; generate SIGBUS */ \
- /* alternatively we could generate a NOPAGE_OOM "out of memory" */ \
- } \
- } while(0)
Quellcode
Hier kannst du den Code kopieren und ihn in deinen bevorzugten Editor einfügen. PASTEBIN_DOWNLOAD_SNIPPET_EXPLAIN