mirror of
https://github.com/torvalds/linux.git
synced 2024-11-23 04:31:50 +00:00
module: correctly exit module_kallsyms_on_each_symbol when fn() != 0
Commit013c1667cf
("kallsyms: refactor {,module_}kallsyms_on_each_symbol") replaced the return inside the nested loop with a break, changing the semantics of the function: the break only exits the innermost loop, so the code continues iterating the symbols of the next module instead of exiting. Fixes:013c1667cf
("kallsyms: refactor {,module_}kallsyms_on_each_symbol") Reviewed-by: Petr Mladek <pmladek@suse.com> Reviewed-by: Miroslav Benes <mbenes@suse.cz> Signed-off-by: Jon Mediero <jmdr@disroot.org> Signed-off-by: Jessica Yu <jeyu@kernel.org>
This commit is contained in:
parent
02b2fb455b
commit
2c0f0f3639
@ -4415,9 +4415,10 @@ int module_kallsyms_on_each_symbol(int (*fn)(void *, const char *,
|
||||
ret = fn(data, kallsyms_symbol_name(kallsyms, i),
|
||||
mod, kallsyms_symbol_value(sym));
|
||||
if (ret != 0)
|
||||
break;
|
||||
goto out;
|
||||
}
|
||||
}
|
||||
out:
|
||||
mutex_unlock(&module_mutex);
|
||||
return ret;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user