FreeBSD: Fix the build on FreeBSD 12
It was broken for several reasons:
- VOP_UNLOCK lost an argument in 13.0. So OpenZFS should be using VOP_UNLOCK1, but a few direct calls to VOP_UNLOCK snuck in.
- The location of the zlib header moved in 13.0 and 12.1. We can drop support for building on 12.0, which is EoL.
- knlist_init lost an argument in 13.0. OpenZFS change 9d0887402ba assumed 13.0 or later.
- FreeBSD 13.0 added copy_file_range, and OpenZFS change 67a1b037915 assumed 13.0 or later.
Sponsored-by: Axcient
Reviewed-by: Alexander Motin <mav@FreeBSD.org>
Signed-off-by: Alan Somers <asomers@gmail.com>
Closes #15551