On 06/01, Dmitry Safonov wrote:
>
> Note, that this will work only if application has changed it's CS.

So, suppose it changes it's CS and crashes,

> If the application does 32-bit syscall with __USER_CS, ptrace
> @@ -1355,7 +1355,7 @@ void update_regset_xstate_info(unsigned int size, u64 
> xstate_mask)
>  const struct user_regset_view *task_user_regset_view(struct task_struct 
> *task)
>  {
>  #ifdef CONFIG_IA32_EMULATION
> -     if (test_tsk_thread_flag(task, TIF_IA32))
> +     if (!user_64bit_mode(task_pt_regs(task)))
>  #endif

then coredump will do fill_elf_header(view->e_machine) and use EM_X86_64
instead of EM_386, or vice versa...

I simply can't understand is this better or worse, I guess gdb or any
other tool which looks at this coredump will be confused anyway.

Oleg.

Reply via email to