Use Linux kzalloc()/kfree() for superblocks

We store the bdi in the superblock. This is accessed using virt_to_page
in bit_waitqueue(), which does not work on kernel virtual memory. We
switch to kzalloc()/kfree() to fix this.

Signed-off-by: Richard Yao <ryao@gentoo.org>
Revert "Revert "Revert "Fix unlink/xattr deadlock"""

This reverts commit 7973e464de4f93b6e669f7f04a316e013767224e.

Conflicts:
	module/zfs/zfs_dir.c