Clean up (refactor) discovery a little; no functional changes.

MFC after:	1 month
Sponsored by:	The FreeBSD Foundation


git-svn-id: svn+ssh://svn.freebsd.org/base/head@273543 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f