Commit-ID:  13a4db9d75ec5dbca4bd6229e149e061ef7a6bf0
Gitweb:     https://git.kernel.org/tip/13a4db9d75ec5dbca4bd6229e149e061ef7a6bf0
Author:     Andy Shevchenko <andriy.shevche...@linux.intel.com>
AuthorDate: Tue, 15 May 2018 20:57:59 +0300
Committer:  Ingo Molnar <mi...@kernel.org>
CommitDate: Wed, 16 May 2018 09:47:22 +0200

x86/mtrr: Convert to use match_string() helper

The helper returns index of the matching string in an array.
Replace the open coded array lookup with match_string().

Signed-off-by: Andy Shevchenko <andriy.shevche...@linux.intel.com>
Cc: Andrew Morton <a...@linux-foundation.org>
Cc: Andy Lutomirski <l...@kernel.org>
Cc: Borislav Petkov <b...@alien8.de>
Cc: Brian Gerst <brge...@gmail.com>
Cc: Denys Vlasenko <dvlas...@redhat.com>
Cc: H. Peter Anvin <h...@zytor.com>
Cc: Josh Poimboeuf <jpoim...@redhat.com>
Cc: Linus Torvalds <torva...@linux-foundation.org>
Cc: Luis R. Rodriguez <mcg...@suse.com>
Cc: Peter Zijlstra <pet...@infradead.org>
Cc: Thomas Gleixner <t...@linutronix.de>
Cc: Toshi Kani <toshi.k...@hp.com>
Link: 
http://lkml.kernel.org/r/20180515175759.89315-1-andriy.shevche...@linux.intel.com
Signed-off-by: Ingo Molnar <mi...@kernel.org>
---
 arch/x86/kernel/cpu/mtrr/if.c | 21 ++++++++++-----------
 1 file changed, 10 insertions(+), 11 deletions(-)

diff --git a/arch/x86/kernel/cpu/mtrr/if.c b/arch/x86/kernel/cpu/mtrr/if.c
index 558444b23923..42b4f2f3b557 100644
--- a/arch/x86/kernel/cpu/mtrr/if.c
+++ b/arch/x86/kernel/cpu/mtrr/if.c
@@ -149,17 +149,16 @@ mtrr_write(struct file *file, const char __user *buf, 
size_t len, loff_t * ppos)
                return -EINVAL;
        ptr = skip_spaces(ptr + 5);
 
-       for (i = 0; i < MTRR_NUM_TYPES; ++i) {
-               if (strcmp(ptr, mtrr_strings[i]))
-                       continue;
-               base >>= PAGE_SHIFT;
-               size >>= PAGE_SHIFT;
-               err = mtrr_add_page((unsigned long)base, (unsigned long)size, 
i, true);
-               if (err < 0)
-                       return err;
-               return len;
-       }
-       return -EINVAL;
+       i = match_string(mtrr_strings, MTRR_NUM_TYPES, ptr);
+       if (i < 0)
+               return i;
+
+       base >>= PAGE_SHIFT;
+       size >>= PAGE_SHIFT;
+       err = mtrr_add_page((unsigned long)base, (unsigned long)size, i, true);
+       if (err < 0)
+               return err;
+       return len;
 }
 
 static long

Reply via email to