Functions that require interrupts be enabled
Frank Ch. Eigler
fche@redhat.com
Wed May 16 00:49:00 GMT 2007
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
More information about the Systemtap
mailing list