hellofs
hellofs copied to clipboard
Kernel 6.2.x.x compilation complains
With kernel 6.2.x.x the file system API has been redefined with new members. Can you update the source code with the new API?
home/guy/git/hellofs/khellofs.c:19:15: error: initialization of ‘int (*)(struct user_namespace *, struct inode *, struct dentry , umode_t, bool)’ {aka ‘int ()(struct user_namespace *, struct inode *, struct dentry , short unsigned int, _Bool)’} from incompatible pointer type ‘int ()(struct inode *, struct dentry , umode_t, bool)’ {aka ‘int ()(struct inode *, struct dentry , short unsigned int, _Bool)’} [-Werror=incompatible-pointer-types] 19 | .create = hellofs_create, | ^~~~~~~~~~~~~~ /home/guy/git/hellofs/khellofs.c:19:15: note: (near initialization for ‘hellofs_inode_ops.create’) /home/guy/git/hellofs/khellofs.c:20:14: error: initialization of ‘int ()(struct user_namespace *, struct inode *, struct dentry , umode_t)’ {aka ‘int ()(struct user_namespace *, struct inode *, struct dentry , short unsigned int)’} from incompatible pointer type ‘int ()(struct inode *, struct dentry , umode_t)’ {aka ‘int ()(struct inode *, struct dentry , short unsigned int)’} [-Werror=incompatible-pointer-types] 20 | .mkdir = hellofs_mkdir, | ^~~~~~~~~~~~~ /home/guy/git/hellofs/khellofs.c:20:14: note: (near initialization for ‘hellofs_inode_ops.mkdir’) /home/guy/git/hellofs/khellofs.c:26:6: error: ‘const struct file_operations’ has no member named ‘readdir’; did you mean ‘read’? 26 | .readdir = hellofs_readdir, | ^~~~~~~ | read /home/guy/git/hellofs/khellofs.c:26:16: error: positional initialization of field in ‘struct’ declared with ‘designated_init’ attribute [-Werror=designated-init] 26 | .readdir = hellofs_readdir, | ^~~~~~~~~~~~~~~ /home/guy/git/hellofs/khellofs.c:26:16: note: (near initialization for ‘hellofs_dir_operations’) /home/guy/git/hellofs/khellofs.c:26:16: error: initialization of ‘loff_t ()(struct file , loff_t, int)’ {aka ‘long long int ()(struct file , long long int, int)’} from incompatible pointer type ‘int ()(struct file *, void , bool ()(struct dir_context *, const char *, int, loff_t, u64, unsigned in
It appears that this repository has not been maintained for years. You might want to consider trying simplefs as an alternative. The latter supports Linux 6.x kernels.