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
F109888990: D31254.diff
Mon, Feb 10, 7:54 PM
Unknown Object (File)
Sat, Feb 8, 12:00 PM
Unknown Object (File)
Sun, Feb 2, 11:57 PM
Unknown Object (File)
Fri, Jan 24, 7:13 PM
Unknown Object (File)
Jan 10 2025, 2:53 AM
Unknown Object (File)
Dec 14 2024, 1:48 PM
Unknown Object (File)
Nov 26 2024, 7:24 PM
Unknown Object (File)
Nov 14 2024, 1:06 PM
Subscribers

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 40593
Build 37482: arc lint + arc unit

Event Timeline

kib added inline comments.
sys/compat/linux/linux_futex.c
1001

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
1001

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
1001

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.