[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <963cbbe7-8064-461e-b134-1a43e037c33a@antgroup.com>
Date: Thu, 26 Jun 2025 22:18:12 +0800
From: "Tiwei Bie" <tiwei.btw@...group.com>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Johannes Berg <johannes@...solutions.net>, linux-kernel@...r.kernel.org,
linux-um@...ts.infradead.org, Richard Weinberger <richard@....at>,
Anton Ivanov <anton.ivanov@...bridgegreys.com>
Subject: Re: [GIT PULL] uml-for-6.16-rc4
On 2025/6/26 11:48, Linus Torvalds wrote:
> On Wed, 25 Jun 2025 at 19:44, Tiwei Bie <tiwei.btw@...group.com> wrote:
>>
>> The behavior of gcc and clang differs. Clang's behavior appears to be
>> related to the volatile qualifier in arch_spinlock_t:
>
> Ahh. That kind of makes sense.
I also just noticed it today after taking a closer look.
>
> At the same time, I think clang is being stupid here. Yes, it makes
> sense to treat volatile specially in this way - just not for an
> initializer.
>
> I realize that initializers can be made to be their own data
> structures in modern C (ie taking the address of an initializer and
> using the initializer itself as an argument to a function call, for
> example), but when an initializer is used to set the value of a
> variable, the only real thing there is that variable.
That makes sense!
>
> Oh well. The patch certainly looks fine and I obviously already merged
> the pull request.
Yeah, I saw that. Thanks! :)
> It does make me go "I wonder how many other places
> clang just generates stupid code due to this".
+1.
Regards,
Tiwei
Powered by blists - more mailing lists