On 05.03.21 17:04, Theodore Ts'o wrote:
It is unique to mqeue inode, because the control flow goes through ipc/mqueue.c where almost always the i_rwsem is taken.On Fri, Mar 05, 2021 at 04:35:47PM +0100, Alexander Lochmann wrote:On 05.03.21 16:18, Theodore Ts'o wrote:1) I don't see where i_opflags is being read in ipc/mqueue.c at all, either with or without i_rwsem.It is read in fs/dcache.cSo why is this unique to the mqueue inode then? It might be helpful to have explicit call stacks in the e-mail, in text form, when you resend to LKML.
Hence, we see more memory accesses to an mqueue inode with the i_rwsem. The i_lock is less often hold compared to the i_rwsem.We conclude the i_rwsem is needed. So it might not be a contradiction at all. It rather could be a flaw in our approach. :-/
Besides from our current discussion: Does the i_lock protect i_opflags for both reading and writing? Cheers, Alex
That's because the HTML file is ***huge*** (1.7Meg), and I'm having trouble with my browser properly rendering it. In any case, the html claims to be showing the counter examples and I'm still stuck on the *example*? Cheers, - Ted
-- Technische Universität Dortmund Alexander Lochmann PGP key: 0xBC3EF6FD Otto-Hahn-Str. 16 phone: +49.231.7556141 D-44227 Dortmund fax: +49.231.7556116 http://ess.cs.tu-dortmund.de/Staff/al
Attachment:
OpenPGP_signature
Description: OpenPGP digital signature