mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 03:01:39 -04:00
(re)register_binfmt returns with -EBUSY
When a binary format is unregistered and re-registered, register_binfmt fails with -EBUSY. The reason is that unregister_binfmt does not set fmt->next to NULL, and seeing (fmt->next != NULL), register_binfmt fails with -EBUSY. One can find his way around by explicitly setting fmt->next to NULL after unregistering, but that is kind of unclean (one should better be using only the interfaces, and not the interal members, isn't it?) Attached one-liner can fix it. Signed-off-by: Kalash Nainwal <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
parent
0f95b7fc83
commit
98701d1b0f
1 changed files with 1 additions and 0 deletions
|
|
@ -100,6 +100,7 @@ int unregister_binfmt(struct linux_binfmt * fmt)
|
|||
while (*tmp) {
|
||||
if (fmt == *tmp) {
|
||||
*tmp = fmt->next;
|
||||
fmt->next = NULL;
|
||||
write_unlock(&binfmt_lock);
|
||||
return 0;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue