crimson/osd: discard stale primary backfill scan after backfill finishes
do_request_primary_scan() is an async coroutine. Backfill can complete
(and on_pg_clean() can destroy backfill_state) while the coroutine is
suspended in scan_for_backfill_primary(), e.g. waiting on an object
context load. Resuming and delivering PrimaryScanned then dereferences
a null backfill_state.
Discard the scan result if backfill_state is gone; the backfill has
already finished successfully.