nvscic2c-pcie: Use vm_flags_set() APIs for Linux 6.3 and later

The VM flag is set via the API vm_flags_set() provided from core kernel
from Linux 6.3 and above. Use this API to set the flag.

Bug 4374520

Change-Id: If09eea1d03de8ac05aac692879a52f0f74eca251
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3014990
GVS: Gerrit_Virtual_Submit <buildbot_gerritrpt@nvidia.com>
This commit is contained in:
Laxman Dewangan
2023-11-12 19:25:48 +00:00
committed by mobile promotions
parent dc69c0b58a
commit 9ce6a359f7
3 changed files with 5 additions and 2 deletions

View File

@@ -25,6 +25,9 @@ endif
# Legacy GPIO support is removed in Linux v6.3 # Legacy GPIO support is removed in Linux v6.3
ifeq ($(shell test $(LINUX_VERSION) -ge $(LINUX_VERSION_6_3); echo $$?),0) ifeq ($(shell test $(LINUX_VERSION) -ge $(LINUX_VERSION_6_3); echo $$?),0)
export CONFIG_TEGRA_GPIO_LEGACY_DISABLE=y export CONFIG_TEGRA_GPIO_LEGACY_DISABLE=y
# Setting VM flag via API vm_flags_set
subdir-ccflags-y += -DNV_VM_FLAG_SET_API_AVAILABLE
endif endif
# Changes done in Linux 6.4 onwards # Changes done in Linux 6.4 onwards

View File

@@ -345,7 +345,7 @@ endpoint_fops_mmap(struct file *filp, struct vm_area_struct *vma)
} }
vma->vm_pgoff = 0; vma->vm_pgoff = 0;
#if defined(CONFIG_TEGRA_SYSTEM_TYPE_ACK) && (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0)) #if defined(NV_VM_FLAG_SET_API_AVAILABLE) || (defined(CONFIG_TEGRA_SYSTEM_TYPE_ACK) && (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0)))
vm_flags_set(vma, VM_DONTCOPY); vm_flags_set(vma, VM_DONTCOPY);
#else #else
vma->vm_flags |= (VM_DONTCOPY); // fork() not supported. vma->vm_flags |= (VM_DONTCOPY); // fork() not supported.

View File

@@ -294,7 +294,7 @@ fops_mmap(struct file *filep, struct vm_area_struct *vma)
memaddr = stream_obj->aper; memaddr = stream_obj->aper;
vma->vm_pgoff = 0; vma->vm_pgoff = 0;
#if defined(CONFIG_TEGRA_SYSTEM_TYPE_ACK) && (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0)) #if defined(NV_VM_FLAG_SET_API_AVAILABLE) || (defined(CONFIG_TEGRA_SYSTEM_TYPE_ACK) && (LINUX_VERSION_CODE >= KERNEL_VERSION(6, 1, 0)))
vm_flags_set(vma, VM_DONTCOPY); vm_flags_set(vma, VM_DONTCOPY);
#else #else
vma->vm_flags |= (VM_DONTCOPY); vma->vm_flags |= (VM_DONTCOPY);