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]

Re: Functions that require interrupts be enabled


Mike Mason <mmlnx@us.ibm.com> writes:

> I want to add a function to the task.stp tapset file that grabs a
> process' arguments from its user address space.  

OK.

> We couldn't do this before because all probes ran with interrupts
> disabled and couldn't sleep.

Why must this new routine be permitted to sleep?  We can tolerate
paged-out data via soft errors (=> blank strings).

> Now that begin/end probes no longer require that interrupts be
> disabled, this function can be used in begin/end probes at least. 

AFAIK, interrupts being enabled is not exactly the same thing as being
able to sleep.


Not that this is a good idea, but:

> How do I prevent the function from being used in other probes?  Is
> there a way to detect if interrupts are disabled

in_interrupt()

> or detect that the function was called from a begin/end probe?

CONTEXT->probe_point

> Do we even want to provide functions with this type of limitation?

Not really.

- FChE


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