bpf/syscall: Improve fd get/put pairing.

For some reason, the fd_get() and fd_put() calls are split across two
functions and one error case doesn't result in fd_put() being called.
This might not be fatal, but fix it anyway.
XXX: Random debug logging