Nicolai, Regarding the debugfs_create_file() which ignores .mmap field in the struct file_operations. The patch is a part of the kernel 4.8 in the Ubuntu 16.10 and breaks quite a few online code examples of mmap drivers.
Is is acceptable to replace the debugfs_create_file() by a macro and fail the compilation if the .mmap field is not initialized. Alternatively debugfs_create_file() can return an error if .mmap is not NULL. Thank you, Arkady.

