https://bugs.winehq.org/show_bug.cgi?id=43125
--- Comment #14 from Kai Krakow kai@kaishome.de --- (In reply to Konrad Rzepecki from comment #13)
I'd like to fix this in two steps:
- Make the message less spammy: Only display the message once as long as
there are no readers in irp_queue.
I think this is not needed if you apply 2. This will require unnecessary code running at each call.
The code would be extremely simple. Spamming the message every time would be far more overhead. Have you ever compared D3D performance with spammy FIXME messages against all fixmes turned of? It's a real performance problem so such spamminess has already been fixed in many parts of Wine by the same tooling I'm planning to use.
- Degrade the message to debug log level: As far as I understand the code
and the logic behind the delivery design, having no readers for incoming reports is not an error condition. It's a warning at most, and a pretty uninteresting even unless you're debugging things.
Good idea.
I'm currently in contact with the original author of the code to see if my assumptions are right.
I wonder if this message isn't an artifact form time when this code was not placed in critical section...
I don't think there was such a time. Looking at the Git history, it's one peace of a big work all included at once. See commit 1a81022f4e6359f4d6009057db1636041eabada9: The critical section has been there with the addition of the function all at once, including the message.