Re: [QUESTION] Can uprobe_event support @ADDR, $retval, offs(FETCHARG)?
2012/9/26 Srikar Dronamraju : >> >> Perhaps, it is not so small things, but at least, we can try. >> In the userspace, memories(pages) can be paged out on swap or >> files. In that case, memory dereference function needs to track >> down the data on the disk and it causes I/O. This means we will >> see the visible performance degradation with tracing. >> And also, sometime a pointer value (address) is broken, in that >> case we have to ensure the address is actually valid before >> accessing it. >> >> Of cause, without tracking paged-out data, it is easy >> to support, because that is already done in kprobe event. >> I'm not sure how it is useful, because sometimes it will >> fail to access gather the data. >> However it is good for the first step, I think. >> >> Srikar, what would you think? > > I think we should do the best effort basis first. i.e support for > tracking data thats not paged out. > Most times the data that is requested tends to the hot data. > > We could look at supporting data that is paged out later. > >> >> BTW, if we can support offs(FETCHARGS), $stack and $stackN >> are also available. ;) >> > > -- > Thanks and Regards > Srikar Dronamraju > I asked this question. because I need Perf that supports to access user process's variables. and I am trying to add this feature. Thank you for your answer. Hyeoncheol -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [QUESTION] Can uprobe_event support @ADDR, $retval, offs(FETCHARG)?
Hi, 2012/9/26 Masami Hiramatsu : > (2012/09/26 11:52), Hyeoncheol Lee wrote: >> Hi, >> >> uprobe_event only supports %REG arguments. I think that memory fetch, >> return value fetch, memory dereference functions in >> kernel/trace/trace_probe.c are good for uprobe_event. So with a little >> modification of parse_probe_arg(), uprobe_event can support @ADDR, >> $retval, offs(FETCHARGS) except @SYM, $stack, $stackN. Is it right? > > Hi Hyeoncheol, > > Perhaps, it is not so small things, but at least, we can try. > In the userspace, memories(pages) can be paged out on swap or > files. In that case, memory dereference function needs to track > down the data on the disk and it causes I/O. This means we will > see the visible performance degradation with tracing. > And also, sometime a pointer value (address) is broken, in that > case we have to ensure the address is actually valid before > accessing it. > > Of cause, without tracking paged-out data, it is easy > to support, because that is already done in kprobe event. > I'm not sure how it is useful, because sometimes it will > fail to access gather the data. > However it is good for the first step, I think. Yes, we should consider paged-out data. I forgot this. > > Srikar, what would you think? > > BTW, if we can support offs(FETCHARGS), $stack and $stackN > are also available. ;) Yes, but we should check whether the given address is in an user stack or not. and these require CPU architecture dependent codes. > > Thank you, > > -- > Masami HIRAMATSU > Software Platform Research Dept. Linux Technology Center > Hitachi, Ltd., Yokohama Research Laboratory > E-mail: masami.hiramatsu...@hitachi.com > > Thanks for your answer. It is very help to me. ;) Hyeoncheol -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [QUESTION] Can uprobe_event support @ADDR, $retval, offs(FETCHARG)?
Hi, 2012/9/26 Masami Hiramatsu masami.hiramatsu...@hitachi.com: (2012/09/26 11:52), Hyeoncheol Lee wrote: Hi, uprobe_event only supports %REG arguments. I think that memory fetch, return value fetch, memory dereference functions in kernel/trace/trace_probe.c are good for uprobe_event. So with a little modification of parse_probe_arg(), uprobe_event can support @ADDR, $retval, offs(FETCHARGS) except @SYM, $stack, $stackN. Is it right? Hi Hyeoncheol, Perhaps, it is not so small things, but at least, we can try. In the userspace, memories(pages) can be paged out on swap or files. In that case, memory dereference function needs to track down the data on the disk and it causes I/O. This means we will see the visible performance degradation with tracing. And also, sometime a pointer value (address) is broken, in that case we have to ensure the address is actually valid before accessing it. Of cause, without tracking paged-out data, it is easy to support, because that is already done in kprobe event. I'm not sure how it is useful, because sometimes it will fail to access gather the data. However it is good for the first step, I think. Yes, we should consider paged-out data. I forgot this. Srikar, what would you think? BTW, if we can support offs(FETCHARGS), $stack and $stackN are also available. ;) Yes, but we should check whether the given address is in an user stack or not. and these require CPU architecture dependent codes. Thank you, -- Masami HIRAMATSU Software Platform Research Dept. Linux Technology Center Hitachi, Ltd., Yokohama Research Laboratory E-mail: masami.hiramatsu...@hitachi.com Thanks for your answer. It is very help to me. ;) Hyeoncheol -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [QUESTION] Can uprobe_event support @ADDR, $retval, offs(FETCHARG)?
2012/9/26 Srikar Dronamraju sri...@linux.vnet.ibm.com: Perhaps, it is not so small things, but at least, we can try. In the userspace, memories(pages) can be paged out on swap or files. In that case, memory dereference function needs to track down the data on the disk and it causes I/O. This means we will see the visible performance degradation with tracing. And also, sometime a pointer value (address) is broken, in that case we have to ensure the address is actually valid before accessing it. Of cause, without tracking paged-out data, it is easy to support, because that is already done in kprobe event. I'm not sure how it is useful, because sometimes it will fail to access gather the data. However it is good for the first step, I think. Srikar, what would you think? I think we should do the best effort basis first. i.e support for tracking data thats not paged out. Most times the data that is requested tends to the hot data. We could look at supporting data that is paged out later. BTW, if we can support offs(FETCHARGS), $stack and $stackN are also available. ;) -- Thanks and Regards Srikar Dronamraju I asked this question. because I need Perf that supports to access user process's variables. and I am trying to add this feature. Thank you for your answer. Hyeoncheol -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [QUESTION] Can uprobe_event support @ADDR, $retval, offs(FETCHARG)?
> > Perhaps, it is not so small things, but at least, we can try. > In the userspace, memories(pages) can be paged out on swap or > files. In that case, memory dereference function needs to track > down the data on the disk and it causes I/O. This means we will > see the visible performance degradation with tracing. > And also, sometime a pointer value (address) is broken, in that > case we have to ensure the address is actually valid before > accessing it. > > Of cause, without tracking paged-out data, it is easy > to support, because that is already done in kprobe event. > I'm not sure how it is useful, because sometimes it will > fail to access gather the data. > However it is good for the first step, I think. > > Srikar, what would you think? I think we should do the best effort basis first. i.e support for tracking data thats not paged out. Most times the data that is requested tends to the hot data. We could look at supporting data that is paged out later. > > BTW, if we can support offs(FETCHARGS), $stack and $stackN > are also available. ;) > -- Thanks and Regards Srikar Dronamraju -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [QUESTION] Can uprobe_event support @ADDR, $retval, offs(FETCHARG)?
(2012/09/26 11:52), Hyeoncheol Lee wrote: > Hi, > > uprobe_event only supports %REG arguments. I think that memory fetch, > return value fetch, memory dereference functions in > kernel/trace/trace_probe.c are good for uprobe_event. So with a little > modification of parse_probe_arg(), uprobe_event can support @ADDR, > $retval, offs(FETCHARGS) except @SYM, $stack, $stackN. Is it right? Hi Hyeoncheol, Perhaps, it is not so small things, but at least, we can try. In the userspace, memories(pages) can be paged out on swap or files. In that case, memory dereference function needs to track down the data on the disk and it causes I/O. This means we will see the visible performance degradation with tracing. And also, sometime a pointer value (address) is broken, in that case we have to ensure the address is actually valid before accessing it. Of cause, without tracking paged-out data, it is easy to support, because that is already done in kprobe event. I'm not sure how it is useful, because sometimes it will fail to access gather the data. However it is good for the first step, I think. Srikar, what would you think? BTW, if we can support offs(FETCHARGS), $stack and $stackN are also available. ;) Thank you, -- Masami HIRAMATSU Software Platform Research Dept. Linux Technology Center Hitachi, Ltd., Yokohama Research Laboratory E-mail: masami.hiramatsu...@hitachi.com -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [QUESTION] Can uprobe_event support @ADDR, $retval, offs(FETCHARG)?
Hi Hyeoncheol, > uprobe_event only supports %REG arguments. I think that memory fetch, > return value fetch, memory dereference functions in > kernel/trace/trace_probe.c are good for uprobe_event. Yes, these will be good to have and is listed as todo. > So with a little > modification of parse_probe_arg(), uprobe_event can support @ADDR, > $retval, offs(FETCHARGS) except @SYM, $stack, $stackN. Is it right? For some of these like the @sym, trace_uprobe.c may not be the right place because the kernel will not be able to decode user space symbols. $retval needs uretprobes support -- Thanks and Regards Srikar -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [QUESTION] Can uprobe_event support @ADDR, $retval, offs(FETCHARG)?
Hi Hyeoncheol, uprobe_event only supports %REG arguments. I think that memory fetch, return value fetch, memory dereference functions in kernel/trace/trace_probe.c are good for uprobe_event. Yes, these will be good to have and is listed as todo. So with a little modification of parse_probe_arg(), uprobe_event can support @ADDR, $retval, offs(FETCHARGS) except @SYM, $stack, $stackN. Is it right? For some of these like the @sym, trace_uprobe.c may not be the right place because the kernel will not be able to decode user space symbols. $retval needs uretprobes support -- Thanks and Regards Srikar -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [QUESTION] Can uprobe_event support @ADDR, $retval, offs(FETCHARG)?
(2012/09/26 11:52), Hyeoncheol Lee wrote: Hi, uprobe_event only supports %REG arguments. I think that memory fetch, return value fetch, memory dereference functions in kernel/trace/trace_probe.c are good for uprobe_event. So with a little modification of parse_probe_arg(), uprobe_event can support @ADDR, $retval, offs(FETCHARGS) except @SYM, $stack, $stackN. Is it right? Hi Hyeoncheol, Perhaps, it is not so small things, but at least, we can try. In the userspace, memories(pages) can be paged out on swap or files. In that case, memory dereference function needs to track down the data on the disk and it causes I/O. This means we will see the visible performance degradation with tracing. And also, sometime a pointer value (address) is broken, in that case we have to ensure the address is actually valid before accessing it. Of cause, without tracking paged-out data, it is easy to support, because that is already done in kprobe event. I'm not sure how it is useful, because sometimes it will fail to access gather the data. However it is good for the first step, I think. Srikar, what would you think? BTW, if we can support offs(FETCHARGS), $stack and $stackN are also available. ;) Thank you, -- Masami HIRAMATSU Software Platform Research Dept. Linux Technology Center Hitachi, Ltd., Yokohama Research Laboratory E-mail: masami.hiramatsu...@hitachi.com -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [QUESTION] Can uprobe_event support @ADDR, $retval, offs(FETCHARG)?
Perhaps, it is not so small things, but at least, we can try. In the userspace, memories(pages) can be paged out on swap or files. In that case, memory dereference function needs to track down the data on the disk and it causes I/O. This means we will see the visible performance degradation with tracing. And also, sometime a pointer value (address) is broken, in that case we have to ensure the address is actually valid before accessing it. Of cause, without tracking paged-out data, it is easy to support, because that is already done in kprobe event. I'm not sure how it is useful, because sometimes it will fail to access gather the data. However it is good for the first step, I think. Srikar, what would you think? I think we should do the best effort basis first. i.e support for tracking data thats not paged out. Most times the data that is requested tends to the hot data. We could look at supporting data that is paged out later. BTW, if we can support offs(FETCHARGS), $stack and $stackN are also available. ;) -- Thanks and Regards Srikar Dronamraju -- To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/