filedesc: drop retval argument from do_dup

It was almost always td_retval anyway.

For the one case where it is not, preserve the old value across the call.


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