Revision ba18deddd6d502da71fd6b6143c53042271b82bd authored by Yongzhi Liu on 06 March 2024, 10:57:14 UTC, committed by Paolo Abeni on 07 March 2024, 11:03:19 UTC
When auxiliary_device_add() returns error and then calls
auxiliary_device_uninit(), Callback function pdsc_auxbus_dev_release
calls kfree(padev) to free memory. We shouldn't call kfree(padev)
again in the error handling path.

Fix this by cleaning up the redundant kfree() and putting
the error handling back to where the errors happened.

Fixes: 4569cce43bc6 ("pds_core: add auxiliary_bus devices")
Signed-off-by: Yongzhi Liu <hyperlyzcs@gmail.com>
Reviewed-by: Wojciech Drewek <wojciech.drewek@intel.com>
Reviewed-by: Shannon Nelson <shannon.nelson@amd.com>
Link: https://lore.kernel.org/r/20240306105714.20597-1-hyperlyzcs@gmail.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
1 parent d5b8aff
History
File Mode Size
bpf
cgroup
configs
debug
dma
entry
events
futex
gcov
irq
kcsan
livepatch
locking
module
power
printk
rcu
sched
time
trace
.gitignore -rw-r--r-- 67 bytes
Kconfig.freezer -rw-r--r-- 92 bytes
Kconfig.hz -rw-r--r-- 1.7 KB
Kconfig.kexec -rw-r--r-- 5.1 KB
Kconfig.locks -rw-r--r-- 4.9 KB
Kconfig.preempt -rw-r--r-- 4.8 KB
Makefile -rw-r--r-- 5.2 KB
acct.c -rw-r--r-- 15.9 KB
async.c -rw-r--r-- 10.4 KB
audit.c -rw-r--r-- 65.2 KB
audit.h -rw-r--r-- 10.7 KB
audit_fsnotify.c -rw-r--r-- 5.3 KB
audit_tree.c -rw-r--r-- 25.6 KB
audit_watch.c -rw-r--r-- 13.8 KB
auditfilter.c -rw-r--r-- 34.4 KB
auditsc.c -rw-r--r-- 81.7 KB
backtracetest.c -rw-r--r-- 1.9 KB
bounds.c -rw-r--r-- 943 bytes
capability.c -rw-r--r-- 14.8 KB
cfi.c -rw-r--r-- 2.2 KB
compat.c -rw-r--r-- 6.8 KB
configs.c -rw-r--r-- 2.0 KB
context_tracking.c -rw-r--r-- 23.2 KB
cpu.c -rw-r--r-- 79.5 KB
cpu_pm.c -rw-r--r-- 5.9 KB
crash_core.c -rw-r--r-- 27.4 KB
crash_dump.c -rw-r--r-- 1.1 KB
cred.c -rw-r--r-- 18.7 KB
delayacct.c -rw-r--r-- 7.4 KB
dma.c -rw-r--r-- 3.3 KB
exec_domain.c -rw-r--r-- 1.1 KB
exit.c -rw-r--r-- 47.8 KB
exit.h -rw-r--r-- 638 bytes
extable.c -rw-r--r-- 4.2 KB
fail_function.c -rw-r--r-- 6.8 KB
fork.c -rw-r--r-- 87.4 KB
freezer.c -rw-r--r-- 5.5 KB
gen_kheaders.sh -rwxr-xr-x 3.0 KB
groups.c -rw-r--r-- 5.0 KB
hung_task.c -rw-r--r-- 9.7 KB
iomem.c -rw-r--r-- 4.6 KB
irq_work.c -rw-r--r-- 7.7 KB
jump_label.c -rw-r--r-- 21.1 KB
kallsyms.c -rw-r--r-- 23.6 KB
kallsyms_internal.h -rw-r--r-- 907 bytes
kallsyms_selftest.c -rw-r--r-- 10.5 KB
kallsyms_selftest.h -rw-r--r-- 332 bytes
kcmp.c -rw-r--r-- 5.4 KB
kcov.c -rw-r--r-- 29.2 KB
kexec.c -rw-r--r-- 7.4 KB
kexec_core.c -rw-r--r-- 32.6 KB
kexec_elf.c -rw-r--r-- 11.4 KB
kexec_file.c -rw-r--r-- 28.8 KB
kexec_internal.h -rw-r--r-- 1.3 KB
kheaders.c -rw-r--r-- 1.6 KB
kprobes.c -rw-r--r-- 73.9 KB
ksyms_common.c -rw-r--r-- 1015 bytes
ksysfs.c -rw-r--r-- 7.4 KB
kthread.c -rw-r--r-- 42.3 KB
latencytop.c -rw-r--r-- 7.6 KB
module_signature.c -rw-r--r-- 1.1 KB
notifier.c -rw-r--r-- 18.1 KB
nsproxy.c -rw-r--r-- 13.2 KB
numa.c -rw-r--r-- 568 bytes
padata.c -rw-r--r-- 27.9 KB
panic.c -rw-r--r-- 20.5 KB
params.c -rw-r--r-- 23.5 KB
pid.c -rw-r--r-- 18.3 KB
pid_namespace.c -rw-r--r-- 11.8 KB
pid_sysctl.h -rw-r--r-- 1.5 KB
profile.c -rw-r--r-- 13.2 KB
ptrace.c -rw-r--r-- 36.8 KB
range.c -rw-r--r-- 3.0 KB
reboot.c -rw-r--r-- 32.9 KB
regset.c -rw-r--r-- 1.9 KB
relay.c -rw-r--r-- 26.1 KB
resource.c -rw-r--r-- 52.2 KB
resource_kunit.c -rw-r--r-- 4.3 KB
rseq.c -rw-r--r-- 11.8 KB
scftorture.c -rw-r--r-- 20.3 KB
scs.c -rw-r--r-- 3.1 KB
seccomp.c -rw-r--r-- 64.9 KB
signal.c -rw-r--r-- 125.7 KB
smp.c -rw-r--r-- 30.5 KB
smpboot.c -rw-r--r-- 7.3 KB
smpboot.h -rw-r--r-- 640 bytes
softirq.c -rw-r--r-- 23.6 KB
stackleak.c -rw-r--r-- 4.7 KB
stacktrace.c -rw-r--r-- 10.4 KB
static_call.c -rw-r--r-- 158 bytes
static_call_inline.c -rw-r--r-- 12.7 KB
stop_machine.c -rw-r--r-- 18.3 KB
sys.c -rw-r--r-- 68.7 KB
sys_ni.c -rw-r--r-- 9.6 KB
sysctl-test.c -rw-r--r-- 10.7 KB
sysctl.c -rw-r--r-- 53.7 KB
task_work.c -rw-r--r-- 5.1 KB
taskstats.c -rw-r--r-- 15.8 KB
torture.c -rw-r--r-- 25.7 KB
tracepoint.c -rw-r--r-- 20.3 KB
tsacct.c -rw-r--r-- 5.0 KB
ucount.c -rw-r--r-- 9.1 KB
uid16.c -rw-r--r-- 5.1 KB
uid16.h -rw-r--r-- 442 bytes
umh.c -rw-r--r-- 15.3 KB
up.c -rw-r--r-- 1.5 KB
user-return-notifier.c -rw-r--r-- 1.3 KB
user.c -rw-r--r-- 6.3 KB
user_namespace.c -rw-r--r-- 35.7 KB
usermode_driver.c -rw-r--r-- 4.3 KB
utsname.c -rw-r--r-- 3.8 KB
utsname_sysctl.c -rw-r--r-- 3.4 KB
vhost_task.c -rw-r--r-- 3.2 KB
watch_queue.c -rw-r--r-- 17.3 KB
watchdog.c -rw-r--r-- 27.9 KB
watchdog_buddy.c -rw-r--r-- 3.0 KB
watchdog_perf.c -rw-r--r-- 6.6 KB
workqueue.c -rw-r--r-- 191.8 KB
workqueue_internal.h -rw-r--r-- 2.5 KB

back to top