When in[6]_pcblookup_hash_locked() is called from in[6]_pcblookup_hash() only
the epoch(9) seems to protect it; that means we might be able to get an
inp out of the list which is marked FREED and we need to skip it.
The current solution only checks for FREED after a decision was made, which
in turn might yield an unexpected result, though that would only happen in
rare cases.
While here solve all the "XXX locking" cases in the in[6]_pcblookup_hash_locked()
functions.
I am still a bit uneasy about now taking an RLOCK on the inp where we have not
done so before despite the locking order is relaxed with epoch(9). In theory
the lock order should not change with this patch, given the previous solution
did also take the inp lock in in[6]_pcblookup_hash() (though only for the
assumed result).
PR: 232193