core_pattern: add CPU specifier
[linux-2.6-block.git] / fs / coredump.c
index 7bad7785e8e675ac92d5ba6f55bec90658e4ca51..3e8630c8d6270e77e0cf0ea4acaf2ab849a11b57 100644 (file)
@@ -325,6 +325,10 @@ static int format_corename(struct core_name *cn, struct coredump_params *cprm,
                                err = cn_printf(cn, "%lu",
                                              rlimit(RLIMIT_CORE));
                                break;
+                       /* CPU the task ran on */
+                       case 'C':
+                               err = cn_printf(cn, "%d", cprm->cpu);
+                               break;
                        default:
                                break;
                        }
@@ -534,6 +538,7 @@ void do_coredump(const kernel_siginfo_t *siginfo)
                 */
                .mm_flags = mm->flags,
                .vma_meta = NULL,
+               .cpu = raw_smp_processor_id(),
        };
 
        audit_core_dumps(siginfo->si_signo);