mm/mempolicy.c:3719:1-6: ERROR: invalid free of structure field
From: kernel test robot
Date: Sun Jun 01 2025 - 01:35:38 EST
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 7d4e49a77d9930c69751b9192448fda6ff9100f1
commit: e341f9c3c8412e57fe0042a33a2640245ecdf619 mm/mempolicy: Weighted Interleave Auto-tuning
date: 11 days ago
config: loongarch-randconfig-r054-20250601 (https://download.01.org/0day-ci/archive/20250601/202506011545.Fduxqxqj-lkp@xxxxxxxxx/config)
compiler: loongarch64-linux-gcc (GCC) 15.1.0
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202506011545.Fduxqxqj-lkp@xxxxxxxxx/
cocci warnings: (new ones prefixed by >>)
>> mm/mempolicy.c:3719:1-6: ERROR: invalid free of structure field
vim +3719 mm/mempolicy.c
3700
3701 static void wi_state_free(void)
3702 {
3703 struct weighted_interleave_state *old_wi_state;
3704
3705 mutex_lock(&wi_state_lock);
3706
3707 old_wi_state = rcu_dereference_protected(wi_state,
3708 lockdep_is_held(&wi_state_lock));
3709 if (!old_wi_state) {
3710 mutex_unlock(&wi_state_lock);
3711 goto out;
3712 }
3713
3714 rcu_assign_pointer(wi_state, NULL);
3715 mutex_unlock(&wi_state_lock);
3716 synchronize_rcu();
3717 kfree(old_wi_state);
3718 out:
> 3719 kfree(&wi_group->wi_kobj);
3720 }
3721
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki