dumper             75 arch/powerpc/kernel/nvram_64.c static void oops_to_nvram(struct kmsg_dumper *dumper,
dumper            645 arch/powerpc/kernel/nvram_64.c static void oops_to_nvram(struct kmsg_dumper *dumper,
dumper            686 arch/powerpc/kernel/nvram_64.c 		kmsg_dump_get_buffer(dumper, false,
dumper            691 arch/powerpc/kernel/nvram_64.c 		kmsg_dump_rewind(dumper);
dumper            692 arch/powerpc/kernel/nvram_64.c 		kmsg_dump_get_buffer(dumper, false,
dumper             22 arch/powerpc/platforms/powernv/opal-kmsg.c static void kmsg_dump_opal_console_flush(struct kmsg_dumper *dumper,
dumper           2891 arch/powerpc/xmon/xmon.c 	struct kmsg_dumper dumper = { .active = 1 };
dumper           2903 arch/powerpc/xmon/xmon.c 	kmsg_dump_rewind_nolock(&dumper);
dumper           2905 arch/powerpc/xmon/xmon.c 	while (kmsg_dump_get_line_nolock(&dumper, false, buf, sizeof(buf), &len)) {
dumper              8 arch/um/kernel/kmsg_dump.c static void kmsg_dumper_stdout(struct kmsg_dumper *dumper,
dumper             29 arch/um/kernel/kmsg_dump.c 	while (kmsg_dump_get_line(dumper, true, line, sizeof(line), &len)) {
dumper           1147 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 		struct a5xx_crashdumper *dumper)
dumper           1149 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 	dumper->ptr = msm_gem_kernel_new_locked(gpu->dev,
dumper           1151 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 		&dumper->bo, &dumper->iova);
dumper           1153 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 	if (!IS_ERR(dumper->ptr))
dumper           1154 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 		msm_gem_object_set_name(dumper->bo, "crashdump");
dumper           1156 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 	return PTR_ERR_OR_ZERO(dumper->ptr);
dumper           1160 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 		struct a5xx_crashdumper *dumper)
dumper           1164 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 	if (IS_ERR_OR_NULL(dumper->ptr))
dumper           1168 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 		REG_A5XX_CP_CRASH_SCRIPT_BASE_HI, dumper->iova);
dumper           1206 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 	struct a5xx_crashdumper dumper = { 0 };
dumper           1211 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 	if (a5xx_crashdumper_init(gpu, &dumper))
dumper           1215 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 	ptr = dumper.ptr;
dumper           1218 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 	offset = dumper.iova + (256 * SZ_1K);
dumper           1249 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 	if (a5xx_crashdumper_run(gpu, &dumper)) {
dumper           1251 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 		msm_gem_kernel_put(dumper.bo, gpu->aspace, true);
dumper           1256 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 	memcpy(a5xx_state->hlsqregs, dumper.ptr + (256 * SZ_1K),
dumper           1259 drivers/gpu/drm/msm/adreno/a5xx_gpu.c 	msm_gem_kernel_put(dumper.bo, gpu->aspace, true);
dumper            113 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		struct a6xx_crashdumper *dumper)
dumper            115 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	dumper->ptr = msm_gem_kernel_new_locked(gpu->dev,
dumper            117 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		&dumper->bo, &dumper->iova);
dumper            119 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	if (!IS_ERR(dumper->ptr))
dumper            120 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		msm_gem_object_set_name(dumper->bo, "crashdump");
dumper            122 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	return PTR_ERR_OR_ZERO(dumper->ptr);
dumper            126 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		struct a6xx_crashdumper *dumper)
dumper            133 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	if (IS_ERR_OR_NULL(dumper->ptr))
dumper            143 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		REG_A6XX_CP_CRASH_SCRIPT_BASE_HI, dumper->iova);
dumper            431 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		struct a6xx_crashdumper *dumper)
dumper            433 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	u64 *in = dumper->ptr;
dumper            434 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	u64 out = dumper->iova + A6XX_CD_DATA_OFFSET;
dumper            465 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	if (a6xx_crashdumper_run(gpu, dumper))
dumper            469 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	obj->data = state_kmemdup(a6xx_state, dumper->ptr + A6XX_CD_DATA_OFFSET,
dumper            475 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		struct a6xx_crashdumper *dumper)
dumper            491 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 			&a6xx_state->dbgahb_clusters[i], dumper);
dumper            499 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		struct a6xx_crashdumper *dumper)
dumper            501 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	u64 *in = dumper->ptr;
dumper            502 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	u64 out = dumper->iova + A6XX_CD_DATA_OFFSET;
dumper            536 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	if (a6xx_crashdumper_run(gpu, dumper))
dumper            540 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	obj->data = state_kmemdup(a6xx_state, dumper->ptr + A6XX_CD_DATA_OFFSET,
dumper            546 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		struct a6xx_crashdumper *dumper)
dumper            560 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 			&a6xx_state->clusters[i], dumper);
dumper            568 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		struct a6xx_crashdumper *dumper)
dumper            570 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	u64 *in = dumper->ptr;
dumper            582 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 			block->size, dumper->iova + A6XX_CD_DATA_OFFSET);
dumper            587 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	if (a6xx_crashdumper_run(gpu, dumper))
dumper            591 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	obj->data = state_kmemdup(a6xx_state, dumper->ptr + A6XX_CD_DATA_OFFSET,
dumper            597 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		struct a6xx_crashdumper *dumper)
dumper            611 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 			&a6xx_state->shaders[i], dumper);
dumper            619 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		struct a6xx_crashdumper *dumper)
dumper            622 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	u64 *in = dumper->ptr;
dumper            623 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	u64 out = dumper->iova + A6XX_CD_DATA_OFFSET;
dumper            644 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	if (a6xx_crashdumper_run(gpu, dumper))
dumper            648 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	obj->data = state_kmemdup(a6xx_state, dumper->ptr + A6XX_CD_DATA_OFFSET,
dumper            657 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		struct a6xx_crashdumper *dumper)
dumper            660 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	u64 *in = dumper->ptr;
dumper            661 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	u64 out = dumper->iova + A6XX_CD_DATA_OFFSET;
dumper            682 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	if (a6xx_crashdumper_run(gpu, dumper))
dumper            686 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	obj->data = state_kmemdup(a6xx_state, dumper->ptr + A6XX_CD_DATA_OFFSET,
dumper            775 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		struct a6xx_crashdumper *dumper)
dumper            799 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 			dumper);
dumper            805 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 			dumper);
dumper            867 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	struct a6xx_crashdumper dumper = { 0 };
dumper            891 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 	if (!a6xx_crashdumper_init(gpu, &dumper)) {
dumper            892 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		a6xx_get_registers(gpu, a6xx_state, &dumper);
dumper            893 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		a6xx_get_shaders(gpu, a6xx_state, &dumper);
dumper            894 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		a6xx_get_clusters(gpu, a6xx_state, &dumper);
dumper            895 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		a6xx_get_dbgahb_clusters(gpu, a6xx_state, &dumper);
dumper            897 drivers/gpu/drm/msm/adreno/a6xx_gpu_state.c 		msm_gem_kernel_put(dumper.bo, gpu->aspace, true);
dumper           1295 drivers/hv/vmbus_drv.c static void hv_kmsg_dump(struct kmsg_dumper *dumper,
dumper           1311 drivers/hv/vmbus_drv.c 	kmsg_dump_get_buffer(dumper, true, hv_panic_page, PAGE_SIZE,
dumper            269 drivers/mtd/mtdoops.c static void mtdoops_do_dump(struct kmsg_dumper *dumper,
dumper            272 drivers/mtd/mtdoops.c 	struct mtdoops_context *cxt = container_of(dumper,
dumper            279 drivers/mtd/mtdoops.c 	kmsg_dump_get_buffer(dumper, true, cxt->oops_buf + MTDOOPS_HEADER_SIZE,
dumper           1809 fs/binfmt_elf.c 	for (ct = &dump_task->mm->core_state->dumper; ct; ct = ct->next) {
dumper           2019 fs/binfmt_elf.c 	for (ct = current->mm->core_state->dumper.next;
dumper           1612 fs/binfmt_elf_fdpic.c 	for (ct = current->mm->core_state->dumper.next;
dumper            445 fs/coredump.c  	core_state->dumper.task = tsk;
dumper            446 fs/coredump.c  	core_state->dumper.next = NULL;
dumper            466 fs/coredump.c  		ptr = core_state->dumper.next;
dumper            488 fs/coredump.c  	next = mm->core_state->dumper.next;
dumper            388 fs/pstore/platform.c static void pstore_dump(struct kmsg_dumper *dumper,
dumper            441 fs/pstore/platform.c 		if (!kmsg_dump_get_buffer(dumper, true, dst + header_size,
dumper             43 include/linux/kmsg_dump.h 	void (*dump)(struct kmsg_dumper *dumper, enum kmsg_dump_reason reason);
dumper             58 include/linux/kmsg_dump.h bool kmsg_dump_get_line_nolock(struct kmsg_dumper *dumper, bool syslog,
dumper             61 include/linux/kmsg_dump.h bool kmsg_dump_get_line(struct kmsg_dumper *dumper, bool syslog,
dumper             64 include/linux/kmsg_dump.h bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
dumper             67 include/linux/kmsg_dump.h void kmsg_dump_rewind_nolock(struct kmsg_dumper *dumper);
dumper             69 include/linux/kmsg_dump.h void kmsg_dump_rewind(struct kmsg_dumper *dumper);
dumper             71 include/linux/kmsg_dump.h int kmsg_dump_register(struct kmsg_dumper *dumper);
dumper             73 include/linux/kmsg_dump.h int kmsg_dump_unregister(struct kmsg_dumper *dumper);
dumper             79 include/linux/kmsg_dump.h static inline bool kmsg_dump_get_line_nolock(struct kmsg_dumper *dumper,
dumper             86 include/linux/kmsg_dump.h static inline bool kmsg_dump_get_line(struct kmsg_dumper *dumper, bool syslog,
dumper             92 include/linux/kmsg_dump.h static inline bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
dumper             98 include/linux/kmsg_dump.h static inline void kmsg_dump_rewind_nolock(struct kmsg_dumper *dumper)
dumper            102 include/linux/kmsg_dump.h static inline void kmsg_dump_rewind(struct kmsg_dumper *dumper)
dumper            106 include/linux/kmsg_dump.h static inline int kmsg_dump_register(struct kmsg_dumper *dumper)
dumper            111 include/linux/kmsg_dump.h static inline int kmsg_dump_unregister(struct kmsg_dumper *dumper)
dumper            365 include/linux/mm_types.h 	struct core_thread dumper;
dumper           2100 kernel/debug/kdb/kdb_main.c 	struct kmsg_dumper dumper = { .active = 1 };
dumper           2125 kernel/debug/kdb/kdb_main.c 	kmsg_dump_rewind_nolock(&dumper);
dumper           2126 kernel/debug/kdb/kdb_main.c 	while (kmsg_dump_get_line_nolock(&dumper, 1, NULL, 0, NULL))
dumper           2158 kernel/debug/kdb/kdb_main.c 	kmsg_dump_rewind_nolock(&dumper);
dumper           2159 kernel/debug/kdb/kdb_main.c 	while (kmsg_dump_get_line_nolock(&dumper, 1, buf, sizeof(buf), &len)) {
dumper            459 kernel/exit.c  		self.next = xchg(&core_state->dumper.next, &self);
dumper           3088 kernel/printk/printk.c int kmsg_dump_register(struct kmsg_dumper *dumper)
dumper           3094 kernel/printk/printk.c 	if (!dumper->dump)
dumper           3099 kernel/printk/printk.c 	if (!dumper->registered) {
dumper           3100 kernel/printk/printk.c 		dumper->registered = 1;
dumper           3101 kernel/printk/printk.c 		list_add_tail_rcu(&dumper->list, &dump_list);
dumper           3117 kernel/printk/printk.c int kmsg_dump_unregister(struct kmsg_dumper *dumper)
dumper           3123 kernel/printk/printk.c 	if (dumper->registered) {
dumper           3124 kernel/printk/printk.c 		dumper->registered = 0;
dumper           3125 kernel/printk/printk.c 		list_del_rcu(&dumper->list);
dumper           3148 kernel/printk/printk.c 	struct kmsg_dumper *dumper;
dumper           3155 kernel/printk/printk.c 	list_for_each_entry_rcu(dumper, &dump_list, list) {
dumper           3156 kernel/printk/printk.c 		if (dumper->max_reason && reason > dumper->max_reason)
dumper           3160 kernel/printk/printk.c 		dumper->active = true;
dumper           3163 kernel/printk/printk.c 		dumper->cur_seq = clear_seq;
dumper           3164 kernel/printk/printk.c 		dumper->cur_idx = clear_idx;
dumper           3165 kernel/printk/printk.c 		dumper->next_seq = log_next_seq;
dumper           3166 kernel/printk/printk.c 		dumper->next_idx = log_next_idx;
dumper           3170 kernel/printk/printk.c 		dumper->dump(dumper, reason);
dumper           3173 kernel/printk/printk.c 		dumper->active = false;
dumper           3197 kernel/printk/printk.c bool kmsg_dump_get_line_nolock(struct kmsg_dumper *dumper, bool syslog,
dumper           3204 kernel/printk/printk.c 	if (!dumper->active)
dumper           3207 kernel/printk/printk.c 	if (dumper->cur_seq < log_first_seq) {
dumper           3209 kernel/printk/printk.c 		dumper->cur_seq = log_first_seq;
dumper           3210 kernel/printk/printk.c 		dumper->cur_idx = log_first_idx;
dumper           3214 kernel/printk/printk.c 	if (dumper->cur_seq >= log_next_seq)
dumper           3217 kernel/printk/printk.c 	msg = log_from_idx(dumper->cur_idx);
dumper           3220 kernel/printk/printk.c 	dumper->cur_idx = log_next(dumper->cur_idx);
dumper           3221 kernel/printk/printk.c 	dumper->cur_seq++;
dumper           3246 kernel/printk/printk.c bool kmsg_dump_get_line(struct kmsg_dumper *dumper, bool syslog,
dumper           3253 kernel/printk/printk.c 	ret = kmsg_dump_get_line_nolock(dumper, syslog, line, size, len);
dumper           3279 kernel/printk/printk.c bool kmsg_dump_get_buffer(struct kmsg_dumper *dumper, bool syslog,
dumper           3291 kernel/printk/printk.c 	if (!dumper->active)
dumper           3295 kernel/printk/printk.c 	if (dumper->cur_seq < log_first_seq) {
dumper           3297 kernel/printk/printk.c 		dumper->cur_seq = log_first_seq;
dumper           3298 kernel/printk/printk.c 		dumper->cur_idx = log_first_idx;
dumper           3302 kernel/printk/printk.c 	if (dumper->cur_seq >= dumper->next_seq) {
dumper           3308 kernel/printk/printk.c 	seq = dumper->cur_seq;
dumper           3309 kernel/printk/printk.c 	idx = dumper->cur_idx;
dumper           3310 kernel/printk/printk.c 	while (seq < dumper->next_seq) {
dumper           3319 kernel/printk/printk.c 	seq = dumper->cur_seq;
dumper           3320 kernel/printk/printk.c 	idx = dumper->cur_idx;
dumper           3321 kernel/printk/printk.c 	while (l >= size && seq < dumper->next_seq) {
dumper           3334 kernel/printk/printk.c 	while (seq < dumper->next_seq) {
dumper           3342 kernel/printk/printk.c 	dumper->next_seq = next_seq;
dumper           3343 kernel/printk/printk.c 	dumper->next_idx = next_idx;
dumper           3363 kernel/printk/printk.c void kmsg_dump_rewind_nolock(struct kmsg_dumper *dumper)
dumper           3365 kernel/printk/printk.c 	dumper->cur_seq = clear_seq;
dumper           3366 kernel/printk/printk.c 	dumper->cur_idx = clear_idx;
dumper           3367 kernel/printk/printk.c 	dumper->next_seq = log_next_seq;
dumper           3368 kernel/printk/printk.c 	dumper->next_idx = log_next_idx;
dumper           3379 kernel/printk/printk.c void kmsg_dump_rewind(struct kmsg_dumper *dumper)
dumper           3384 kernel/printk/printk.c 	kmsg_dump_rewind_nolock(dumper);