mirror of
https://github.com/torvalds/linux.git
synced 2024-11-29 23:51:37 +00:00
drivers/perf: convert sysfs scnprintf family to sysfs_emit_at() and sysfs_emit()
Use the generic sysfs_emit_at() and sysfs_emit() function to take place of scnprintf() Signed-off-by: Qi Liu <liuqi115@huawei.com> Link: https://lore.kernel.org/r/1616148273-16374-3-git-send-email-liuqi115@huawei.com Signed-off-by: Will Deacon <will@kernel.org>
This commit is contained in:
parent
700a9cf052
commit
9ec9f9cf86
@ -326,43 +326,38 @@ static ssize_t arm_ccn_pmu_event_show(struct device *dev,
|
||||
struct arm_ccn *ccn = pmu_to_arm_ccn(dev_get_drvdata(dev));
|
||||
struct arm_ccn_pmu_event *event = container_of(attr,
|
||||
struct arm_ccn_pmu_event, attr);
|
||||
ssize_t res;
|
||||
int res;
|
||||
|
||||
res = scnprintf(buf, PAGE_SIZE, "type=0x%x", event->type);
|
||||
res = sysfs_emit(buf, "type=0x%x", event->type);
|
||||
if (event->event)
|
||||
res += scnprintf(buf + res, PAGE_SIZE - res, ",event=0x%x",
|
||||
event->event);
|
||||
res += sysfs_emit_at(buf, res, ",event=0x%x", event->event);
|
||||
if (event->def)
|
||||
res += scnprintf(buf + res, PAGE_SIZE - res, ",%s",
|
||||
event->def);
|
||||
res += sysfs_emit_at(buf, res, ",%s", event->def);
|
||||
if (event->mask)
|
||||
res += scnprintf(buf + res, PAGE_SIZE - res, ",mask=0x%x",
|
||||
event->mask);
|
||||
res += sysfs_emit_at(buf, res, ",mask=0x%x", event->mask);
|
||||
|
||||
/* Arguments required by an event */
|
||||
switch (event->type) {
|
||||
case CCN_TYPE_CYCLES:
|
||||
break;
|
||||
case CCN_TYPE_XP:
|
||||
res += scnprintf(buf + res, PAGE_SIZE - res,
|
||||
",xp=?,vc=?");
|
||||
res += sysfs_emit_at(buf, res, ",xp=?,vc=?");
|
||||
if (event->event == CCN_EVENT_WATCHPOINT)
|
||||
res += scnprintf(buf + res, PAGE_SIZE - res,
|
||||
res += sysfs_emit_at(buf, res,
|
||||
",port=?,dir=?,cmp_l=?,cmp_h=?,mask=?");
|
||||
else
|
||||
res += scnprintf(buf + res, PAGE_SIZE - res,
|
||||
",bus=?");
|
||||
res += sysfs_emit_at(buf, res, ",bus=?");
|
||||
|
||||
break;
|
||||
case CCN_TYPE_MN:
|
||||
res += scnprintf(buf + res, PAGE_SIZE - res, ",node=%d", ccn->mn_id);
|
||||
res += sysfs_emit_at(buf, res, ",node=%d", ccn->mn_id);
|
||||
break;
|
||||
default:
|
||||
res += scnprintf(buf + res, PAGE_SIZE - res, ",node=?");
|
||||
res += sysfs_emit_at(buf, res, ",node=?");
|
||||
break;
|
||||
}
|
||||
|
||||
res += scnprintf(buf + res, PAGE_SIZE - res, "\n");
|
||||
res += sysfs_emit_at(buf, res, "\n");
|
||||
|
||||
return res;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user