Fix fcntl(2) compat32 after r270691.  The copyin and copyout of the
struct flock are done in the sys_fcntl(), which mean that compat32 used
direct access to userland pointers.

Move code from sys_fcntl() to new wrapper, kern_fcntl_freebsd(), which
performs neccessary userland memory accesses, and use it from both
native and compat32 fcntl syscalls.

Reported by:	jhibbits
Sponsored by:	The FreeBSD Foundation
MFC after:	3 days


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