osd: bracket role changes with scrub reg/unreg

Make sure the reg/unreg calls for putting ourselves in the scrub schedule
bracket any PG role changes, or that initial reg happens after the role
has been initialized.

Signed-off-by: Sage Weil <sage@inktank.com>
osd: only register for scrub if we are the PG primary

There is no reason to put non-primary PGs on the scrub schedule as they
will be ignored when the worker comes around.  This reduces lock
contention and is generally cleaner.

Signed-off-by: Guang Yang <yguang@yahoo-inc.com>
Signed-off-by: Sage Weil <sage@inktank.com>
Merge pull request #1476 from ceph/wip-scrub-lock

osd: do not queue scrub for non-primary

Reviewed-by: Samuel Just <sam.just@inktank.com>