+--- lin_tape-3.0.52/lin_tape_scsi_tape.c~ 2020-03-05 19:43:09.000000000 +0100
++++ lin_tape-3.0.52/lin_tape_scsi_tape.c 2020-08-16 18:55:05.857678020 +0200
+@@ -11533,7 +11533,11 @@
+
+ memset(pages, '\0', drv->supported_sg_tablesize * sizeof(struct page*));
+
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5,8,0)
+ down_read(¤t->mm->mmap_sem);
++#else
++ mmap_read_lock(current->mm);
++#endif
+ #if LINUX_VERSION_CODE == KERNEL_VERSION(4,4,73) \
+ || (LINUX_VERSION_CODE >= KERNEL_VERSION(4,4,92) && LINUX_VERSION_CODE < KERNEL_VERSION(4,4,103)) \
+ || defined(SLESKERNEL_4_4_103_6) \
+@@ -11548,7 +11552,11 @@
+ mapped_pages = get_user_pages(current, current->mm,
+ (ulong)user_location, number_pages, rw, 0, pages, NULL);
+ #endif
++#if LINUX_VERSION_CODE < KERNEL_VERSION(5,8,0)
+ up_read(¤t->mm->mmap_sem);
++#else
++ mmap_read_unlock(current->mm);
++#endif
+
+ if(mapped_pages < number_pages) {
+ rc = -EFAULT;