On Thu, Apr 06, 2017 at 10:02:48AM +1000, NeilBrown wrote: > If you are concerned about space in 'struct address_space', just prune > some wastage. I'm trying to (via wlists). still buggy though. > The "host" field brings no value. It is only ever assigned in > inode_init_always(): > > struct address_space *const mapping = &inode->i_data; > ...... > mapping->host = inode; > > So you could change all references to use > container_of(mapping, struct inode, i_data) Alas, no: drivers/dax/dax.c: inode->i_mapping->host = dax_dev->inode; fs/gfs2/glock.c: mapping->host = s->s_bdev->bd_inode; fs/gfs2/ops_fstype.c: mapping->host = sb->s_bdev->bd_inode; fs/nilfs2/page.c: mapping->host = inode;