mirror of https://gitee.com/openkylin/linux.git
perf kmem: Fix compiles on RHEL6/OL6
0d68bc92c4
breaks compiles on RHEL6/OL6:
cc1: warnings being treated as errors
builtin-kmem.c: In function ‘search_page_alloc_stat’:
builtin-kmem.c:322: error: declaration of ‘stat’ shadows a global declaration
node = &parent->rb_left;
/usr/include/sys/stat.h:455: error: shadowed declaration is here
builtin-kmem.c: In function ‘perf_evsel__process_page_alloc_event’:
builtin-kmem.c:378: error: declaration of ‘stat’ shadows a global declaration
/usr/include/sys/stat.h:455: error: shadowed declaration is here
builtin-kmem.c: In function ‘perf_evsel__process_page_free_event’:
builtin-kmem.c:431: error: declaration of ‘stat’ shadows a global declaration
/usr/include/sys/stat.h:455: error: shadowed declaration is here
Rename local variable to pstat to avoid the name conflict.
Signed-off-by: David Ahern <david.ahern@oracle.com>
Link: http://lkml.kernel.org/r/1429033773-31383-1-git-send-email-david.ahern@oracle.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
5b24e8cf61
commit
6b1a27520f
|
@ -319,7 +319,7 @@ static int page_stat_cmp(struct page_stat *a, struct page_stat *b)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static struct page_stat *search_page_alloc_stat(struct page_stat *stat, bool create)
|
||||
static struct page_stat *search_page_alloc_stat(struct page_stat *pstat, bool create)
|
||||
{
|
||||
struct rb_node **node = &page_alloc_tree.rb_node;
|
||||
struct rb_node *parent = NULL;
|
||||
|
@ -331,7 +331,7 @@ static struct page_stat *search_page_alloc_stat(struct page_stat *stat, bool cre
|
|||
parent = *node;
|
||||
data = rb_entry(*node, struct page_stat, node);
|
||||
|
||||
cmp = page_stat_cmp(data, stat);
|
||||
cmp = page_stat_cmp(data, pstat);
|
||||
if (cmp < 0)
|
||||
node = &parent->rb_left;
|
||||
else if (cmp > 0)
|
||||
|
@ -345,10 +345,10 @@ static struct page_stat *search_page_alloc_stat(struct page_stat *stat, bool cre
|
|||
|
||||
data = zalloc(sizeof(*data));
|
||||
if (data != NULL) {
|
||||
data->page = stat->page;
|
||||
data->order = stat->order;
|
||||
data->gfp_flags = stat->gfp_flags;
|
||||
data->migrate_type = stat->migrate_type;
|
||||
data->page = pstat->page;
|
||||
data->order = pstat->order;
|
||||
data->gfp_flags = pstat->gfp_flags;
|
||||
data->migrate_type = pstat->migrate_type;
|
||||
|
||||
rb_link_node(&data->node, parent, node);
|
||||
rb_insert_color(&data->node, &page_alloc_tree);
|
||||
|
@ -375,7 +375,7 @@ static int perf_evsel__process_page_alloc_event(struct perf_evsel *evsel,
|
|||
unsigned int migrate_type = perf_evsel__intval(evsel, sample,
|
||||
"migratetype");
|
||||
u64 bytes = kmem_page_size << order;
|
||||
struct page_stat *stat;
|
||||
struct page_stat *pstat;
|
||||
struct page_stat this = {
|
||||
.order = order,
|
||||
.gfp_flags = gfp_flags,
|
||||
|
@ -401,21 +401,21 @@ static int perf_evsel__process_page_alloc_event(struct perf_evsel *evsel,
|
|||
* This is to find the current page (with correct gfp flags and
|
||||
* migrate type) at free event.
|
||||
*/
|
||||
stat = search_page(page, true);
|
||||
if (stat == NULL)
|
||||
pstat = search_page(page, true);
|
||||
if (pstat == NULL)
|
||||
return -ENOMEM;
|
||||
|
||||
stat->order = order;
|
||||
stat->gfp_flags = gfp_flags;
|
||||
stat->migrate_type = migrate_type;
|
||||
pstat->order = order;
|
||||
pstat->gfp_flags = gfp_flags;
|
||||
pstat->migrate_type = migrate_type;
|
||||
|
||||
this.page = page;
|
||||
stat = search_page_alloc_stat(&this, true);
|
||||
if (stat == NULL)
|
||||
pstat = search_page_alloc_stat(&this, true);
|
||||
if (pstat == NULL)
|
||||
return -ENOMEM;
|
||||
|
||||
stat->nr_alloc++;
|
||||
stat->alloc_bytes += bytes;
|
||||
pstat->nr_alloc++;
|
||||
pstat->alloc_bytes += bytes;
|
||||
|
||||
order_stats[order][migrate_type]++;
|
||||
|
||||
|
@ -428,7 +428,7 @@ static int perf_evsel__process_page_free_event(struct perf_evsel *evsel,
|
|||
u64 page;
|
||||
unsigned int order = perf_evsel__intval(evsel, sample, "order");
|
||||
u64 bytes = kmem_page_size << order;
|
||||
struct page_stat *stat;
|
||||
struct page_stat *pstat;
|
||||
struct page_stat this = {
|
||||
.order = order,
|
||||
};
|
||||
|
@ -441,8 +441,8 @@ static int perf_evsel__process_page_free_event(struct perf_evsel *evsel,
|
|||
nr_page_frees++;
|
||||
total_page_free_bytes += bytes;
|
||||
|
||||
stat = search_page(page, false);
|
||||
if (stat == NULL) {
|
||||
pstat = search_page(page, false);
|
||||
if (pstat == NULL) {
|
||||
pr_debug2("missing free at page %"PRIx64" (order: %d)\n",
|
||||
page, order);
|
||||
|
||||
|
@ -453,18 +453,18 @@ static int perf_evsel__process_page_free_event(struct perf_evsel *evsel,
|
|||
}
|
||||
|
||||
this.page = page;
|
||||
this.gfp_flags = stat->gfp_flags;
|
||||
this.migrate_type = stat->migrate_type;
|
||||
this.gfp_flags = pstat->gfp_flags;
|
||||
this.migrate_type = pstat->migrate_type;
|
||||
|
||||
rb_erase(&stat->node, &page_tree);
|
||||
free(stat);
|
||||
rb_erase(&pstat->node, &page_tree);
|
||||
free(pstat);
|
||||
|
||||
stat = search_page_alloc_stat(&this, false);
|
||||
if (stat == NULL)
|
||||
pstat = search_page_alloc_stat(&this, false);
|
||||
if (pstat == NULL)
|
||||
return -ENOENT;
|
||||
|
||||
stat->nr_free++;
|
||||
stat->free_bytes += bytes;
|
||||
pstat->nr_free++;
|
||||
pstat->free_bytes += bytes;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue