diff --git a/utils/pktlog/linux_ac.c b/utils/pktlog/linux_ac.c index e16142a30ddd..7e0aab5d5880 100644 --- a/utils/pktlog/linux_ac.c +++ b/utils/pktlog/linux_ac.c @@ -991,9 +991,21 @@ static void pktlog_vclose(struct vm_area_struct *vma) PKTLOG_MOD_DEC_USE_COUNT; } +#if LINUX_VERSION_CODE < KERNEL_VERSION(4, 10, 0) +static inline unsigned long pktlog_get_fault_address(struct vm_fault *vmf) +{ + return (unsigned long)vmf->virtual_address; +} +#else +static inline unsigned long pktlog_get_fault_address(struct vm_fault *vmf) +{ + return vmf->address; +} +#endif /* KERNEL_VERSION(4, 10, 0) */ + static int pktlog_fault(struct vm_area_struct *vma, struct vm_fault *vmf) { - unsigned long address = (unsigned long)vmf->virtual_address; + unsigned long address = pktlog_get_fault_address(vmf); if (address == 0UL) return VM_FAULT_NOPAGE;