mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
s390/pci: extract software counters from fmb
The software counters are not a part of the function measurement block. Also we do not check for zdev->fmb != NULL when using these counters (function measurement can be toggled at runtime). Just move the software counters to struct zpci_dev. Signed-off-by: Sebastian Ott <sebott@linux.vnet.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
parent
df3044f1ef
commit
6001018ae8
4 changed files with 28 additions and 14 deletions
|
@ -31,12 +31,25 @@ static char *pci_perf_names[] = {
|
|||
"Refresh operations",
|
||||
"DMA read bytes",
|
||||
"DMA write bytes",
|
||||
/* software counters */
|
||||
};
|
||||
|
||||
static char *pci_sw_names[] = {
|
||||
"Allocated pages",
|
||||
"Mapped pages",
|
||||
"Unmapped pages",
|
||||
};
|
||||
|
||||
static void pci_sw_counter_show(struct seq_file *m)
|
||||
{
|
||||
struct zpci_dev *zdev = m->private;
|
||||
atomic64_t *counter = &zdev->allocated_pages;
|
||||
int i;
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE(pci_sw_names); i++, counter++)
|
||||
seq_printf(m, "%26s:\t%llu\n", pci_sw_names[i],
|
||||
atomic64_read(counter));
|
||||
}
|
||||
|
||||
static int pci_perf_show(struct seq_file *m, void *v)
|
||||
{
|
||||
struct zpci_dev *zdev = m->private;
|
||||
|
@ -63,12 +76,8 @@ static int pci_perf_show(struct seq_file *m, void *v)
|
|||
for (i = 4; i < 6; i++)
|
||||
seq_printf(m, "%26s:\t%llu\n",
|
||||
pci_perf_names[i], *(stat + i));
|
||||
/* software counters */
|
||||
for (i = 6; i < ARRAY_SIZE(pci_perf_names); i++)
|
||||
seq_printf(m, "%26s:\t%llu\n",
|
||||
pci_perf_names[i],
|
||||
atomic64_read((atomic64_t *) (stat + i)));
|
||||
|
||||
pci_sw_counter_show(m);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue