* [ltt-dev] [PATCH take2 13/13] enable text output for ltt-relay-locked
@ 2009-02-05 3:32 Lai Jiangshan
2009-02-23 19:25 ` Mathieu Desnoyers
0 siblings, 1 reply; 2+ messages in thread
From: Lai Jiangshan @ 2009-02-05 3:32 UTC (permalink / raw)
all done, enable text output for ltt-relay-locked
Signed-off-by: Lai Jiangshan <laijs at cn.fujitsu.com>
---
diff --git a/ltt/ltt-relay-locked.c b/ltt/ltt-relay-locked.c
index d662303..a17e2d5
--- a/ltt/ltt-relay-locked.c
+++ b/ltt/ltt-relay-locked.c
@@ -697,6 +715,7 @@ static void ltt_relay_print_buffer_errors(struct ltt_channel_struct *ltt_chan,
static void ltt_relay_remove_dirs(struct ltt_trace_struct *trace)
{
+ ltt_txt_remove_dir(trace);
debugfs_remove(trace->dentry.trace_root);
}
@@ -807,9 +826,16 @@ static int ltt_relay_create_channel(const char *trace_name,
goto relay_open_error;
}
+ ltt_chan->buf_access_ops = <t_channel_buf_accesser;
+ ltt_chan->txt_entry = ltt_txt_create(trace, ltt_chan);
+ if (!ltt_chan->txt_entry)
+ goto relay_txt_error;
+
err = 0;
goto end;
+relay_txt_error:
+ ltt_relay_close(ltt_chan->trans_channel_data);
relay_open_error:
percpu_free(ltt_chan->buf);
ltt_percpu_alloc_error:
@@ -821,11 +847,15 @@ end:
static int ltt_relay_create_dirs(struct ltt_trace_struct *new_trace)
{
+ if (ltt_txt_create_dir(new_trace))
+ return EEXIST;
+
new_trace->dentry.trace_root = debugfs_create_dir(new_trace->trace_name,
ltt_root_dentry);
if (new_trace->dentry.trace_root == NULL) {
printk(KERN_ERR "LTT : Trace directory name %s already taken\n",
new_trace->trace_name);
+ ltt_txt_remove_dir(new_trace);
return EEXIST;
}
@@ -889,6 +919,7 @@ static void ltt_relay_remove_channel(struct ltt_channel_struct *channel)
{
struct rchan *rchan = channel->trans_channel_data;
+ ltt_txt_remove(channel, channel->txt_entry);
ltt_relay_close(rchan);
kref_put(&channel->kref, ltt_relay_release_channel);
}
@@ -1308,6 +1313,9 @@ static notrace int ltt_relay_reserve_slot(struct ltt_trace_struct *trace,
struct ltt_reserve_switch_offsets offsets;
unsigned long flags;
+ if (atomic_read(<t_channel->channel_disabled))
+ return -EBUSY;
+
raw_local_irq_save(flags);
__raw_spin_lock(<t_buf->lock);
^ permalink raw reply [flat|nested] 2+ messages in thread
* [ltt-dev] [PATCH take2 13/13] enable text output for ltt-relay-locked
2009-02-05 3:32 [ltt-dev] [PATCH take2 13/13] enable text output for ltt-relay-locked Lai Jiangshan
@ 2009-02-23 19:25 ` Mathieu Desnoyers
0 siblings, 0 replies; 2+ messages in thread
From: Mathieu Desnoyers @ 2009-02-23 19:25 UTC (permalink / raw)
* Lai Jiangshan (laijs at cn.fujitsu.com) wrote:
> all done, enable text output for ltt-relay-locked
>
> Signed-off-by: Lai Jiangshan <laijs at cn.fujitsu.com>
> ---
> diff --git a/ltt/ltt-relay-locked.c b/ltt/ltt-relay-locked.c
> index d662303..a17e2d5
> --- a/ltt/ltt-relay-locked.c
> +++ b/ltt/ltt-relay-locked.c
> @@ -697,6 +715,7 @@ static void ltt_relay_print_buffer_errors(struct ltt_channel_struct *ltt_chan,
>
> static void ltt_relay_remove_dirs(struct ltt_trace_struct *trace)
> {
> + ltt_txt_remove_dir(trace);
> debugfs_remove(trace->dentry.trace_root);
> }
>
> @@ -807,9 +826,16 @@ static int ltt_relay_create_channel(const char *trace_name,
> goto relay_open_error;
> }
>
> + ltt_chan->buf_access_ops = <t_channel_buf_accesser;
> + ltt_chan->txt_entry = ltt_txt_create(trace, ltt_chan);
> + if (!ltt_chan->txt_entry)
> + goto relay_txt_error;
> +
> err = 0;
> goto end;
>
> +relay_txt_error:
> + ltt_relay_close(ltt_chan->trans_channel_data);
> relay_open_error:
> percpu_free(ltt_chan->buf);
> ltt_percpu_alloc_error:
> @@ -821,11 +847,15 @@ end:
>
> static int ltt_relay_create_dirs(struct ltt_trace_struct *new_trace)
> {
> + if (ltt_txt_create_dir(new_trace))
> + return EEXIST;
> +
> new_trace->dentry.trace_root = debugfs_create_dir(new_trace->trace_name,
> ltt_root_dentry);
> if (new_trace->dentry.trace_root == NULL) {
> printk(KERN_ERR "LTT : Trace directory name %s already taken\n",
> new_trace->trace_name);
> + ltt_txt_remove_dir(new_trace);
> return EEXIST;
> }
>
> @@ -889,6 +919,7 @@ static void ltt_relay_remove_channel(struct ltt_channel_struct *channel)
> {
> struct rchan *rchan = channel->trans_channel_data;
>
> + ltt_txt_remove(channel, channel->txt_entry);
> ltt_relay_close(rchan);
> kref_put(&channel->kref, ltt_relay_release_channel);
> }
> @@ -1308,6 +1313,9 @@ static notrace int ltt_relay_reserve_slot(struct ltt_trace_struct *trace,
> struct ltt_reserve_switch_offsets offsets;
> unsigned long flags;
>
> + if (atomic_read(<t_channel->channel_disabled))
> + return -EBUSY;
> +
channel_disabled is unneeded.
Mathieu
> raw_local_irq_save(flags);
> __raw_spin_lock(<t_buf->lock);
>
>
>
>
> _______________________________________________
> ltt-dev mailing list
> ltt-dev at lists.casi.polymtl.ca
> http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev
>
--
Mathieu Desnoyers
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2009-02-23 19:25 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-02-05 3:32 [ltt-dev] [PATCH take2 13/13] enable text output for ltt-relay-locked Lai Jiangshan
2009-02-23 19:25 ` Mathieu Desnoyers
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox