Have a driver that allows mounting a virtual drive that has a proprietary format. Driver working fine from 3.x up through the last one tried that works was 4.9.13 (didn't try other 4.9 or 4.10), but on 4.11.7, it doesn't work, read error every time. Did it get broke? Is there new requirement, redefined items, etc..?
Basically it looks like this:
Code:
int driver_file_read(struct file *file, unsigned char *data, unsigned int size)
{
int ret;
mm_segment_t oldfs;
loff_t pos = file->f_pos;
oldfs = get_fs();
set_fs(get_ds());
ret=vfs_read(file, data, size, &pos);
set_fs(oldfs);
// update file pointer
file->f_pos=pos;
return (ret);
}