diff --git a/srcpkgs/catalyst/files/arch-fglrx-3.7.patch b/srcpkgs/catalyst/files/arch-fglrx-3.7.patch new file mode 100644 index 00000000000..c204dc8ff51 --- /dev/null +++ b/srcpkgs/catalyst/files/arch-fglrx-3.7.patch @@ -0,0 +1,132 @@ +--- common/lib/modules/fglrx/build_mod/firegl_public.c 2012-09-26 15:04:28.000000000 +0200 ++++ common/lib/modules/fglrx/build_mod/firegl_public.c 2012-10-16 20:30:42.146523753 +0200 +@@ -3892,7 +3892,11 @@ + KCL_DEBUG_ERROR(REMAP_PAGE_RANGE_STR " failed\n"); + return -EAGAIN; + } ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) + vma->vm_flags |= VM_SHM | VM_RESERVED; /* Don't swap */ ++#else ++ vma->vm_flags |= VM_SHM | VM_DONTEXPAND | VM_DONTDUMP; /* Don't swap */ ++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ + vma->vm_ops = &vm_ops; + break; + +@@ -3922,14 +3926,22 @@ + KCL_DEBUG_ERROR(REMAP_PAGE_RANGE_STR " failed\n"); + return -EAGAIN; + } ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) + vma->vm_flags |= VM_SHM | VM_RESERVED; /* Don't swap */ ++#else ++ vma->vm_flags |= VM_SHM | VM_DONTEXPAND | VM_DONTDUMP; /* Don't swap */ ++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ + vma->vm_ops = &vm_ops; + } + break; + #endif + + case __KE_SHM: ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) + vma->vm_flags |= VM_SHM | VM_RESERVED; /* Don't swap */ ++#else ++ vma->vm_flags |= VM_SHM | VM_DONTEXPAND | VM_DONTDUMP; /* Don't swap */ ++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ + vma->vm_ops = &vm_shm_ops; + break; + +@@ -3937,7 +3949,11 @@ + + pages = (vma->vm_end - vma->vm_start) >> PAGE_SHIFT; + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) + vma->vm_flags |= VM_RESERVED; ++#else ++ vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP; ++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ + + //vma->vm_flags |= VM_SHM | VM_LOCKED; /* DDDDDDDDDDon't swap */ + //vma->vm_mm->locked_vm += pages; /* Kernel tracks aqmount of locked pages */ +@@ -3946,14 +3962,22 @@ + + case __KE_CTX: + pages = (vma->vm_end - vma->vm_start) >> PAGE_SHIFT; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) + vma->vm_flags |= VM_LOCKED | VM_SHM | VM_RESERVED; /* Don't swap */ ++#else ++ vma->vm_flags |= VM_LOCKED | VM_SHM | VM_DONTEXPAND | VM_DONTDUMP; /* Don't swap */ ++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ + vma->vm_mm->locked_vm += pages; /* Kernel tracks aqmount of locked pages */ + vma->vm_ops = &vm_ctx_ops; + break; + + case __KE_PCI_BQS: + pages = (vma->vm_end - vma->vm_start) >> PAGE_SHIFT; ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) + vma->vm_flags |= VM_LOCKED | VM_SHM | VM_RESERVED; /* Don't swap */ ++#else ++ vma->vm_flags |= VM_LOCKED | VM_SHM | VM_DONTEXPAND | VM_DONTDUMP; /* Don't swap */ ++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ + vma->vm_mm->locked_vm += pages; /* Kernel tracks aqmount of locked pages */ + vma->vm_ops = &vm_pci_bq_ops; + break; +@@ -3984,9 +4008,17 @@ + return -EAGAIN; + } + #ifdef __x86_64__ ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) + vma->vm_flags |= VM_RESERVED; + #else ++ vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP; ++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ ++#else ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) + vma->vm_flags |= VM_SHM | VM_RESERVED; /* Don't swap */ ++#else ++ vma->vm_flags |= VM_SHM | VM_DONTEXPAND | VM_DONTDUMP; /* Don't swap */ ++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ + #endif + vma->vm_ops = &vm_ops; + } +@@ -4015,9 +4047,17 @@ + return -EAGAIN; + } + #ifdef __x86_64__ ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) + vma->vm_flags |= VM_RESERVED; + #else ++ vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP; ++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ ++#else ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) + vma->vm_flags |= VM_SHM | VM_RESERVED; /* Don't swap */ ++#else ++ vma->vm_flags |= VM_SHM | VM_DONTEXPAND | VM_DONTDUMP; /* Don't swap */ ++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ + #endif + vma->vm_ops = &vm_agp_bq_ops; + } +@@ -4025,7 +4065,11 @@ + #endif /* __AGP__BUILTIN__ */ + + case __KE_KMAP: ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) + vma->vm_flags |= VM_SHM | VM_RESERVED; ++#else ++ vma->vm_flags |= VM_SHM | VM_DONTEXPAND | VM_DONTDUMP; ++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ + vma->vm_ops = &vm_kmap_ops; + if (readonly && (vma->vm_flags & VM_WRITE)) + { +@@ -4046,7 +4090,11 @@ + #endif + // fall through + case __KE_GART_CACHEABLE: ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) + vma->vm_flags |= VM_RESERVED; ++#else ++ vma->vm_flags |= VM_DONTEXPAND | VM_DONTDUMP; ++#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */ + vma->vm_ops = &vm_gart_ops; + break; + default: diff --git a/srcpkgs/catalyst/template b/srcpkgs/catalyst/template index b20147c278b..0a3503e824b 100644 --- a/srcpkgs/catalyst/template +++ b/srcpkgs/catalyst/template @@ -1,7 +1,7 @@ # Template file for 'catalyst' pkgname=catalyst version=13.1 -revision=1 +revision=2 short_desc="AMD catalyst driver for Linux -- libraries and utilities" maintainer="Juan RP " license="Propietary AMD license" @@ -32,6 +32,7 @@ do_build() { do_install() { cd ${wrksrc}/fglrx + patch -Np0 -i ${FILESDIR}/arch-fglrx-3.7.patch install -dm755 ${DESTDIR}/usr/{bin,sbin} install -dm755 ${DESTDIR}/usr/lib/{dri,xorg/modules/{dri,drivers,extensions/fglrx,linux},systemd/system}