Skip to content

Commit 77b52b4

Browse files
Venki PallipadiIngo Molnar
authored andcommitted
x86: add "debugpat" boot option
enable debug messages by a boot option "debugpat". Signed-off-by: Venkatesh Pallipadi <[email protected]> Signed-off-by: Ingo Molnar <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]>
1 parent 988f7b5 commit 77b52b4

File tree

1 file changed

+20
-7
lines changed

1 file changed

+20
-7
lines changed

arch/x86/mm/pat.c

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,19 @@ static int nopat(char *str)
4242
early_param("nopat", nopat);
4343
#endif
4444

45+
46+
static int debug_enable;
47+
static int __init pat_debug_setup(char *str)
48+
{
49+
debug_enable = 1;
50+
return 0;
51+
}
52+
__setup("debugpat", pat_debug_setup);
53+
54+
#define dprintk(fmt, arg...) \
55+
do { if (debug_enable) printk(KERN_INFO fmt, ##arg); } while (0)
56+
57+
4558
static u64 __read_mostly boot_pat_state;
4659

4760
enum {
@@ -279,7 +292,7 @@ int reserve_memtype(u64 start, u64 end, unsigned long req_type,
279292
struct memtype *saved_ptr;
280293

281294
if (parse->start >= end) {
282-
pr_debug("New Entry\n");
295+
dprintk("New Entry\n");
283296
list_add(&new_entry->nd, parse->nd.prev);
284297
new_entry = NULL;
285298
break;
@@ -329,7 +342,7 @@ int reserve_memtype(u64 start, u64 end, unsigned long req_type,
329342
break;
330343
}
331344

332-
pr_debug("Overlap at 0x%Lx-0x%Lx\n",
345+
dprintk("Overlap at 0x%Lx-0x%Lx\n",
333346
saved_ptr->start, saved_ptr->end);
334347
/* No conflict. Go ahead and add this new entry */
335348
list_add(&new_entry->nd, saved_ptr->nd.prev);
@@ -381,7 +394,7 @@ int reserve_memtype(u64 start, u64 end, unsigned long req_type,
381394
break;
382395
}
383396

384-
pr_debug(KERN_INFO "Overlap at 0x%Lx-0x%Lx\n",
397+
dprintk("Overlap at 0x%Lx-0x%Lx\n",
385398
saved_ptr->start, saved_ptr->end);
386399
/* No conflict. Go ahead and add this new entry */
387400
list_add(&new_entry->nd, &saved_ptr->nd);
@@ -403,16 +416,16 @@ int reserve_memtype(u64 start, u64 end, unsigned long req_type,
403416
if (new_entry) {
404417
/* No conflict. Not yet added to the list. Add to the tail */
405418
list_add_tail(&new_entry->nd, &memtype_list);
406-
pr_debug("New Entry\n");
419+
dprintk("New Entry\n");
407420
}
408421

409422
if (ret_type) {
410-
pr_debug(
423+
dprintk(
411424
"reserve_memtype added 0x%Lx-0x%Lx, track %s, req %s, ret %s\n",
412425
start, end, cattr_name(actual_type),
413426
cattr_name(req_type), cattr_name(*ret_type));
414427
} else {
415-
pr_debug(
428+
dprintk(
416429
"reserve_memtype added 0x%Lx-0x%Lx, track %s, req %s\n",
417430
start, end, cattr_name(actual_type),
418431
cattr_name(req_type));
@@ -453,7 +466,7 @@ int free_memtype(u64 start, u64 end)
453466
current->comm, current->pid, start, end);
454467
}
455468

456-
pr_debug("free_memtype request 0x%Lx-0x%Lx\n", start, end);
469+
dprintk("free_memtype request 0x%Lx-0x%Lx\n", start, end);
457470
return err;
458471
}
459472

0 commit comments

Comments
 (0)