bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 5/5] add setting gs/fsbase


From: Samuel Thibault
Subject: Re: [PATCH 5/5] add setting gs/fsbase
Date: Tue, 2 May 2023 09:04:17 +0200
User-agent: NeoMutt/20170609 (1.8.3)

Hello,

Sergey Bugaev, le mer. 26 avril 2023 20:33:20 +0300, a ecrit:
> ../kern/ipc_tt.c:395: retrieve_task_self_fast: Assertion
> `task->itk_self != IP_NULL' failed.panic ../kern/debug.c:103:
> Debugger: Debugger invoked, but there isn't one!
> 
> This is after typing 'quit' in bc, which calls exit () -- I had to fix
> up _hurd_exit () in glibc a little to not crash if we don't have
> _hurd_ports. From single-stepping, it seems task_terminate () works,
> as in it tears down and deallocates the kernel task_t, but then the
> syscall (which task_terminate is) just returns back to userspace to
> the now-nonexistent task, and it keeps running. It then calls another
> syscall and that one breaks with the assertion above.
> 
> You should be able to reproduce this without glibc by just calling
> task_terminate (mach_task_self ()).

I don't see any issue on 32bit gnumach:

$ ./test
Killed

Perhaps with is only with 64bit gnumach, with the AST questions, I see
notably thread_terminate that in the thread==cur_thread case,
AST_TERMINATE is used.

Samuel



reply via email to

[Prev in Thread] Current Thread [Next in Thread]