Patchwork kernel/range.c: subtract_range: return instead of continue to save some loops

login
register
mail settings
Submitter Lin Feng
Date March 18, 2013, 10:21 a.m.
Message ID <1363602109-12001-1-git-send-email-linfeng@cn.fujitsu.com>
Download mbox | patch
Permalink /patch/228440/
State Not Applicable
Headers show

Comments

Lin Feng - March 18, 2013, 10:21 a.m.
If we fall into that branch it means that there is a range fully covering the
subtract range, so it's suffice to return there if there isn't any other
overlapping ranges.

Also fix the broken phrase issued by printk.

Cc: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Lin Feng <linfeng@cn.fujitsu.com>
---
 kernel/range.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
Yinghai Lu - March 18, 2013, 5:52 p.m.
On Mon, Mar 18, 2013 at 3:21 AM, Lin Feng <linfeng@cn.fujitsu.com> wrote:
> If we fall into that branch it means that there is a range fully covering the
> subtract range, so it's suffice to return there if there isn't any other
> overlapping ranges.
>
> Also fix the broken phrase issued by printk.
>
> Cc: Yinghai Lu <yinghai@kernel.org>
> Signed-off-by: Lin Feng <linfeng@cn.fujitsu.com>
> ---
>  kernel/range.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/kernel/range.c b/kernel/range.c
> index 9b8ae2d..223c6fe 100644
> --- a/kernel/range.c
> +++ b/kernel/range.c
> @@ -97,10 +97,10 @@ void subtract_range(struct range *range, int az, u64 start, u64 end)
>                                 range[i].end = range[j].end;
>                                 range[i].start = end;
>                         } else {
> -                               printk(KERN_ERR "run of slot in ranges\n");
> +                               printk(KERN_ERR "run out of slot in ranges\n");

maybe could change to pr_err at the same time.

>                         }
>                         range[j].end = start;
> -                       continue;
> +                       return;

We don't say that ranges can not be overlapped in the array.

Thanks

Yinghai
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/kernel/range.c b/kernel/range.c
index 9b8ae2d..223c6fe 100644
--- a/kernel/range.c
+++ b/kernel/range.c
@@ -97,10 +97,10 @@  void subtract_range(struct range *range, int az, u64 start, u64 end)
 				range[i].end = range[j].end;
 				range[i].start = end;
 			} else {
-				printk(KERN_ERR "run of slot in ranges\n");
+				printk(KERN_ERR "run out of slot in ranges\n");
 			}
 			range[j].end = start;
-			continue;
+			return;
 		}
 	}
 }