Messages in this thread |  | | | Subject | Re: __update_max_tr: rcu_read_lock() used illegally while idle! | | From | Steven Rostedt <> | | Date | Tue, 31 Jul 2012 10:56:23 -0400 |
| |
On Tue, 2012-07-31 at 10:51 -0400, Steven Rostedt wrote:
> > OK, I will bite. How about using something like RCU_NONIDLE(), either > > directly or open-coded, to make it a legal call site? > > OK, then something like: > > RCU_NONIDLE(max_data = task_uid(tsk)); > > would work when called normally or with idle? >
The comment above RCU_NONIDLE() says:
This macro may be used from process-level code only.
Although I'm not sure what a 'level' is. Do you mean process-context? If so, then this will not work because it can be called from non process level code (return from interrupt), or any interrupt that enables interrupts.
-- Steve
|  |