Fix EFI UFS caching
EFI was mixing caching in two separate places causing issues when multiple
partitions where tested.
Eliminate this by removing fsstat and re-factoring fsread into fsread_size,
adding basic parameter validation.
Also:
- Enhance some error print outs.
- Fix compilation under UFS1_ONLY and UFS2_ONLY
- Use sizeof on vars instead of structs.
- Add basic parameter validation to fsread_size.
MFC after: 1 week
X-MFC-With: r293268
Sponsored by: Multiplay
Differential Revision: https://reviews.freebsd.org/D4989