提交 d0da23b0 编写于 作者: A Andrew Morton 提交者: Linus Torvalds

lib/list_sort.c: convert to pr_foo

Cc: Rasmus Villemoes <linux@rasmusvillemoes.dk>
Cc: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
Cc: Don Mullis <don.mullis@gmail.com>
Cc: Dave Chinner <david@fromorbit.com>
Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
上级 61b3d6c4
#define pr_fmt(fmt) "list_sort_test: " fmt
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/list_sort.h> #include <linux/list_sort.h>
...@@ -125,9 +128,7 @@ void list_sort(void *priv, struct list_head *head, ...@@ -125,9 +128,7 @@ void list_sort(void *priv, struct list_head *head,
} }
if (lev > max_lev) { if (lev > max_lev) {
if (unlikely(lev >= ARRAY_SIZE(part)-1)) { if (unlikely(lev >= ARRAY_SIZE(part)-1)) {
printk_once(KERN_DEBUG "list passed to" printk_once(KERN_DEBUG "list too long for efficiency\n");
" list_sort() too long for"
" efficiency\n");
lev--; lev--;
} }
max_lev = lev; max_lev = lev;
...@@ -170,27 +171,25 @@ static struct debug_el **elts __initdata; ...@@ -170,27 +171,25 @@ static struct debug_el **elts __initdata;
static int __init check(struct debug_el *ela, struct debug_el *elb) static int __init check(struct debug_el *ela, struct debug_el *elb)
{ {
if (ela->serial >= TEST_LIST_LEN) { if (ela->serial >= TEST_LIST_LEN) {
printk(KERN_ERR "list_sort_test: error: incorrect serial %d\n", pr_err("error: incorrect serial %d\n", ela->serial);
ela->serial);
return -EINVAL; return -EINVAL;
} }
if (elb->serial >= TEST_LIST_LEN) { if (elb->serial >= TEST_LIST_LEN) {
printk(KERN_ERR "list_sort_test: error: incorrect serial %d\n", pr_err("error: incorrect serial %d\n", elb->serial);
elb->serial);
return -EINVAL; return -EINVAL;
} }
if (elts[ela->serial] != ela || elts[elb->serial] != elb) { if (elts[ela->serial] != ela || elts[elb->serial] != elb) {
printk(KERN_ERR "list_sort_test: error: phantom element\n"); pr_err("error: phantom element\n");
return -EINVAL; return -EINVAL;
} }
if (ela->poison1 != TEST_POISON1 || ela->poison2 != TEST_POISON2) { if (ela->poison1 != TEST_POISON1 || ela->poison2 != TEST_POISON2) {
printk(KERN_ERR "list_sort_test: error: bad poison: %#x/%#x\n", pr_err("error: bad poison: %#x/%#x\n",
ela->poison1, ela->poison2); ela->poison1, ela->poison2);
return -EINVAL; return -EINVAL;
} }
if (elb->poison1 != TEST_POISON1 || elb->poison2 != TEST_POISON2) { if (elb->poison1 != TEST_POISON1 || elb->poison2 != TEST_POISON2) {
printk(KERN_ERR "list_sort_test: error: bad poison: %#x/%#x\n", pr_err("error: bad poison: %#x/%#x\n",
elb->poison1, elb->poison2); elb->poison1, elb->poison2);
return -EINVAL; return -EINVAL;
} }
return 0; return 0;
...@@ -214,20 +213,18 @@ static int __init list_sort_test(void) ...@@ -214,20 +213,18 @@ static int __init list_sort_test(void)
struct list_head *cur; struct list_head *cur;
LIST_HEAD(head); LIST_HEAD(head);
printk(KERN_DEBUG "list_sort_test: start testing list_sort()\n"); pr_debug("start testing list_sort()\n");
elts = kcalloc(TEST_LIST_LEN, sizeof(*elts), GFP_KERNEL); elts = kcalloc(TEST_LIST_LEN, sizeof(*elts), GFP_KERNEL);
if (!elts) { if (!elts) {
printk(KERN_ERR "list_sort_test: error: cannot allocate " pr_err("error: cannot allocate memory\n");
"memory\n");
return err; return err;
} }
for (i = 0; i < TEST_LIST_LEN; i++) { for (i = 0; i < TEST_LIST_LEN; i++) {
el = kmalloc(sizeof(*el), GFP_KERNEL); el = kmalloc(sizeof(*el), GFP_KERNEL);
if (!el) { if (!el) {
printk(KERN_ERR "list_sort_test: error: cannot " pr_err("error: cannot allocate memory\n");
"allocate memory\n");
goto exit; goto exit;
} }
/* force some equivalencies */ /* force some equivalencies */
...@@ -247,42 +244,38 @@ static int __init list_sort_test(void) ...@@ -247,42 +244,38 @@ static int __init list_sort_test(void)
int cmp_result; int cmp_result;
if (cur->next->prev != cur) { if (cur->next->prev != cur) {
printk(KERN_ERR "list_sort_test: error: list is " pr_err("error: list is corrupted\n");
"corrupted\n");
goto exit; goto exit;
} }
cmp_result = cmp(NULL, cur, cur->next); cmp_result = cmp(NULL, cur, cur->next);
if (cmp_result > 0) { if (cmp_result > 0) {
printk(KERN_ERR "list_sort_test: error: list is not " pr_err("error: list is not sorted\n");
"sorted\n");
goto exit; goto exit;
} }
el = container_of(cur, struct debug_el, list); el = container_of(cur, struct debug_el, list);
el1 = container_of(cur->next, struct debug_el, list); el1 = container_of(cur->next, struct debug_el, list);
if (cmp_result == 0 && el->serial >= el1->serial) { if (cmp_result == 0 && el->serial >= el1->serial) {
printk(KERN_ERR "list_sort_test: error: order of " pr_err("error: order of equivalent elements not "
"equivalent elements not preserved\n"); "preserved\n");
goto exit; goto exit;
} }
if (check(el, el1)) { if (check(el, el1)) {
printk(KERN_ERR "list_sort_test: error: element check " pr_err("error: element check failed\n");
"failed\n");
goto exit; goto exit;
} }
count++; count++;
} }
if (head.prev != cur) { if (head.prev != cur) {
printk(KERN_ERR "list_sort_test: error: list is corrupted\n"); pr_err("error: list is corrupted\n");
goto exit; goto exit;
} }
if (count != TEST_LIST_LEN) { if (count != TEST_LIST_LEN) {
printk(KERN_ERR "list_sort_test: error: bad list length %d", pr_err("error: bad list length %d", count);
count);
goto exit; goto exit;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册