Page MenuHomeFreeBSD

linux(4): Replace casuword32 by casueword32 in handle_futex_death().
ClosedPublic

Authored by dchagin on Jul 21 2021, 7:40 AM.
Tags
None
Referenced Files
Unknown Object (File)
Oct 8 2024, 3:39 AM
Unknown Object (File)
Oct 5 2024, 3:04 AM
Unknown Object (File)
Oct 5 2024, 3:04 AM
Unknown Object (File)
Oct 5 2024, 3:04 AM
Unknown Object (File)
Oct 5 2024, 3:04 AM
Unknown Object (File)
Oct 5 2024, 2:42 AM
Unknown Object (File)
Oct 3 2024, 3:22 PM
Unknown Object (File)
Oct 2 2024, 3:54 AM
Subscribers

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

kib added inline comments.
sys/compat/linux/linux_futex.c
1004–1005

This is fine as the step, but please look at 30b3018d48e4441083b483

This revision is now accepted and ready to land.Jul 21 2021, 8:05 AM
sys/compat/linux/linux_futex.c
1004–1005

sure, did I understand correctly that on ll/sc architectures casueword can fails as there are two operations,
and exceptional events between this operations can lead the second operation (store-conditional) to spuriously fail.
So before repeating we need a check for stops etc...?
If so, I need to revise all of new futex code ))

sys/compat/linux/linux_futex.c
1004–1005

Right. Generally casueword is allowed to spuriously fail on all arches, same as cmpset/fcmpset.

Follow the r349951 (30b3018d), add check to react to stops and requests
to terminate between retries.

This revision now requires review to proceed.Jul 21 2021, 7:06 PM
kib added inline comments.
sys/compat/linux/linux_futex.c
1002

error != 0

This revision is now accepted and ready to land.Jul 21 2021, 7:36 PM
This revision was automatically updated to reflect the committed changes.