This is the mail archive of the
systemtap@sourceware.org
mailing list for the systemtap project.
[Bug runtime/4075] BUG: sleeping function called from invalid context, when running systemtap tests
- From: "ananth at in dot ibm dot com" <sourceware-bugzilla at sourceware dot org>
- To: systemtap at sources dot redhat dot com
- Date: 20 Feb 2007 05:33:18 -0000
- Subject: [Bug runtime/4075] BUG: sleeping function called from invalid context, when running systemtap tests
- References: <20070219151346.4075.srinivasa@in.ibm.com>
- Reply-to: sourceware-bugzilla at sourceware dot org
------- Additional Comments From ananth at in dot ibm dot com 2007-02-20 05:33 -------
Just checked the kernel code as far back as linux-2.6.17... all versions have
the might_sleep() check in __get_user_nocheck() on powerpc for the case where
the address in question is in userspace. AFAICS, the check is legitimate since
the user address may not be in memory at the time of access.
We may not have hit this BUG on other architectures, but I don't see why not.
Looking at x86_64, __get_user() -> __get_user_nocheck() -> __get_user_size()
which ends up calling __chk_user_ptr() which is defined in
include/linux/compiler.h. The call is stubbed out if __CHECKER__ isn't defined
(the default case), but I don't know what that call translates to if __CHECKER__
is defined. Maybe that is a worthy exercise on x86_64?
Martin,
If you think that these warnings can safely be ignored, I guess the only way out
is to have separate runtime/copy.c variants as you suggested earlier.
--
http://sourceware.org/bugzilla/show_bug.cgi?id=4075
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.