[Bug 246596] Memory leak in ctld
bugzilla-noreply at freebsd.org
bugzilla-noreply at freebsd.org
Wed May 20 10:15:47 UTC 2020
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=246596
--- Comment #1 from Patryk <patrykkotlowski at gmail.com> ---
Also I found another possible memory leak. In ctld.c in conf_apply fucntion
there is:
/*
* Second, remove any LUNs present in the old configuration
* and missing in the new one.
*/
TAILQ_FOREACH_SAFE(oldlun, &oldconf->conf_luns, l_next, tmplun) {
newlun = lun_find(newconf, oldlun->l_name);
if (newlun == NULL) {
log_debugx("lun \"%s\", CTL lun %d "
"not found in new configuration; "
"removing", oldlun->l_name, oldlun->l_ctl_lun);
error = kernel_lun_remove(oldlun);
if (error != 0) {
log_warnx("failed to remove lun \"%s\", "
"CTL lun %d",
oldlun->l_name, oldlun->l_ctl_lun);
cumulated_error++;
}
continue;
}
Why here lun_delete function is not called before "continue;"?
I next part of function where luns with changed size are deleted there is
lun_delete() call:
if (changed) {
error = kernel_lun_remove(oldlun);
if (error != 0) {
log_warnx("failed to remove lun \"%s\", "
"CTL lun %d",
oldlun->l_name, oldlun->l_ctl_lun);
cumulated_error++;
}
lun_delete(oldlun);
continue;
}
I did't tested in but I think this is also memory leak.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the freebsd-bugs
mailing list