mds: Fix respawn (add path resolution)

Previously assumed that ceph-mds executable was in
PWD - now use /proc/self/exe to find the
executable whereever it may be.  Leave in old version
as a fallback for non-linux environments.

Also add a 'respawn' command so that it's easy to test
respawn with `ceph mds tell <id> respawn`

Fixes: #7966
spelling corrections
mon: EBUSY instead of EAGAIN when pgs creating

In 69321bf, EAGAIN changed behaviour to block indefinitely
rather than returning to user.  Change the return for
`osd pool set` operations that are blocked by creating PGs
to return EBUSY instead of EAGAIN, so that they are excepted
from this blocking behaviour.

Signed-off-by: John Spray <john.spray@inktank.com>
Merge pull request #1677 from ceph/wip-poolset-noblock

mon: Don't block on EAGAIN from `osd pool set`

Reviewed-by: Sage Weil <sage@inktank.com>
Merge pull request #1671 from ceph/wip-7699

mds: Fix respawn (add path resolution)

Reviewed-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
Merge pull request #1684 from onlyjob/debian

spelling corrections

Reviewed-by: Sage Weil <sage@inktank.com>
osdc/Objecter: fix osd target for newly-homeless op

If we recalculate the mapping and find that there is no primary, we need
to set the 'osd' field to -1.  Otherwise, the caller will try to resend
to a dead session with bad results.

This was introduced in the refactor 860d72770c.

Fixes: #8130
Signed-off-by: Sage Weil <sage@inktank.com>
Merge pull request #1687 from ceph/wip-8130

osdc/Objecter: fix osd target for newly-homeless op

Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
debug pg refs

hunting #7891
debug workqueue weirdness

I saw the work queue doing work after the drain returned, which was weird.