Commit 70a18505 authored by Gwenhael Goavec-Merou's avatar Gwenhael Goavec-Merou Committed by Federico Vaga

zio:buffers: zio-buf-vmalloc: fix fault callback signature

Since 4.11 vm_operations_struct .fault has only a vm_fault parameter
and since 4.17 callback function must return vm_fault_t instead of int
Signed-off-by: 's avatarGwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Signed-off-by: Federico Vaga <federico.vaga@vaga.pv.it> (CERN)
parent 72e7fe42
......@@ -448,9 +448,8 @@ static void zbk_close(struct vm_area_struct *vma)
atomic_dec(&zbki->map_count);
}
static int zbk_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
static int __zbk_fault(struct vm_fault *vmf, struct file *f)
{
struct file *f = vma->vm_file;
struct zio_f_priv *priv = f->private_data;
struct zio_bi *bi = priv->chan->bi;
struct zbk_instance *zbki = to_zbki(bi);
......@@ -474,6 +473,25 @@ static int zbk_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
return 0;
}
#if KERNEL_VERSION(4, 11, 0) > LINUX_VERSION_CODE
static int zbk_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
{
return __zbk_fault(vmf, vma->vm_file);
}
#else
#if KERNEL_VERSION(4, 17, 0) > LINUX_VERSION_CODE
static int zbk_fault(struct vm_fault *vmf)
{
return __zbk_fault(vmf, vmf->vma->vm_file);
}
#else
static vm_fault_t zbk_fault(struct vm_fault *vmf)
{
return __zbk_fault(vmf, vmf->vma->vm_file);
}
#endif
#endif
static struct vm_operations_struct zbk_vma_ops = {
.open = zbk_open,
.close = zbk_close,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment