Re: [PATCH V2 2/7] mm/gup: add gup trace points

From: Shi, Yang
Date: Thu Dec 03 2015 - 17:10:41 EST


On 12/3/2015 11:06 AM, Steven Rostedt wrote:
On Thu, 03 Dec 2015 10:36:18 -0800
"Shi, Yang" <yang.shi@xxxxxxxxxx> wrote:

called directly that calls these functions internally and the tracepoint
can trap the return value.

This will incur more changes in other subsystems (futex, kvm, etc), I'm
not sure if it is worth making such changes to get return value.

No, it wouldn't require any changes outside of this.

-long __get_user_pages(..)
+static long __get_user_pages_internal(..)
{
[..]
}
+
+long __get_user_pages(..)
+{
+ long ret;
+ ret = __get_user_pages_internal(..);
+ trace_get_user_pages(.., ret)
+}

Thanks for this. I just checked the fast version, it looks it just has single return path, so this should be just needed by slow version.



I can probably make function_graph tracer give return values, although
it will give a return value for void functions as well. And it may give
long long returns for int returns that may have bogus data in the
higher bits.

If the return value requirement is not limited to gup, the approach
sounds more reasonable.


Others have asked about it. Maybe I should do it.

If you are going to add return value in common trace code, I won't do the gup specific one in V3.

Thanks,
Yang


-- Steve


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/