This is the mail archive of the systemtap@sourceware.org mailing list for the systemtap project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug runtime/4075] BUG: sleeping function called from invalid context, when running systemtap tests


------- 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.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]