]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - kernel/kprobes.c
irq/matrix: Fix memory overallocation
[mirror_ubuntu-bionic-kernel.git] / kernel / kprobes.c
index 33cd97c08bbd474cd89434e9be34aab58cdd5e99..6ede02bb05ac406090301aceeadc63cf1e6425a7 100644 (file)
@@ -544,8 +544,14 @@ static void do_free_cleaned_kprobes(void)
        struct optimized_kprobe *op, *tmp;
 
        list_for_each_entry_safe(op, tmp, &freeing_list, list) {
-               BUG_ON(!kprobe_unused(&op->kp));
                list_del_init(&op->list);
+               if (WARN_ON_ONCE(!kprobe_unused(&op->kp))) {
+                       /*
+                        * This must not happen, but if there is a kprobe
+                        * still in use, keep it on kprobes hash list.
+                        */
+                       continue;
+               }
                free_aggr_kprobe(&op->kp);
        }
 }