diff -Nur a/nv-drm.c b/nv-drm.c --- a/nv-drm.c 2018-05-25 06:16:20.000000000 +0200 +++ b/nv-drm.c 2019-05-09 20:51:33.364278935 +0200 @@ -146,11 +146,7 @@ }; static struct drm_driver nv_drm_driver = { -#if defined(DRIVER_LEGACY) .driver_features = DRIVER_GEM | DRIVER_PRIME | DRIVER_LEGACY, -#else - .driver_features = DRIVER_GEM | DRIVER_PRIME, -#endif .load = nv_drm_load, .unload = nv_drm_unload, .fops = &nv_drm_fops, --- a/uvm/nvidia_uvm_lite.c 2019-05-15 13:57:47.150881334 -0400 +++ b/uvm/nvidia_uvm_lite.c 2019-05-15 14:06:23.552636830 -0400 @@ -820,8 +820,10 @@ #if defined(NV_VM_OPERATIONS_STRUCT_HAS_FAULT) #if LINUX_VERSION_CODE < KERNEL_VERSION(4, 11, 0) int _fault(struct vm_area_struct *vma, struct vm_fault *vmf) -#else +#elif LINUX_VERSION_CODE < KERNEL_VERSION(5, 1, 0) int _fault(struct vm_fault *vmf) +#else +vm_fault_t _fault(struct vm_fault *vmf) #endif { #if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 11, 0) @@ -875,8 +877,10 @@ #if defined(NV_VM_OPERATIONS_STRUCT_HAS_FAULT) #if LINUX_VERSION_CODE < KERNEL_VERSION(4, 11, 0) int _sigbus_fault(struct vm_area_struct *vma, struct vm_fault *vmf) -#else +#elif LINUX_VERSION_CODE < KERNEL_VERSION(5, 1, 0) int _sigbus_fault(struct vm_fault *vmf) +#else +vm_fault_t _sigbus_fault(struct vm_fault *vmf) #endif { vmf->page = NULL;