[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250911043434.2897892-1-tiwei.bie@linux.dev>
Date: Thu, 11 Sep 2025 12:34:34 +0800
From: Tiwei Bie <tiwei.bie@...ux.dev>
To: johannes@...solutions.net
Cc: richard@....at,
anton.ivanov@...bridgegreys.com,
benjamin@...solutions.net,
arnd@...db.de,
linux-um@...ts.infradead.org,
linux-kernel@...r.kernel.org,
tiwei.btw@...group.com,
tiwei.bie@...ux.dev
Subject: Re: [PATCH v2 04/10] um: Turn signals_* into thread-local variables
On Wed, 10 Sep 2025 14:15:28 +0200, Johannes Berg wrote:
> On Sun, 2025-08-10 at 13:51 +0800, Tiwei Bie wrote:
> > From: Tiwei Bie <tiwei.btw@...group.com>
> >
> > Turn signals_enabled, signals_pending and signals_active into
> > thread-local variables. This enables us to control and track
> > signals independently on each CPU thread. This is a preparation
> > for adding SMP support.
>
> [...]
>
> > +static __thread int signals_enabled;
>
> How much glibc infrastructure does __thread rely on? More specifically:
> Some time ago we had a discussion about building UML as a nolibc binary,
> what would that mean for the __thread usage here?
We would need to parse TLS data (PT_TLS) from the ELF file ourselves
and properly set up TLS when creating threads using clone().
Regards,
Tiwei
Powered by blists - more mailing lists