Skip to contentSkip to conversation

staging: lustre: Change return type to vm_fault_t

PATCH Superseded Souptick Joarder 3 participants 9 messages May 21, 2018 – Jun 15, 2018 Staging

lore
Share & tools
lore
#0 lore raw

PATCH v3 1/1 staging: lustre: Change return type to vm_fault_t

Use new return type vm_fault_t for fault handler. For now, this is just documenting that the function returns a VM_FAULT value rather than an errno. Once all instances are converted, vm_fault_t will become a distinct type.

Ref-> commit 1c8f422059ae ("mm: change return type to vm_fault_t") was added in 4.17-rc1 to introduce the new typedef vm_fault_t. Currently we are making change to all drivers to return vm_fault_t for page fault handlers. As part of that lustre driver is also getting changed to return vm_fault_t type.

---
v2: updated the change log

v3: updated the change log

 drivers/staging/lustre/lustre/llite/llite_mmap.c | 35 ++++++++++++------------
 1 file changed, 18 insertions(+), 17 deletions(-)
drivers/staging/lustre/lustre/llite/llite_mmap.c +18 -17
index c0533bd..5b8fd10 100644
@@ -231,7 +231,7 @@ static int ll_page_mkwrite0(struct vm_area_struct *vma, struct page *vmpage,
 	return result;
 }
 
