Documentation doesn't mention OFD
https://hackage.haskell.org/package/base-4.21.0.0/docs/GHC-IO-Handle-Lock.html#v:hLock says
The implementation uses LockFileEx on Windows and flock otherwise, hence all of their caveats also apply here.
Which is factually false. On linux the OFD locking is used, which is different from flock.