On 03/24/2017 05:54 PM, Tetsuo Handa wrote: > Mike Kravetz wrote: >> Any time after inode allocation, destroy_inode can be called. The >> hugetlbfs inode contains a shared_policy structure, and >> mpol_free_shared_policy is unconditionally called as part of >> hugetlbfs_destroy_inode. Initialize the policy as part of inode >> allocation so that any quick (error path) calls to destroy_inode >> will be handed an initialized policy. > > I think you can as well do > > - struct hugetlbfs_inode_info *info; > - info = HUGETLBFS_I(inode); > - mpol_shared_policy_init(&info->policy, NULL); > > in hugetlbfs_get_root(). Thank you. You are correct. After doing shared policy initialization at inode allocation time, it is redundant here. I will send v2 patch with this modification. -- Mike Kravetz -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>