Searched refs:dumper (Results 1 - 26 of 26) sorted by relevance

/linux-4.4.14/include/linux/
H A Dkmsg_dump.h34 * struct kmsg_dumper - kernel crash message dumper structure
35 * @list: Entry in the dumper list (private)
43 void (*dump)(struct kmsg_dumper *dumper, enum kmsg_dump_reason reason);
58 bool kmsg_dump_get_line_nolock(struct kmsg_dumper *dumper, bool syslog,
61 bool kmsg_dump_get_line(struct kmsg_dumper *dumper, bool syslog,
64 bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
67 void kmsg_dump_rewind_nolock(struct kmsg_dumper *dumper);
69 void kmsg_dump_rewind(struct kmsg_dumper *dumper);
71 int kmsg_dump_register(struct kmsg_dumper *dumper);
73 int kmsg_dump_unregister(struct kmsg_dumper *dumper);
79 static inline bool kmsg_dump_get_line_nolock(struct kmsg_dumper *dumper, kmsg_dump_get_line_nolock() argument
86 static inline bool kmsg_dump_get_line(struct kmsg_dumper *dumper, bool syslog, kmsg_dump_get_line() argument
92 static inline bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog, kmsg_dump_get_buffer() argument
98 static inline void kmsg_dump_rewind_nolock(struct kmsg_dumper *dumper) kmsg_dump_rewind_nolock() argument
102 static inline void kmsg_dump_rewind(struct kmsg_dumper *dumper) kmsg_dump_rewind() argument
106 static inline int kmsg_dump_register(struct kmsg_dumper *dumper) kmsg_dump_register() argument
111 static inline int kmsg_dump_unregister(struct kmsg_dumper *dumper) kmsg_dump_unregister() argument
H A Dmm_types.h367 struct core_thread dumper; member in struct:core_state
/linux-4.4.14/arch/um/kernel/
H A Dkmsg_dump.c7 static void kmsg_dumper_stdout(struct kmsg_dumper *dumper, kmsg_dumper_stdout() argument
28 while (kmsg_dump_get_line(dumper, true, line, sizeof(line), &len)) { kmsg_dumper_stdout()
/linux-4.4.14/arch/powerpc/platforms/powernv/
H A Dopal-kmsg.c2 * kmsg dumper that ensures the OPAL console fully flushes panic messages
26 static void force_opal_console_flush(struct kmsg_dumper *dumper, force_opal_console_flush() argument
71 /* Add our dumper to the list */ opal_kmsg_init()
H A Dopal.c761 /* Initialise OPAL kmsg dumper for flushing console on panic */
/linux-4.4.14/arch/um/include/asm/
H A Da.out-core.h1 /* a.out coredump register dumper
/linux-4.4.14/kernel/printk/
H A Dprintk.c2803 * kmsg_dump_register - register a kernel log dumper.
2804 * @dumper: pointer to the kmsg_dumper structure
2806 * Adds a kernel log dumper to the system. The dump callback in the
2810 int kmsg_dump_register(struct kmsg_dumper *dumper) kmsg_dump_register() argument
2816 if (!dumper->dump) kmsg_dump_register()
2821 if (!dumper->registered) { kmsg_dump_register()
2822 dumper->registered = 1; kmsg_dump_register()
2823 list_add_tail_rcu(&dumper->list, &dump_list); kmsg_dump_register()
2833 * kmsg_dump_unregister - unregister a kmsg dumper.
2834 * @dumper: pointer to the kmsg_dumper structure
2839 int kmsg_dump_unregister(struct kmsg_dumper *dumper) kmsg_dump_unregister() argument
2845 if (dumper->registered) { kmsg_dump_unregister()
2846 dumper->registered = 0; kmsg_dump_unregister()
2847 list_del_rcu(&dumper->list); kmsg_dump_unregister()
2864 * Call each of the registered dumper's dump() callback, which can
2870 struct kmsg_dumper *dumper; kmsg_dump() local
2877 list_for_each_entry_rcu(dumper, &dump_list, list) { kmsg_dump()
2878 if (dumper->max_reason && reason > dumper->max_reason) kmsg_dump()
2882 dumper->active = true; kmsg_dump()
2885 dumper->cur_seq = clear_seq; kmsg_dump()
2886 dumper->cur_idx = clear_idx; kmsg_dump()
2887 dumper->next_seq = log_next_seq; kmsg_dump()
2888 dumper->next_idx = log_next_idx; kmsg_dump()
2891 /* invoke dumper which will iterate over records */ kmsg_dump()
2892 dumper->dump(dumper, reason); kmsg_dump()
2895 dumper->active = false; kmsg_dump()
2902 * @dumper: registered kmsg dumper
2919 bool kmsg_dump_get_line_nolock(struct kmsg_dumper *dumper, bool syslog, kmsg_dump_get_line_nolock() argument
2926 if (!dumper->active) kmsg_dump_get_line_nolock()
2929 if (dumper->cur_seq < log_first_seq) { kmsg_dump_get_line_nolock()
2931 dumper->cur_seq = log_first_seq; kmsg_dump_get_line_nolock()
2932 dumper->cur_idx = log_first_idx; kmsg_dump_get_line_nolock()
2936 if (dumper->cur_seq >= log_next_seq) kmsg_dump_get_line_nolock()
2939 msg = log_from_idx(dumper->cur_idx); kmsg_dump_get_line_nolock()
2942 dumper->cur_idx = log_next(dumper->cur_idx); kmsg_dump_get_line_nolock()
2943 dumper->cur_seq++; kmsg_dump_get_line_nolock()
2953 * @dumper: registered kmsg dumper
2968 bool kmsg_dump_get_line(struct kmsg_dumper *dumper, bool syslog, kmsg_dump_get_line() argument
2975 ret = kmsg_dump_get_line_nolock(dumper, syslog, line, size, len); kmsg_dump_get_line()
2984 * @dumper: registered kmsg dumper
3001 bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog, kmsg_dump_get_buffer() argument
3013 if (!dumper->active) kmsg_dump_get_buffer()
3017 if (dumper->cur_seq < log_first_seq) { kmsg_dump_get_buffer()
3019 dumper->cur_seq = log_first_seq; kmsg_dump_get_buffer()
3020 dumper->cur_idx = log_first_idx; kmsg_dump_get_buffer()
3024 if (dumper->cur_seq >= dumper->next_seq) { kmsg_dump_get_buffer()
3030 seq = dumper->cur_seq; kmsg_dump_get_buffer()
3031 idx = dumper->cur_idx; kmsg_dump_get_buffer()
3033 while (seq < dumper->next_seq) { kmsg_dump_get_buffer()
3043 seq = dumper->cur_seq; kmsg_dump_get_buffer()
3044 idx = dumper->cur_idx; kmsg_dump_get_buffer()
3046 while (l > size && seq < dumper->next_seq) { kmsg_dump_get_buffer()
3060 while (seq < dumper->next_seq) { kmsg_dump_get_buffer()
3069 dumper->next_seq = next_seq; kmsg_dump_get_buffer()
3070 dumper->next_idx = next_idx; kmsg_dump_get_buffer()
3082 * @dumper: registered kmsg dumper
3084 * Reset the dumper's iterator so that kmsg_dump_get_line() and
3086 * times within the same dumper.dump() callback.
3090 void kmsg_dump_rewind_nolock(struct kmsg_dumper *dumper) kmsg_dump_rewind_nolock() argument
3092 dumper->cur_seq = clear_seq; kmsg_dump_rewind_nolock()
3093 dumper->cur_idx = clear_idx; kmsg_dump_rewind_nolock()
3094 dumper->next_seq = log_next_seq; kmsg_dump_rewind_nolock()
3095 dumper->next_idx = log_next_idx; kmsg_dump_rewind_nolock()
3100 * @dumper: registered kmsg dumper
3102 * Reset the dumper's iterator so that kmsg_dump_get_line() and
3104 * times within the same dumper.dump() callback.
3106 void kmsg_dump_rewind(struct kmsg_dumper *dumper) kmsg_dump_rewind() argument
3111 kmsg_dump_rewind_nolock(dumper); kmsg_dump_rewind()
/linux-4.4.14/arch/x86/include/asm/
H A Da.out-core.h1 /* a.out coredump register dumper
/linux-4.4.14/drivers/mtd/
H A Dmtdoops.c303 static void mtdoops_do_dump(struct kmsg_dumper *dumper, mtdoops_do_dump() argument
306 struct mtdoops_context *cxt = container_of(dumper, mtdoops_do_dump()
313 kmsg_dump_get_buffer(dumper, true, cxt->oops_buf + MTDOOPS_HEADER_SIZE, mtdoops_do_dump()
364 printk(KERN_ERR "mtdoops: registering kmsg dumper failed, error %d\n", err); mtdoops_notify_add()
/linux-4.4.14/arch/m68k/include/asm/
H A Da.out-core.h1 /* a.out coredump register dumper
/linux-4.4.14/drivers/staging/lustre/lustre/libcfs/
H A Ddebug.c476 struct task_struct *dumper; libcfs_debug_dumplog() local
485 dumper = kthread_run(libcfs_debug_dumplog_thread, libcfs_debug_dumplog()
488 if (IS_ERR(dumper)) libcfs_debug_dumplog()
490 PTR_ERR(dumper)); libcfs_debug_dumplog()
/linux-4.4.14/drivers/input/joystick/
H A Djoydump.c36 #define DRIVER_DESC "Gameport data dumper module"
/linux-4.4.14/arch/alpha/include/asm/
H A Da.out-core.h1 /* a.out coredump register dumper
/linux-4.4.14/fs/pstore/
H A Dplatform.c279 static void pstore_dump(struct kmsg_dumper *dumper, pstore_dump() argument
316 if (!kmsg_dump_get_buffer(dumper, true, dst + hsize, pstore_dump()
337 if (!kmsg_dump_get_buffer(dumper, true, dst, pstore_dump()
/linux-4.4.14/fs/
H A Dcoredump.c391 core_state->dumper.task = tsk; coredump_wait()
392 core_state->dumper.next = NULL; coredump_wait()
408 ptr = core_state->dumper.next; coredump_wait()
430 next = mm->core_state->dumper.next; coredump_finish()
H A Dbinfmt_elf_fdpic.c1201 * ELF-FDPIC core dumper
1206 * Modelled on fs/binfmt_elf.c core dumper
1564 * Actual dumper
1633 for (ct = current->mm->core_state->dumper.next; elf_fdpic_core_dump()
H A Dbinfmt_elf.c1188 * ELF core dumper
1744 for (ct = &dump_task->mm->core_state->dumper; ct; ct = ct->next) { fill_note_info()
1955 for (ct = current->mm->core_state->dumper.next; fill_note_info()
2118 * Actual dumper
/linux-4.4.14/arch/sh/kernel/
H A Dunwinder.c129 * stack dumper because the current one faulted unexpectedly.
/linux-4.4.14/arch/powerpc/kernel/
H A Dnvram_64.c86 static void oops_to_nvram(struct kmsg_dumper *dumper,
672 static void oops_to_nvram(struct kmsg_dumper *dumper, oops_to_nvram() argument
713 kmsg_dump_get_buffer(dumper, false, oops_to_nvram()
718 kmsg_dump_rewind(dumper); oops_to_nvram()
719 kmsg_dump_get_buffer(dumper, false, oops_to_nvram()
/linux-4.4.14/arch/arm64/mm/
H A Ddump.c71 * The page dumper groups page table entries of the same type into a single
/linux-4.4.14/arch/x86/mm/
H A Ddump_pagetables.c23 * The dumper groups pagetable entries of the same type into one, and for
/linux-4.4.14/fs/proc/
H A Dkcore.c2 * fs/proc/kcore.c kernel ELF core dumper
/linux-4.4.14/kernel/debug/kdb/
H A Dkdb_main.c2087 struct kmsg_dumper dumper = { .active = 1 }; kdb_dmesg() local
2112 kmsg_dump_rewind_nolock(&dumper); kdb_dmesg()
2113 while (kmsg_dump_get_line_nolock(&dumper, 1, NULL, 0, NULL)) kdb_dmesg()
2145 kmsg_dump_rewind_nolock(&dumper); kdb_dmesg()
2146 while (kmsg_dump_get_line_nolock(&dumper, 1, buf, sizeof(buf), &len)) { kdb_dmesg()
/linux-4.4.14/drivers/staging/lustre/lustre/ptlrpc/
H A Dlayout.c810 #define DEFINE_MSGF(name, flags, size, swabber, dumper) { \
815 .rmf_dumper = (void (*)(void *))(dumper) \
/linux-4.4.14/kernel/
H A Dexit.c411 self.next = xchg(&core_state->dumper.next, &self); exit_mm()
414 * to core_state->dumper. exit_mm()
/linux-4.4.14/arch/powerpc/xmon/
H A Dxmon.c2374 struct kmsg_dumper dumper = { .active = 1 }; dump_log_buf() local
2386 kmsg_dump_rewind_nolock(&dumper); dump_log_buf()
2388 while (kmsg_dump_get_line_nolock(&dumper, false, buf, sizeof(buf), &len)) { dump_log_buf()

Completed in 842 milliseconds