Loading fs/ext4/namei.c +4 −1 Original line number Diff line number Diff line Loading @@ -870,12 +870,15 @@ static void dx_release(struct dx_frame *frames) { struct dx_root_info *info; int i; unsigned int indirect_levels; if (frames[0].bh == NULL) return; info = &((struct dx_root *)frames[0].bh->b_data)->info; for (i = 0; i <= info->indirect_levels; i++) { /* save local copy, "info" may be freed after brelse() */ indirect_levels = info->indirect_levels; for (i = 0; i <= indirect_levels; i++) { if (frames[i].bh == NULL) break; brelse(frames[i].bh); Loading Loading
fs/ext4/namei.c +4 −1 Original line number Diff line number Diff line Loading @@ -870,12 +870,15 @@ static void dx_release(struct dx_frame *frames) { struct dx_root_info *info; int i; unsigned int indirect_levels; if (frames[0].bh == NULL) return; info = &((struct dx_root *)frames[0].bh->b_data)->info; for (i = 0; i <= info->indirect_levels; i++) { /* save local copy, "info" may be freed after brelse() */ indirect_levels = info->indirect_levels; for (i = 0; i <= indirect_levels; i++) { if (frames[i].bh == NULL) break; brelse(frames[i].bh); Loading