I recognize that grepping is long process and doing the whole disk may not be the best Idea but sometimes you have to search the whole disk to find what you want.
I don't believe you.
Your grep has probably stalled trying to read from .../supervise/control, which is a fifo, not a regular file.
Sometimes I want to find a text string so that I can figure out where a certain program is on the system.
If you know the name of the program, then you can do one of:
find / -xdev -print | grep xxx
or
updatedb
locate xxx
If you want to find the program containing a particular string, then I suggest you just search where programs are actually found - usually in the directories identified by $PATH.
If you really want to do an exhaustive search, you can use:
find / -xdev -type f -executable -print | xargs grep xxxx