filedesc: microoptimize fget_unlocked by retrying obtaining reference count
without restarting whole lookup

Restart is only needed when fp was closed by current process, which is a much
rarer event than ref/deref by some other thread.


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