-static inline int to_fault_error(int result)
+static inline vm_fault_t to_fault_error(int result)
 {
 	switch (result) {
 	case 0:
@@ -261,7 +261,7 @@ static inline int to_fault_error(int result)
  * \retval VM_FAULT_ERROR on general error
  * \retval NOPAGE_OOM not have memory for allocate new page
  */
-static int ll_fault0(struct vm_area_struct *vma, struct vm_fault *vmf)
+static vm_fault_t ll_fault0(struct vm_area_struct *vma, struct vm_fault *vmf)
 {
 	struct lu_env	   *env;
 	struct cl_io	    *io;
@@ -269,16 +269,16 @@ static int ll_fault0(struct vm_area_struct *vma, struct vm_fault *vmf)
 	struct page	     *vmpage;
 	unsigned long	    ra_flags;
 	int		      result = 0;
-	int		      fault_ret = 0;
+	vm_fault_t		fault_ret = 0;
 	u16 refcheck;
 
 	env = cl_env_get(&refcheck);
 	if (IS_ERR(env))
-		return PTR_ERR(env);
+		return VM_FAULT_ERROR;
 
 	io = ll_fault_io_init(env, vma, vmf->pgoff, &ra_flags);
 	if (IS_ERR(io)) {
-		result = to_fault_error(PTR_ERR(io));
+		fault_ret = to_fault_error(PTR_ERR(io));
 		goto out;
 	}
 
@@ -319,15 +319,15 @@ static int ll_fault0(struct vm_area_struct *vma, struct vm_fault *vmf)
 	if (result != 0 && !(fault_ret & VM_FAULT_RETRY))
 		fault_ret |= to_fault_error(result);
 
-	CDEBUG(D_MMAP, "%s fault %d/%d\n", current->comm, fault_ret, result);
+	CDEBUG(D_MMAP, "%s fault %x/%d\n", current->comm, fault_ret, result);
 	return fault_ret;
 }
 
-static int ll_fault(struct vm_fault *vmf)
+static vm_fault_t ll_fault(struct vm_fault *vmf)
 {
 	int count = 0;
 	bool printed = false;
-	int result;
+	vm_fault_t result;
 	sigset_t set;
 
 	/* Only SIGKILL and SIGTERM are allowed for fault/nopage/mkwrite
@@ -364,18 +364,19 @@ static int ll_fault(struct vm_fault *vmf)
 	return result;
 }
 
-static int ll_page_mkwrite(struct vm_fault *vmf)
+static vm_fault_t ll_page_mkwrite(struct vm_fault *vmf)
 {
 	struct vm_area_struct *vma = vmf->vma;
 	int count = 0;
 	bool printed = false;
 	bool retry;
-	int result;
+	int err;
+	vm_fault_t ret;
 
 	file_update_time(vma->vm_file);
 	do {
 		retry = false;
-		result = ll_page_mkwrite0(vma, vmf->page, &retry);
+		err = ll_page_mkwrite0(vma, vmf->page, &retry);
 
 		if (!printed && ++count > 16) {
 			const struct dentry *de = vma->vm_file->f_path.dentry;
@@ -387,25 +388,25 @@ static int ll_page_mkwrite(struct vm_fault *vmf)
 		}
 	} while (retry);
 
-	switch (result) {
+	switch (err) {
 	case 0:
 		LASSERT(PageLocked(vmf->page));
-		result = VM_FAULT_LOCKED;
+		ret = VM_FAULT_LOCKED;
 		break;
 	case -ENODATA:
 	case -EAGAIN:
 	case -EFAULT:
-		result = VM_FAULT_NOPAGE;
+		ret = VM_FAULT_NOPAGE;
 		break;
 	case -ENOMEM:
-		result = VM_FAULT_OOM;
+		ret = VM_FAULT_OOM;
 		break;
 	default:
-		result = VM_FAULT_SIGBUS;
+		ret = VM_FAULT_SIGBUS;
 		break;
 	}
 
-	return result;
+	return ret;
 }
 
 /**
Signature · 1 line
1.9.1
#1 lore raw

PATCH v3 1/1 staging: lustre: Change return type to vm_fault_t

Quoted 138 lines · Souptick Joarder

Use new return type vm_fault_t for fault handler. For now, this is just documenting that the function returns a VM_FAULT value rather than an errno. Once all instances are converted, vm_fault_t will become a distinct type.

Ref-> commit 1c8f422059ae ("mm: change return type to vm_fault_t") was added in 4.17-rc1 to introduce the new typedef vm_fault_t. Currently we are making change to all drivers to return vm_fault_t for page fault handlers. As part of that lustre driver is also getting changed to return vm_fault_t type.

---
v2: updated the change log

v3: updated the change log

 drivers/staging/lustre/lustre/llite/llite_mmap.c | 35 ++++++++++++------------
 1 file changed, 18 insertions(+), 17 deletions(-)
drivers/staging/lustre/lustre/llite/llite_mmap.c +18 -18
index c0533bd..5b8fd10 100644
@@ -231,7 +231,7 @@ static int ll_page_mkwrite0(struct vm_area_struct *vma, struct page *vmpage,
        return result;
 }
 
-static inline int to_fault_error(int result)
+static inline vm_fault_t to_fault_error(int result)
 {
        switch (result) {
        case 0:
@@ -261,7 +261,7 @@ static inline int to_fault_error(int result)
  * \retval VM_FAULT_ERROR on general error
  * \retval NOPAGE_OOM not have memory for allocate new page
  */
-static int ll_fault0(struct vm_area_struct *vma, struct vm_fault *vmf)
+static vm_fault_t ll_fault0(struct vm_area_struct *vma, struct vm_fault *vmf)
 {
        struct lu_env      *env;
        struct cl_io        *io;
@@ -269,16 +269,16 @@ static int ll_fault0(struct vm_area_struct *vma, struct vm_fault *vmf)
        struct page          *vmpage;
        unsigned long       ra_flags;
        int                   result = 0;
-       int                   fault_ret = 0;
+       vm_fault_t              fault_ret = 0;
        u16 refcheck;
 
        env = cl_env_get(&refcheck);
        if (IS_ERR(env))
-               return PTR_ERR(env);
+               return VM_FAULT_ERROR;
 
        io = ll_fault_io_init(env, vma, vmf->pgoff, &ra_flags);
        if (IS_ERR(io)) {
-               result = to_fault_error(PTR_ERR(io));
+               fault_ret = to_fault_error(PTR_ERR(io));
                goto out;
        }
 
@@ -319,15 +319,15 @@ static int ll_fault0(struct vm_area_struct *vma, struct vm_fault *vmf)
        if (result != 0 && !(fault_ret & VM_FAULT_RETRY))
                fault_ret |= to_fault_error(result);
 
-       CDEBUG(D_MMAP, "%s fault %d/%d\n", current->comm, fault_ret, result);
+       CDEBUG(D_MMAP, "%s fault %x/%d\n", current->comm, fault_ret, result);
        return fault_ret;
 }
 
-static int ll_fault(struct vm_fault *vmf)
+static vm_fault_t ll_fault(struct vm_fault *vmf)
 {
        int count = 0;
        bool printed = false;
-       int result;
+       vm_fault_t result;
        sigset_t set;
 
        /* Only SIGKILL and SIGTERM are allowed for fault/nopage/mkwrite
@@ -364,18 +364,19 @@ static int ll_fault(struct vm_fault *vmf)
        return result;
 }
 
-static int ll_page_mkwrite(struct vm_fault *vmf)
+static vm_fault_t ll_page_mkwrite(struct vm_fault *vmf)
 {
        struct vm_area_struct *vma = vmf->vma;
        int count = 0;
        bool printed = false;
        bool retry;
-       int result;
+       int err;
+       vm_fault_t ret;
 
        file_update_time(vma->vm_file);
        do {
                retry = false;
-               result = ll_page_mkwrite0(vma, vmf->page, &retry);
+               err = ll_page_mkwrite0(vma, vmf->page, &retry);
 
                if (!printed && ++count > 16) {
                        const struct dentry *de = vma->vm_file->f_path.dentry;
@@ -387,25 +388,25 @@ static int ll_page_mkwrite(struct vm_fault *vmf)
                }
        } while (retry);
 
-       switch (result) {
+       switch (err) {
        case 0:
                LASSERT(PageLocked(vmf->page));
-               result = VM_FAULT_LOCKED;
+               ret = VM_FAULT_LOCKED;
                break;
        case -ENODATA:
        case -EAGAIN:
        case -EFAULT:
-               result = VM_FAULT_NOPAGE;
+               ret = VM_FAULT_NOPAGE;
                break;
        case -ENOMEM:
-               result = VM_FAULT_OOM;
+               ret = VM_FAULT_OOM;
                break;
        default:
-               result = VM_FAULT_SIGBUS;
+               ret = VM_FAULT_SIGBUS;
                break;
        }
 
-       return result;
+       return ret;
 }
 
 /**
--
Quoted 2 lines

1.9.1

If no further comment, we would like to get this patch in 4.18-rc-X.

maintainer
#2 lore raw

PATCH v3 1/1 staging: lustre: Change return type to vm_fault_t

Quoted 137 lines · Souptick Joarder
Quoted 136 lines · Souptick Joarder

Use new return type vm_fault_t for fault handler. For now, this is just documenting that the function returns a VM_FAULT value rather than an errno. Once all instances are converted, vm_fault_t will become a distinct type.

Ref-> commit 1c8f422059ae ("mm: change return type to vm_fault_t") was added in 4.17-rc1 to introduce the new typedef vm_fault_t. Currently we are making change to all drivers to return vm_fault_t for page fault handlers. As part of that lustre driver is also getting changed to return vm_fault_t type.

---
v2: updated the change log

v3: updated the change log

 drivers/staging/lustre/lustre/llite/llite_mmap.c | 35 ++++++++++++------------
 1 file changed, 18 insertions(+), 17 deletions(-)
drivers/staging/lustre/lustre/llite/llite_mmap.c +18 -17
index c0533bd..5b8fd10 100644
@@ -231,7 +231,7 @@ static int ll_page_mkwrite0(struct vm_area_struct *vma, struct page *vmpage,
        return result;
 }
 
-static inline int to_fault_error(int result)
+static inline vm_fault_t to_fault_error(int result)
 {
        switch (result) {
        case 0:
@@ -261,7 +261,7 @@ static inline int to_fault_error(int result)
  * \retval VM_FAULT_ERROR on general error
  * \retval NOPAGE_OOM not have memory for allocate new page
  */
-static int ll_fault0(struct vm_area_struct *vma, struct vm_fault *vmf)
+static vm_fault_t ll_fault0(struct vm_area_struct *vma, struct vm_fault *vmf)
 {
        struct lu_env      *env;
        struct cl_io        *io;
@@ -269,16 +269,16 @@ static int ll_fault0(struct vm_area_struct *vma, struct vm_fault *vmf)
        struct page          *vmpage;
        unsigned long       ra_flags;
        int                   result = 0;
-       int                   fault_ret = 0;
+       vm_fault_t              fault_ret = 0;
        u16 refcheck;
 
        env = cl_env_get(&refcheck);
        if (IS_ERR(env))
-               return PTR_ERR(env);
+               return VM_FAULT_ERROR;
 
        io = ll_fault_io_init(env, vma, vmf->pgoff, &ra_flags);
        if (IS_ERR(io)) {
-               result = to_fault_error(PTR_ERR(io));
+               fault_ret = to_fault_error(PTR_ERR(io));
                goto out;
        }
 
@@ -319,15 +319,15 @@ static int ll_fault0(struct vm_area_struct *vma, struct vm_fault *vmf)
        if (result != 0 && !(fault_ret & VM_FAULT_RETRY))
                fault_ret |= to_fault_error(result);
 
-       CDEBUG(D_MMAP, "%s fault %d/%d\n", current->comm, fault_ret, result);
+       CDEBUG(D_MMAP, "%s fault %x/%d\n", current->comm, fault_ret, result);
        return fault_ret;
 }
 
-static int ll_fault(struct vm_fault *vmf)
+static vm_fault_t ll_fault(struct vm_fault *vmf)
 {
        int count = 0;
        bool printed = false;
-       int result;
+       vm_fault_t result;
        sigset_t set;
 
        /* Only SIGKILL and SIGTERM are allowed for fault/nopage/mkwrite
@@ -364,18 +364,19 @@ static int ll_fault(struct vm_fault *vmf)
        return result;
 }
 
-static int ll_page_mkwrite(struct vm_fault *vmf)
+static vm_fault_t ll_page_mkwrite(struct vm_fault *vmf)
 {
        struct vm_area_struct *vma = vmf->vma;
        int count = 0;
        bool printed = false;
        bool retry;
-       int result;
+       int err;
+       vm_fault_t ret;
 
        file_update_time(vma->vm_file);
        do {
                retry = false;
-               result = ll_page_mkwrite0(vma, vmf->page, &retry);
+               err = ll_page_mkwrite0(vma, vmf->page, &retry);
 
                if (!printed && ++count > 16) {
                        const struct dentry *de = vma->vm_file->f_path.dentry;
@@ -387,25 +388,25 @@ static int ll_page_mkwrite(struct vm_fault *vmf)
                }
        } while (retry);
 
-       switch (result) {
+       switch (err) {
        case 0:
                LASSERT(PageLocked(vmf->page));
-               result = VM_FAULT_LOCKED;
+               ret = VM_FAULT_LOCKED;
                break;
        case -ENODATA:
        case -EAGAIN:
        case -EFAULT:
-               result = VM_FAULT_NOPAGE;
+               ret = VM_FAULT_NOPAGE;
                break;
        case -ENOMEM:
-               result = VM_FAULT_OOM;
+               ret = VM_FAULT_OOM;
                break;
        default:
-               result = VM_FAULT_SIGBUS;
+               ret = VM_FAULT_SIGBUS;
                break;
        }
 
-       return result;
+       return ret;
 }
 
Quoted 6 lines
Quoted 4 lines
drivers/staging/lustre/lustre/llite/llite_mmap.c +0 -1
 /**
--

1.9.1

If no further comment, we would like to get this patch in 4.18-rc-X.

Why? Is it a regression fix? That's all that is allowed after -rc1.

And have you tried applying it to Linus's current tree? :)

thanks,

greg k-h

#3 lore raw

PATCH v3 1/1 staging: lustre: Change return type to vm_fault_t

Quoted 3 lines · Greg KH
Quoted 1 line · Souptick Joarder

On Mon, May 21, 2018 at 11:39 PM, Souptick Joarder <[email protected]>

Quoted 12 lines · wrote:
Quoted 12 lines
Quoted 12 lines

Use new return type vm_fault_t for fault handler. For now, this is just documenting that the function returns a VM_FAULT value rather than an errno. Once all instances are converted, vm_fault_t will become a distinct type.

Ref-> commit 1c8f422059ae ("mm: change return type to vm_fault_t") was added in 4.17-rc1 to introduce the new typedef vm_fault_t. Currently we are making change to all drivers to return vm_fault_t for page fault handlers. As part of that lustre driver is also getting changed to return vm_fault_t type.

Quoted 7 lines
Quoted 7 lines
Quoted 7 lines

---
v2: updated the change log

v3: updated the change log

 drivers/staging/lustre/lustre/llite/llite_mmap.c | 35

++++++++++++------------

Quoted 3 lines
Quoted 3 lines

Review

Quoted 3 lines
 1 file changed, 18 insertions(+), 17 deletions(-)
(quoted diff) +0 -0

b/drivers/staging/lustre/lustre/llite/llite_mmap.c

Quoted 4 lines
Quoted 4 lines

drivers/staging/lustre/lustre/llite/llite_mmap.c static int ll_page_mkwrite0(struct vm_area_struct

Quoted 4 lines

index c0533bd..5b8fd10 100644

drivers/staging/lustre/lustre/llite/llite_mmap.c +0 -0
@@ -231,7 +231,7 @@ static int ll_page_mkwrite0(struct vm_area_struct

*vma, struct page *vmpage,

Quoted 13 lines
Quoted 13 lines

drivers/staging/lustre/lustre/llite/llite_mmap.c static inline int to_fault_error(int result) · line 264

Quoted 13 lines
drivers/staging/lustre/lustre/llite/llite_mmap.c +1 -2
        return result;
 }
 
-static inline int to_fault_error(int result)
+static inline vm_fault_t to_fault_error(int result)
 {
        switch (result) {
        case 0:
@@ -261,7 +261,7 @@ static inline int to_fault_error(int result)
  * \retval VM_FAULT_ERROR on general error
  * \retval NOPAGE_OOM not have memory for allocate new page
  */
-static int ll_fault0(struct vm_area_struct *vma, struct vm_fault

*vmf)

Quoted 1 line
Quoted 1 line

drivers/staging/lustre/lustre/llite/llite_mmap.c static inline int to_fault_error(int result) · line 264

Quoted 1 line
drivers/staging/lustre/lustre/llite/llite_mmap.c +1 -0
+static vm_fault_t ll_fault0(struct vm_area_struct *vma, struct

vm_fault *vmf)

Quoted 4 lines
Quoted 4 lines

drivers/staging/lustre/lustre/llite/llite_mmap.c static int ll_fault0(struct vm_area_struct

Quoted 4 lines
drivers/staging/lustre/lustre/llite/llite_mmap.c +0 -0
 {
        struct lu_env      *env;
        struct cl_io        *io;
@@ -269,16 +269,16 @@ static int ll_fault0(struct vm_area_struct

*vma, struct vm_fault *vmf)

Quoted 12 lines
Quoted 12 lines
Quoted 12 lines
drivers/staging/lustre/lustre/llite/llite_mmap.c +2 -2
        struct page          *vmpage;
        unsigned long       ra_flags;
        int                   result = 0;
-       int                   fault_ret = 0;
+       vm_fault_t              fault_ret = 0;
        u16 refcheck;
 
        env = cl_env_get(&refcheck);
        if (IS_ERR(env))
-               return PTR_ERR(env);
+               return VM_FAULT_ERROR;
 
Quoted 8 lines
Quoted 8 lines

drivers/staging/lustre/lustre/llite/llite_mmap.c static int ll_fault0(struct vm_area_struct

Quoted 8 lines
drivers/staging/lustre/lustre/llite/llite_mmap.c +1 -1
        io = ll_fault_io_init(env, vma, vmf->pgoff, &ra_flags);
        if (IS_ERR(io)) {
-               result = to_fault_error(PTR_ERR(io));
+               fault_ret = to_fault_error(PTR_ERR(io));
                goto out;
        }
 
@@ -319,15 +319,15 @@ static int ll_fault0(struct vm_area_struct

*vma, struct vm_fault *vmf)

Quoted 4 lines
Quoted 4 lines

drivers/staging/lustre/lustre/llite/llite_mmap.c static int ll_fault0(struct vm_area_struct *vma, struct vm_fault *vmf)

Quoted 4 lines
drivers/staging/lustre/lustre/llite/llite_mmap.c +0 -1
        if (result != 0 && !(fault_ret & VM_FAULT_RETRY))
                fault_ret |= to_fault_error(result);
 
-       CDEBUG(D_MMAP, "%s fault %d/%d\n", current->comm, fault_ret,

result);

Quoted 1 line
Quoted 1 line

drivers/staging/lustre/lustre/llite/llite_mmap.c static int ll_fault0(struct vm_area_struct · line 322

Quoted 1 line
drivers/staging/lustre/lustre/llite/llite_mmap.c +1 -0
+       CDEBUG(D_MMAP, "%s fault %x/%d\n", current->comm, fault_ret,

result);

Quoted 12 lines
Quoted 12 lines
Quoted 12 lines
drivers/staging/lustre/lustre/llite/llite_mmap.c +2 -2
        return fault_ret;
 }
 
-static int ll_fault(struct vm_fault *vmf)
+static vm_fault_t ll_fault(struct vm_fault *vmf)
 {
        int count = 0;
        bool printed = false;
-       int result;
+       vm_fault_t result;
        sigset_t set;
 
Quoted 1 line
Quoted 1 line

drivers/staging/lustre/lustre/llite/llite_mmap.c static int ll_fault0(struct vm_area_struct · line 333

Quoted 1 line
drivers/staging/lustre/lustre/llite/llite_mmap.c +0 -0
        /* Only SIGKILL and SIGTERM are allowed for

fault/nopage/mkwrite

Quoted 15 lines
Quoted 15 lines
Quoted 15 lines
drivers/staging/lustre/lustre/llite/llite_mmap.c +3 -2
@@ -364,18 +364,19 @@ static int ll_fault(struct vm_fault *vmf)
        return result;
 }
 
-static int ll_page_mkwrite(struct vm_fault *vmf)
+static vm_fault_t ll_page_mkwrite(struct vm_fault *vmf)
 {
        struct vm_area_struct *vma = vmf->vma;
        int count = 0;
        bool printed = false;
        bool retry;
-       int result;
+       int err;
+       vm_fault_t ret;
 
Quoted 8 lines
Quoted 8 lines

drivers/staging/lustre/lustre/llite/llite_mmap.c static int ll_fault(struct vm_fault *vmf)

Quoted 8 lines
drivers/staging/lustre/lustre/llite/llite_mmap.c +1 -1
        file_update_time(vma->vm_file);
        do {
                retry = false;
-               result = ll_page_mkwrite0(vma, vmf->page, &retry);
+               err = ll_page_mkwrite0(vma, vmf->page, &retry);
 
                if (!printed && ++count > 16) {
                        const struct dentry *de =

vma->vm_file->f_path.dentry;

Quoted 31 lines
Quoted 31 lines
Quoted 31 lines
drivers/staging/lustre/lustre/llite/llite_mmap.c +6 -6
@@ -387,25 +388,25 @@ static int ll_page_mkwrite(struct vm_fault *vmf)
                }
        } while (retry);
 
-       switch (result) {
+       switch (err) {
        case 0:
                LASSERT(PageLocked(vmf->page));
-               result = VM_FAULT_LOCKED;
+               ret = VM_FAULT_LOCKED;
                break;
        case -ENODATA:
        case -EAGAIN:
        case -EFAULT:
-               result = VM_FAULT_NOPAGE;
+               ret = VM_FAULT_NOPAGE;
                break;
        case -ENOMEM:
-               result = VM_FAULT_OOM;
+               ret = VM_FAULT_OOM;
                break;
        default:
-               result = VM_FAULT_SIGBUS;
+               ret = VM_FAULT_SIGBUS;
                break;
        }
 
-       return result;
+       return ret;
 }
 
Quoted 8 lines
Quoted 6 lines
Quoted 4 lines
drivers/staging/lustre/lustre/llite/llite_mmap.c +0 -1
 /**
--

1.9.1

If no further comment, we would like to get this patch in 4.18-rc-X.

Why? Is it a regression fix? That's all that is allowed after -rc1.

No, this is not regression fix. We need to get this into 4.18-rc-1. But mostly it can't make into linus tree in rc-1 :)

Quoted 2 lines

And have you tried applying it to Linus's current tree? :)

Last tested on 4.17-rc-6 and it worked fine. Let me verify in current tree.

Quoted 4 lines

thanks,

greg k-h

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lustre.org/pipermail/lustre-devel-lustre.org/attachments/20180612/65d779be/attachment-0001.html>

maintainer
#4 lore raw

PATCH v3 1/1 staging: lustre: Change return type to vm_fault_t

Quoted 7 lines · Souptick Joarder
Quoted 4 lines
Quoted 2 lines

If no further comment, we would like to get this patch in 4.18-rc-X.

Why? Is it a regression fix? That's all that is allowed after -rc1.

No, this is not regression fix. We need to get this into 4.18-rc-1. But mostly it can't make into linus tree in rc-1 :)

Why does it _have_ to get into 4.18-rc1? My tree is long-closed and Linus already has all of my patches in his tree for the staging section of the kernel.

Quoted 3 lines
Quoted 1 line

And have you tried applying it to Linus's current tree? :)

Last tested on 4.17-rc-6 and it worked fine. Let me verify in current tree.

Try it, you might be surprised :)

greg k-h

#5 lore raw

PATCH v3 1/1 staging: lustre: Change return type to vm_fault_t

Quoted 13 lines · Greg KH
Quoted 7 lines · Souptick Joarder
Quoted 4 lines
Quoted 2 lines

If no further comment, we would like to get this patch in 4.18-rc-X.

Why? Is it a regression fix? That's all that is allowed after -rc1.

No, this is not regression fix. We need to get this into 4.18-rc-1. But mostly it can't make into linus tree in rc-1 :)

Why does it _have_ to get into 4.18-rc1? My tree is long-closed and Linus already has all of my patches in his tree for the staging section of the kernel.

Quoted 5 lines
Quoted 3 lines
Quoted 1 line

And have you tried applying it to Linus's current tree? :)

Last tested on 4.17-rc-6 and it worked fine. Let me verify in current tree.

Try it, you might be surprised :)

Yes, got the surprise :)
Sorry for making noise, I will drop this patch as it is no more valid in current Linus's tree.

#6 lore raw

PATCH v3 1/1 staging: lustre: Change return type to vm_fault_t

In reply to Souptick Joarder
Quoted 7 lines · Souptick Joarder
Quoted 6 lines · Greg KH
Quoted 3 lines · Souptick Joarder

On Mon, May 21, 2018 at 11:39 PM, Souptick Joarder <[email protected]>

If no further comment, we would like to get this patch in 4.18-rc-X.

Quoted 9 lines
Quoted 1 line

Why? Is it a regression fix? That's all that is allowed after -rc1.

No, this is not regression fix. We need to get this into 4.18-rc-1. But mostly it can't make into linus tree in rc-1 :)

Quoted 2 lines

And have you tried applying it to Linus's current tree? :)

Last tested on 4.17-rc-6 and it worked fine. Let me verify in current tree.

As you have undoubtedly noticed, lustre is no longer in Linus' tree. I'm experimenting with maintaining a branch which retains the code (lustre/* in github.com/neilbrown/linux) so we can get it ready for merging properly.
I've added you patch to my tree.

Thanks,
NeilBrown
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <http://lists.lustre.org/pipermail/lustre-devel-lustre.org/attachments/20180614/940a8594/attachment.sig>

#7 lore raw

PATCH v3 1/1 staging: lustre: Change return type to vm_fault_t

Quoted 16 lines · NeilBrown
Quoted 14 lines · Souptick Joarder
Quoted 7 lines · Greg KH
Quoted 3 lines · Souptick Joarder

On Mon, May 21, 2018 at 11:39 PM, Souptick Joarder <[email protected]>

If no further comment, we would like to get this patch in 4.18-rc-X.

Why? Is it a regression fix? That's all that is allowed after -rc1.

No, this is not regression fix. We need to get this into 4.18-rc-1. But mostly it can't make into linus tree in rc-1 :)

Quoted 2 lines

And have you tried applying it to Linus's current tree? :)

Quoted 8 lines
Quoted 2 lines

Last tested on 4.17-rc-6 and it worked fine. Let me verify in current tree.

As you have undoubtedly noticed, lustre is no longer in Linus' tree. I'm experimenting with maintaining a branch which retains the code (lustre/* in github.com/neilbrown/linux) so we can get it ready for merging properly.
I've added you patch to my tree.

You need to add this patch in your tree as well.
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?h=next-20180614&id=1c8f422059ae5da07db7406ab916203f9417e396

This patch appears to be missing in your github branch.

#8 lore raw

PATCH v3 1/1 staging: lustre: Change return type to vm_fault_t

Quoted 26 lines · Souptick Joarder
Quoted 16 lines · NeilBrown
Quoted 14 lines · Souptick Joarder
Quoted 7 lines · Greg KH
Quoted 3 lines · Souptick Joarder

On Mon, May 21, 2018 at 11:39 PM, Souptick Joarder <[email protected]>

If no further comment, we would like to get this patch in 4.18-rc-X.

Why? Is it a regression fix? That's all that is allowed after -rc1.

No, this is not regression fix. We need to get this into 4.18-rc-1. But mostly it can't make into linus tree in rc-1 :)

Quoted 2 lines

And have you tried applying it to Linus's current tree? :)

Quoted 8 lines
Quoted 2 lines

Last tested on 4.17-rc-6 and it worked fine. Let me verify in current tree.

As you have undoubtedly noticed, lustre is no longer in Linus' tree. I'm experimenting with maintaining a branch which retains the code (lustre/* in github.com/neilbrown/linux) so we can get it ready for merging properly.
I've added you patch to my tree.

Quoted 4 lines

You need to add this patch in your tree as well.
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commit/?h=next-20180614&id=1c8f422059ae5da07db7406ab916203f9417e396

This patch appears to be missing in your github branch.

??
That patch is in 4.17-rc1 (v4.17-rc1~99^2~6) and my lustre trees are based on 4.17 (at least). My 'master' might be a bit behind - maybe that confused you.

Thanks,
NeilBrown
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 832 bytes
Desc: not available
URL: <http://lists.lustre.org/pipermail/lustre-devel-lustre.org/attachments/20180615/de7952d1/attachment.sig>