See a quick example I whipped up here: https://github.com/inetknght/mmap-hugetlb
Do you have kernel documentation that says that hugetlb doesn't work for files? I don't see that stated anywhere.
See a quick example I whipped up here: https://github.com/inetknght/mmap-hugetlb