osdc/Objecter: fix null dref when pool dne

If the base pool does not exist, we need to avoid dereferencing pi.
This simplest fix is to return with POOL_DNE early and skip all of the
checks.

Note that there is one other small semantic change in this function: if
we are using the precalc_pgid then base_oloc pool has to match.  But
the list_objects() caller does that, so we're fine.

Backport: giant
Fixes: #9944
Signed-off-by: Sage Weil <sage@redhat.com>
Merge pull request #2839 from ceph/wip-9944

osdc/Objecter: fix null dref when pool dne

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>