LWN: Comments on "A disagreement over get_mm_exe_file()" https://lwn.net/Articles/873066/ This is a special feed containing comments posted to the individual LWN article titled "A disagreement over get_mm_exe_file()". en-us Fri, 05 Sep 2025 11:50:51 +0000 Fri, 05 Sep 2025 11:50:51 +0000 https://www.rssboard.org/rss-specification lwn@lwn.net A disagreement over get_mm_exe_file() https://lwn.net/Articles/874190/ https://lwn.net/Articles/874190/ polyp <div class="FormattedComment"> I think the developer, which seems experienced, should know better than to push for a patch this stupid. I mean, come on, changing the behavior of a driver based on the name of the executable? In the mainline kernel. That&#x27;s just beyond crazy....<br> </div> Thu, 28 Oct 2021 09:30:38 +0000 Shocked at Hellwig’s behavior https://lwn.net/Articles/874166/ https://lwn.net/Articles/874166/ Wol <div class="FormattedComment"> All it needs is for Linus to weigh in with a &quot;what were you thinking about&quot; flame.<br> <p> But it probably does need Linus to weigh in and say &quot;cut this stuff out!&quot; A few Linus fireballs and that would almost certainly do the trick ...<br> <p> Cheers,<br> Wol<br> </div> Wed, 27 Oct 2021 18:45:08 +0000 Shocked at Hellwig’s behavior https://lwn.net/Articles/874161/ https://lwn.net/Articles/874161/ nilsmeyer <div class="FormattedComment"> I think the public nature of it all can cause it to spiral quickly since both are &quot;performing&quot; in frot of an audience. <br> </div> Wed, 27 Oct 2021 17:37:02 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873510/ https://lwn.net/Articles/873510/ blackwood <div class="FormattedComment"> Just runs afoul of the kernels &quot;never a regression when only upgrading the kernel&quot; rule. Which apparently we ended up tossing in here because the solution is too awful to merge or something like that.<br> <p> In userspace (well mesa3d) we do this all properly with quirk options and separate config file that matches on binaries and a few other things. And we ship a default config file with known necessary quirks.<br> </div> Wed, 20 Oct 2021 21:27:04 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873496/ https://lwn.net/Articles/873496/ mjg59 <div class="FormattedComment"> How about a more general solution - provide a DRM-level sysfs interface that allows process name/quirk pairs to be added at runtime and then just make it a userland problem?<br> </div> Wed, 20 Oct 2021 19:15:03 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873489/ https://lwn.net/Articles/873489/ mfuzzey <div class="FormattedComment"> Is the new (cros carries the patch) solution that bad?<br> <p> It should only be temporary until cros can fix their user space code.<br> <p> Also cros is a full OS with their own Linux tree so it&#x27;s already set up to handle kernel patches.<br> <p> Agreed that out of tree patches aren&#x27;t good but when they&#x27;re temporary like this I think that&#x27;s better than polluting the upstream kernel indefinitely.<br> <p> </div> Wed, 20 Oct 2021 18:24:48 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873470/ https://lwn.net/Articles/873470/ blackwood <div class="FormattedComment"> It was accepted because we discussed it on irc. It is a terrible option, but also it&#x27;s a least terrible option if you want upstream to both Just Work everywhere as much as possible, and also not block drivers from not being able to enable features.<br> <p> The solution is now that we force cros to carry more downstream patches, and there was just a talk at lpc about how that&#x27;s not a great thing for anyone involved.<br> <p> Occasionally real world engineering just sucks.<br> </div> Wed, 20 Oct 2021 15:36:08 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873469/ https://lwn.net/Articles/873469/ blackwood <div class="FormattedComment"> It would neither affect your chrome or chromium browser nor your electron apps, because they are not compositors, and do not run on top of the kernel modesetting driver directly.<br> <p> They do use the render side of drm, but that on is not quirked. Only when you have a chrome process that&#x27;s actually doing kms compositing will any hack kick in, and in that case you do want it. So if you look at it it&#x27;s by far not as silly as it looks at first glance, and there&#x27;s not actually any known bad impact where we do not want it.<br> </div> Wed, 20 Oct 2021 15:33:03 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873404/ https://lwn.net/Articles/873404/ immibis <div class="FormattedComment"> As you can see, they are stored in some kind of database, not just hard-coded willy-nilly. <br> </div> Wed, 20 Oct 2021 10:31:40 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873402/ https://lwn.net/Articles/873402/ excors <div class="FormattedComment"> I suspect Windows has many different ways of managing compatibility hacks, but one of those ways is basically comparing the executable name. See HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers in the registry - mine has a few entries for applications I&#x27;ve installed, like &quot;C:\Program Files (x86)\Steam\steamapps\common\Quake\Glquake.exe&quot;=DWM8And16BitMitigation (&quot;The fix offers mitigation for applications that work in 8/16-bit display color mode because these legacy color modes are not supported in Windows 8&quot; according to <a href="https://docs.microsoft.com/en-us/windows/deployment/planning/compatibility-fixes-for-windows-8-windows-7-and-windows-vista">https://docs.microsoft.com/en-us/windows/deployment/plann...</a>).<br> <p> There&#x27;s also some that appear to be pre-set by Windows (since they&#x27;re for applications I&#x27;ve never used), e.g. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\PenService lists a bunch of executables like &quot;iexplore.exe&quot; and &quot;photoshop.exe&quot;, and then sets the DisableFlickGestureDetection flag on (I think) application-specific window class names.<br> </div> Wed, 20 Oct 2021 10:00:02 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873400/ https://lwn.net/Articles/873400/ immibis <div class="FormattedComment"> I suspect Windows has a more sophisticated way of managing compatibility hacks than !strcmp(process-&gt;exe_file-&gt;name, &quot;chrome&quot;)<br> </div> Wed, 20 Oct 2021 08:48:55 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873397/ https://lwn.net/Articles/873397/ taladar <div class="FormattedComment"> It would likely also affect all those electron and similar apps embedding chrome. Matching the binary name just seems like a really, really bad solution for Chrome bugs in particular, even worse than in general.<br> </div> Wed, 20 Oct 2021 08:34:11 +0000 Shocked at Hellwig’s behavior https://lwn.net/Articles/873392/ https://lwn.net/Articles/873392/ pbonzini The kind of depressing part is that it shouldn't be too hard. Like in the first message of the thread you just s/utter&#160;crap/bad&#160;ideas/ and you've done 99% of the job. <p>That said, asking "Have you heard about the kernel no-regression rule?" sarcastically is not respectful either, and like most sarcasm it just comes across as silly/petty to me. So it's not like either side has an especially high ground. Wed, 20 Oct 2021 06:16:24 +0000 CoC enforcement https://lwn.net/Articles/873390/ https://lwn.net/Articles/873390/ lkundrak <div class="FormattedComment"> Exactly my thoughts. If anything, it seems to me that the person in question needs help.<br> </div> Wed, 20 Oct 2021 05:25:22 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873377/ https://lwn.net/Articles/873377/ pizza <div class="FormattedComment"> It was a workaround in Windows 3.1 for the DOS version of Sim City.<br> <p> <a href="https://www.joelonsoftware.com/2004/06/13/how-microsoft-lost-the-api-war/">https://www.joelonsoftware.com/2004/06/13/how-microsoft-l...</a><br> </div> Wed, 20 Oct 2021 01:46:58 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873376/ https://lwn.net/Articles/873376/ ilammy <div class="FormattedComment"> This reminds me of the story how old Windows had a hack in its kernel to avoid Age of Empires game crash, also specifically disabling some paging thing for AoE binaries.<br> <p> (Side note: I find it very sad that I was not able to find the source of this story because all search engine outputs are polluted all sorts of irrelevant things.)<br> </div> Wed, 20 Oct 2021 01:25:52 +0000 Shocked at Hellwig’s behavior https://lwn.net/Articles/873373/ https://lwn.net/Articles/873373/ josefbacik <div class="FormattedComment"> <font class="QuotedText">&gt; Even if this is the widespread response — does t the community want more people to align on what is “right” over time? If so, should teaching, writing policy documentation that can be referenced, and otherwise acting like effective engineering leaders be preferred?</font><br> <p> Yes exactly, that is the ideal outcome. My point is there&#x27;s no pressure mechanism to push the community in that direction, the majority of senior developers and maintainers are comfortable with the status quo. I want it to change, but I&#x27;m tired and simply don&#x27;t want to it anymore, and I suspect I&#x27;m not alone in that, so the end result will be more of the same for the foreseeable future.<br> </div> Wed, 20 Oct 2021 00:59:04 +0000 Shocked at Hellwig’s behavior https://lwn.net/Articles/873367/ https://lwn.net/Articles/873367/ ms-tg <div class="FormattedComment"> <font class="QuotedText">&gt; There really isn&#x27;t anything to be done. The CoC doesn&#x27;t mean anything if there aren&#x27;t consequences to actions. The common refrain is &quot;this wasn&#x27;t OK, but X was right.&quot; Because in the end being right is the thing the community cares about the most, not about being professional.</font><br> <p> Even if this is the widespread response — does t the community want more people to align on what is “right” over time? If so, should teaching, writing policy documentation that can be referenced, and otherwise acting like effective engineering leaders be preferred?<br> </div> Tue, 19 Oct 2021 23:26:21 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873356/ https://lwn.net/Articles/873356/ atnot <div class="FormattedComment"> I&#x27;m sure it&#x27;ll be a relief for prospective kernel developers to learn that they will not have abuse hurled at them for submitting well intentioned patches.<br> <p> ...that is of course, unless someone somewhere suddenly arbitrarily decides that it&#x27;s acceptable and also they deserve it.<br> </div> Tue, 19 Oct 2021 20:58:45 +0000 Shocked at Hellwig’s behavior https://lwn.net/Articles/873353/ https://lwn.net/Articles/873353/ josefbacik <div class="FormattedComment"> There really isn&#x27;t anything to be done. The CoC doesn&#x27;t mean anything if there aren&#x27;t consequences to actions. The common refrain is &quot;this wasn&#x27;t OK, but X was right.&quot; Because in the end being right is the thing the community cares about the most, not about being professional.<br> <p> And what are you going to do? Tell one of the most prolific developers to go away for X time and think about what they&#x27;ve done? This is a common attitude for a lot of the most senior maintainers in the community, there doesn&#x27;t appear to be any will to have anything real come from violating the CoC. And even if there was punishment, what&#x27;s to say that changes behavior? Changing the behavior and culture is far more valuable than simply temporarily banning people and hoping they change their ways on their own, but a much harder thing to accomplish.<br> <p> To answer your last question, they wouldn&#x27;t. Even people like me who have been around for a long time are asking themselves the same question, and for myself have decided that I&#x27;m going to step away after I wrap up a few outstanding projects. The cost of dealing with the more hard to deal with members of this community is becoming too high of a price to pay. There&#x27;s always new blood that will come in and take up space, but lots that just won&#x27;t engage in the first place, and a few that will decide they&#x27;re done and go do something else.<br> </div> Tue, 19 Oct 2021 20:26:57 +0000 Shocked at Hellwig’s behavior https://lwn.net/Articles/873335/ https://lwn.net/Articles/873335/ ms-tg <div class="FormattedComment"> If I didn’t know this was real, I might have thought this was comedy exaggerated for effect, to show how horrible Linux maintainers behave.<br> <p> What can be done? I was under the impression that Linus was committed to protecting the community from this sort of behavior where, instead of teaching or documenting a policy decision to be referenced in the future, or laying out a case to build alignment around avoiding unintended consequences, the maintainer repeatedly attacked the person.<br> <p> The contrast to workplaces, where this would never be tolerated, is shocking to me in 2021.<br> <p> Why would anyone willingly subject themselves to an engineering culture where this is tolerated?<br> </div> Tue, 19 Oct 2021 17:40:53 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873327/ https://lwn.net/Articles/873327/ ddevault <div class="FormattedComment"> Yeah, that is a fair thing to be concerned about.<br> </div> Tue, 19 Oct 2021 16:01:17 +0000 CoC enforcement https://lwn.net/Articles/873324/ https://lwn.net/Articles/873324/ pbonzini <div class="FormattedComment"> It&#x27;s not a great example, to be honest. It paints the CoC more as a tool to avoid annoyances, than as a way to improve the community overall.<br> </div> Tue, 19 Oct 2021 15:56:25 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873323/ https://lwn.net/Articles/873323/ pbonzini <div class="FormattedComment"> Sure, I&#x27;m all for improved language and attitude, though in this case improvements could have been made from both sides. From a purely technical point of view, I still wonder how the patch could have been accepted by the maintainers, and if it would have been caught before it reached linux.git.<br> <p> <p> </div> Tue, 19 Oct 2021 15:52:15 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873280/ https://lwn.net/Articles/873280/ ddevault <div class="FormattedComment"> Like I said upfront, Simon&#x27;s patch was not great. That&#x27;s no excuse for abusive language on the mailing list.<br> </div> Tue, 19 Oct 2021 13:59:35 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873278/ https://lwn.net/Articles/873278/ pbonzini <blockquote>&gt; was deemed sufficient for inclusion in drm-next</blockquote> <p>And I'm surprised about that, because Christoph makes good points: "Independent of that a check for a specific program as the callers makes no sense whatsoever as a given program and change over time. (<a href="https://lwn.net/ml/linux-next/20211011074316.GA10882@lst.de/">here</a>) You cement in a mapping of an executable name to map to what you consider a "bug" without any way to fix it up. Which is even worse for a something fast moving like chrome/chromeos which will eventually gets its act together and fix things while you'll keep a weird feature mismatch just for it around forever. (<a href="https://lwn.net/ml/linux-next/20211011075125.GA11098@lst.de/">here</a>)". <p>We can discuss the form of his complaint, but I honestly do agree with him that this should not have made it past the maintainers. Tue, 19 Oct 2021 13:56:14 +0000 CoC enforcement https://lwn.net/Articles/873279/ https://lwn.net/Articles/873279/ corbet It's rare, but it does occasionally happen; here's <a href="https://lore.kernel.org/lkml/1f5fb434-ca4b-bc10-92c4-411087ddf717@linuxfoundation.org/">an example</a>. Tue, 19 Oct 2021 13:53:20 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873276/ https://lwn.net/Articles/873276/ ttuttle <div class="FormattedComment"> Chrome adding that patch to their local kernel is absolutely an option! I just think it doesn&#x27;t belong upstream at all.<br> </div> Tue, 19 Oct 2021 13:36:18 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873274/ https://lwn.net/Articles/873274/ hwentland <div class="FormattedComment"> Slide 8 if anyone is interested in the fd.o CoC transparency report: <a href="https://indico.freedesktop.org/event/1/contributions/24/attachments/33/44/State%20of%20the%20X.org%20-%20XDC%202021.pdf">https://indico.freedesktop.org/event/1/contributions/24/a...</a><br> </div> Tue, 19 Oct 2021 13:25:38 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873273/ https://lwn.net/Articles/873273/ hwentland <div class="FormattedComment"> <font class="QuotedText">&gt; if Chrome OS tries to enable the cursor plane when the overlay plane is being used incompatibly, refuse to do it</font><br> <p> Doing so crashes the ChromeOS compositor, which isn&#x27;t nice to do and something we&#x27;d like to avoid. Hence, Simon&#x27;s patch.<br> <p> I wasn&#x27;t entirely happy with Simon&#x27;s patch but it fixed an awkward issue that was specific to AMD HW which is why I decided to take it. Carrying the patch in the Chrome tree until its compositor is fixed seems to be the best solution.<br> </div> Tue, 19 Oct 2021 13:20:54 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873268/ https://lwn.net/Articles/873268/ blackwood <div class="FormattedComment"> fd.o does, but there&#x27;s some obvious limits on what that achieves of course.<br> </div> Tue, 19 Oct 2021 10:29:57 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873261/ https://lwn.net/Articles/873261/ pbonzini <div class="FormattedComment"> I am not sure I will ever see the Linux code of conduct enforced...<br> </div> Tue, 19 Oct 2021 06:25:14 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873247/ https://lwn.net/Articles/873247/ airlied <div class="FormattedComment"> The problem being with I_AM_NOT_BROKEN ioctls is that how do you fix something after the horse has bolted.<br> <p> Revert early works fine if you catch misbehaviour early, if you don&#x27;t then you have to fall back to more extreme measures.<br> <p> We have one in the drm where X.org used an API in a really bad way a year or two after the API has been deployed. We ended up putting a new API trapdoor for future X.org but for current X.org matching the name was the least offensive answer. Invariable people start adding heuristics to &quot;detect&quot; behaviour patterns which often end up worse.<br> <p> That and hch was being an asshole for no reason. He knows he was, and we do have a CoC.<br> </div> Mon, 18 Oct 2021 20:32:30 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873245/ https://lwn.net/Articles/873245/ flussence <div class="FormattedComment"> It sounds like there&#x27;s a whole comedy of errors here...<br> <p> 1. Google sucks. Fix your own trillion-dollar software!<br> <p> 2. I&#x27;m speaking out of line here, but a kernel-side GPU driver sniffing a browser user-agent to hide bugs is one of the most insane things I&#x27;ve ever seen. What&#x27;s more is there already are hundreds of I_AM{_NOT,}_BROKEN ioctl special cases for things like this, but they belong in /usr/share/drirc.d/, not /usr/src/linux/.<br> <p> 3. The fact that it&#x27;s still possible to wedge the GPU from userspace at all, let alone through exposed APIs. If the old API is that dangerous to expose in parallel then just make it a wrapper or emulation layer for the new one, and make the legacy users swallow any performance hit. It&#x27;s not like anyone will care about the weight of a few thousand extra lines of workarounds in *the amdgpu driver*.<br> </div> Mon, 18 Oct 2021 19:46:30 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873240/ https://lwn.net/Articles/873240/ ddevault <div class="FormattedComment"> Flames are simply inappropriate, unconditionally. The conduct policy is not contingent on the quality of the patch.<br> </div> Mon, 18 Oct 2021 18:01:56 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873234/ https://lwn.net/Articles/873234/ Wol <div class="FormattedComment"> Hmm...<br> <p> If it&#x27;s a well-reviewed patch, then yes flames *are* inappropriate ...<br> <p> Cheers,<br> Wol<br> </div> Mon, 18 Oct 2021 17:54:21 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873228/ https://lwn.net/Articles/873228/ ddevault <div class="FormattedComment"> I don&#x27;t think it really matters, but Ser is an experienced hacker outside of the kernel domain, an expert in the Linux graphics stack, and has contributed 80 patches to Linux to date. But like all of his patches, this one was reviewed by several other people and discussed at length and was deemed sufficient for inclusion in drm-next, only to run into cross-tree problems which no one could have foreseen. It was only when it inconvenienced Christoph that he felt that it was appropriate to levy abuse at Simon.<br> </div> Mon, 18 Oct 2021 17:19:44 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873227/ https://lwn.net/Articles/873227/ Wol <div class="FormattedComment"> Is Ser a new hacker, or an old hand who should know better?<br> <p> Linus has learnt that flames are not wise in any circumstances, but most of his were aimed at lieutenants who should have known better.<br> <p> Christoph, well I think I&#x27;ve had the odd run-in with him, and he might not yet have learnt that lesson ...<br> <p> Cheers,<br> Wol<br> </div> Mon, 18 Oct 2021 17:15:30 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873226/ https://lwn.net/Articles/873226/ ddevault <div class="FormattedComment"> I wasn&#x27;t in love with Ser&#x27;s patch, but the response from Hellwig was totally uncalled for.<br> <p> Good opportunity to remind everyone that there&#x27;s a code of conduct for Linux now:<br> <p> <a href="https://www.kernel.org/code-of-conduct.html">https://www.kernel.org/code-of-conduct.html</a><br> <p> The old days of intelligent jerks is not acceptable in modern kernel development. Kernel hackers don&#x27;t spring forth from the earth ready to write perfect patches - novices become experts only with good mentoring, not with berating and rude comments.<br> </div> Mon, 18 Oct 2021 16:54:26 +0000 A disagreement over get_mm_exe_file() https://lwn.net/Articles/873225/ https://lwn.net/Articles/873225/ ttuttle <div class="FormattedComment"> This is rather trivially broken, as &quot;chromium&quot; on Chromium OS may exhibit the same problem and won&#x27;t be recognized as quirky.<br> <p> I&#x27;d expect the driver to implement something of a finer-grained interlock -- if Chrome OS tries to enable the cursor plane when the overlay plane is being used incompatibly, refuse to do it! If an app is using the two APIs at once, it gets to keep both pieces when they interact poorly.<br> <p> The resulting quirk should then be implemented in Chrome OS, not in the kernel -- maybe that means checking the driver name, testing to see if the cursor plane can be enabled on top of a non-fullscreen overlay plane, and avoiding use of the overlay plane if so.<br> </div> Mon, 18 Oct 2021 15:37:36 +0000