diff options
Diffstat (limited to 'sys-kernel/compat-drivers-alx/files/3.8-grsec/06-read-only-radeon.patch')
-rw-r--r-- | sys-kernel/compat-drivers-alx/files/3.8-grsec/06-read-only-radeon.patch | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/sys-kernel/compat-drivers-alx/files/3.8-grsec/06-read-only-radeon.patch b/sys-kernel/compat-drivers-alx/files/3.8-grsec/06-read-only-radeon.patch new file mode 100644 index 00000000..f9180c45 --- /dev/null +++ b/sys-kernel/compat-drivers-alx/files/3.8-grsec/06-read-only-radeon.patch @@ -0,0 +1,58 @@ +--- ./drivers/gpu/drm/radeon/radeon.h ++++ ./drivers/gpu/drm/radeon/radeon.h +@@ -741,7 +741,7 @@ + int x2, int y2); + void (*draw_auto)(struct radeon_device *rdev); + void (*set_default_state)(struct radeon_device *rdev); +-}; ++} __no_const; + + struct r600_blit { + struct radeon_bo *shader_obj; +@@ -1173,7 +1173,7 @@ + struct { + void (*tlb_flush)(struct radeon_device *rdev); + int (*set_page)(struct radeon_device *rdev, int i, uint64_t addr); +- } gart; ++ } __no_const gart; + struct { + int (*init)(struct radeon_device *rdev); + void (*fini)(struct radeon_device *rdev); +@@ -1214,7 +1214,7 @@ + void (*set_backlight_level)(struct radeon_encoder *radeon_encoder, u8 level); + /* get backlight level */ + u8 (*get_backlight_level)(struct radeon_encoder *radeon_encoder); +- } display; ++ } __no_const display; + /* copy functions for bo handling */ + struct { + int (*blit)(struct radeon_device *rdev, +@@ -1266,7 +1266,7 @@ + int (*get_pcie_lanes)(struct radeon_device *rdev); + void (*set_pcie_lanes)(struct radeon_device *rdev, int lanes); + void (*set_clock_gating)(struct radeon_device *rdev, int enable); +- } pm; ++ } __no_const pm; + /* pageflipping */ + struct { + void (*pre_page_flip)(struct radeon_device *rdev, int crtc); +@@ -1542,6 +1542,8 @@ + typedef uint32_t (*radeon_rreg_t)(struct radeon_device*, uint32_t); + typedef void (*radeon_wreg_t)(struct radeon_device*, uint32_t, uint32_t); + ++typedef struct vm_operations_struct __no_const vm_operations_struct_no_const; ++ + struct radeon_device { + struct device *dev; + struct drm_device *ddev; +--- ./drivers/gpu/drm/radeon/radeon_ttm.c ++++ ./drivers/gpu/drm/radeon/radeon_ttm.c +@@ -791,7 +791,7 @@ + man->size = size >> PAGE_SHIFT; + } + +-static struct vm_operations_struct radeon_ttm_vm_ops; ++static vm_operations_struct_no_const radeon_ttm_vm_ops; + static const struct vm_operations_struct *ttm_vm_ops = NULL; + + static int radeon_ttm_fault(struct vm_area_struct *vma, struct vm_fault *vmf) |