[Devel] [RFC PATCH vz9 v6 14/62] dm-ploop: move preparations of pios into the caller from worker
Alexander Atanasov
alexander.atanasov at virtuozzo.com
Fri Dec 13 14:01:02 MSK 2024
On 13.12.24 11:21, Alexey Kuznetsov wrote:
> [Some people who received this message don't often get email from alexey.n.kuznetsov at gmail.com. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]
>
> Hello!
>
> Frankly, I would seriosly consider dropping off llist. It is just an opinion.
>
> This braindead construct is a lie, it is _not_ lockless at all, it
> uses the slowest possible
> way of synchronization (cmpxchg) and still it has damn complicated set
> of usage rules.
> Personally I would never use it. Either crystal clear and not less
> efficient dumb construct:
>
> struct lockedlist {
> spinlock_t lock;
> struct hlist_head list;
> }
>
> or when I am ready to go berserk, something really lockless, without cmpxchg and
> with full *mb() nightmare.
the *mb() Andrey pointed out is a leftover from a different thing not
related to llist.
There might be better options but llist was the way to do small steps
forward as requested. There are a lot of things that can be improved
besides lists. I will keep this in mind when doing qcow2.
--
Regards,
Alexander Atanasov
More information about the Devel
mailing list