- struct channel_priv *chan_priv = priv;
- struct ring_buffer_priv *buf_priv;
- struct dentry *trace_dentry;
- char *tmpname;
- int ret = 0;
-
- if (client_config.alloc == RING_BUFFER_ALLOC_PER_CPU)
- buf_priv = per_cpu_ptr(chan_priv->buf, cpu);
- else
- buf_priv = chan_priv->buf;
-
- tmpname = kzalloc(NAME_MAX + 1, GFP_KERNEL);
- if (!tmpname) {
- ret = -ENOMEM;
- goto end;
- }
-
- snprintf(tmpname, NAME_MAX, "%s%s_%d",
- (client_config.mode == RING_BUFFER_OVERWRITE) ? "flight-" : "",
- name, cpu);
-
- trace_dentry = chan_priv->trace->dentry.trace_root;
- buf_priv->dentry = debugfs_create_file(tmpname, S_IRUSR, trace_dentry,
- buf,
- &lib_ring_buffer_file_operations);
- if (!buf_priv->dentry) {
- ret = -ENOMEM;
- goto free_name;
- }
-free_name:
- kfree(tmpname);
-end:
- return ret;