Messages in this thread | | | Date | Mon, 20 Jul 2015 10:35:54 -0400 | From | Dave Jones <> | Subject | Re: [tip:locking/core] futex: Fault/error injection capabilities |
| |
On Mon, Jul 20, 2015 at 03:57:58AM -0700, tip-bot for Davidlohr Bueso wrote: > Commit-ID: ab51fbab39d864f3223e44a2600fd951df261f0b > Gitweb: http://git.kernel.org/tip/ab51fbab39d864f3223e44a2600fd951df261f0b > Author: Davidlohr Bueso <dave@stgolabs.net> > AuthorDate: Mon, 29 Jun 2015 23:26:02 -0700 > Committer: Thomas Gleixner <tglx@linutronix.de> > CommitDate: Mon, 20 Jul 2015 11:45:45 +0200 > > futex: Fault/error injection capabilities > > Although futexes are well known for being a royal pita, > we really have very little debugging capabilities - except > for relying on tglx's eye half the time. > > By simply making use of the existing fault-injection machinery, > we can improve this situation, allowing generating artificial > uaddress faults and deadlock scenarios. Of course, when this is > disabled in production systems, the overhead for failure checks > is practically zero -- so this is very cheap at the same time. > Future work would be nice to now enhance trinity to make use of > this.
If you enable any of the fault injection modules, ie, like you demonstrate here:
> +- /sys/kernel/debug/fail_futex/ignore-private: > + > + Format: { 'Y' | 'N' } > + default is 'N', setting it to 'Y' will disable failure injections > + when dealing with private (address space) futexes. > +
each pid gets a a make-it-fail file in /proc/self/. If present, trinity will set this to 1 for child processes.
So it should work today unless I've missed something.
Dave
| |