Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror
×
Bug Open Source Games Linux

Linus Fixes Kernel Regression Breaking Witcher 2 126

jones_supa writes There has been quite a debate around the Linux version of The Witcher 2: Assassins of Kings and the fact that it wasn't really a port. A special kind of wrapper was used to make the Windows version of the game run on Linux systems, similar to Wine. The performance on Linux systems took a hit and users felt betrayed because they thought that they would get a native port. However, after the game stopped launching properly at some point, the reason was actually found to be a Linux regression. Linus quickly took care of the issue on an unofficial Witcher 2 issue tracker on GitHub: "It looks like LDT_empty is buggy on 64-bit kernels. I suspect that the behavior was inconsistent before the tightening change and that it's now broken as a result. I'll write a patch. Serves me right for not digging all the way down the mess of macros." This one goes to the bin "don't break userspace". Linus also reminds of QA: "And maybe this is an excuse for somebody in the x86 maintainer team to try a few games on steam. They *are* likely good tests of odd behavior.."
This discussion has been archived. No new comments can be posted.

Linus Fixes Kernel Regression Breaking Witcher 2

Comments Filter:
  • by jb_nizet ( 98713 ) on Saturday January 24, 2015 @10:41AM (#48892759)
    A developer fixes a bug, and writes a comment on github.
    • A developer fixes a bug, and writes a comment on github.

      Technically he was @-mentioned (or whatever it's called nowdays), got a notification from the GitHub thread in his email and responded to it from his email. He did not write a comment on GitHub. GitHub took his reply and posted it automatically.

    • Re:Breaking news (Score:4, Informative)

      by Anonymous Coward on Saturday January 24, 2015 @11:32AM (#48893033)

      More like "Head Developer of the most famous and critical infrastructure project in the comunity personally fixes bug and takes the time to apologize, take the blame and talk to the users about it"

      Oh and it's a bug that only affects a desktop leisure piece of software rather than a big server infrastructure project (which people thik is the only thing kernel devs care about)

    • "Linus Torvalds not actually a god, news at 11!"
  • Not news (Score:5, Insightful)

    by ledow ( 319597 ) on Saturday January 24, 2015 @10:50AM (#48892815) Homepage

    Man in charge of kernel fixes kernel when it breaks.

    This isn't news. This is what happens.

    And if only MS had a similar "never break userspace" rule that applied to even the most unbelievably "casual" of software too.

    Hell, I broke four apps just going to 64-bit Windows 8 from... 32-bit Windows 8.

    And, I agree. Steam has 1/3rd of my 800 games working on Linux already. If we're not using those as a test-case, then why not? Sure, some will just be multi-platform ports from the same source but likely a lot of code will literally be new ports added just for Linux.

    Sad to say, there are probably more games in my Steam library that work natively on Linux now, then there are Windows games on there that'll work under Wine/Crossover/etc.

    • by Anonymous Coward

      "And if only MS had a similar "never break userspace" rule that applied to even the most unbelievably "casual" of software too."

      I'm not a Windows guy but this statement is bogus. Microsoft's pain is that they care so much about userspace that they'll make design fundamental decisions around keeping userspace ABIs/APIs. This means that I can often (not always, but often) run an older version of a program fine on a newer version of Windows. On the Linux, we can often rebuild the app from source and many do.

    • by aliquis ( 678370 )

      Switch to Linux on ARM and I've sure lots more of your binaries will fail.

      I'm not convinced it counts as "breaking user-space" from a kernel code perspective though.

      I don't really see how it's sad that there's more native ports than things working through a Windows environment replacement.

      • Switch to Linux on ARM and I've sure lots more of your binaries will fail.

        One of the central features of the amd64 architecture is x86 compatibility. x86 compatibility is not a feature of ARM.

        • by aliquis ( 678370 )

          I'm no expert in the area but on Linux I assume having 32 bit libraries of everything you need would solve it and in the Windows case maybe his programs are just missing out on some 32 bit library somewhere / whatever. I didn't use it early on, have no issues now, have never had any issues with it in Windows the limited amount of time I've used.

    • And if only MS had a similar "never break userspace" rule that applied to even the most unbelievably "casual" of software too.

      You mean the same Microsoft that named their next OS version Windows 10 because Windows 9 would break a number of applications that checked OS version with string comparison on the name rather than by the actual version number?

    • And if only MS had a similar "never break userspace" rule that applied to even the most unbelievably "casual" of software too.

      They used to. [joelonsoftware.com] Scroll down and check out the part about Sim City.

      • They used to. Scroll down and check out the part about Sim City.

        That's not an example of not breaking userspace by changing behavior; all the other programs which did the same thing but in a slightly different way would still fail, because they special-cased the fix. That's an example of Microsoft special-casing a critical fix to keep users on their platform, while actually breaking backwards compatibility.

        • Apparently you didn't read it at all. It was a bug in the application, not a compatibility issue. DOS did not advertise the use-after-free scenario as working, it just happened not to crash.

          Do you define dis-allowing "use after free" to be breaking backwards compatibility? Because I don't think it should be allowed at all, and they inserted a whitelist to make sure new applications would not rely on the behavior.

          This is a single example out of many, many, many special cases Microsoft implemented in order

          • Apparently you didn't read it at all. It was a bug in the application, not a compatibility issue.

            Uh, dude, that's what I said. It's a special case, just for that application. It doesn't affect other applications. It doesn't speak at all to the general attitude towards backwards compatibility because it's fucking Simcity. It's not like they added this special case for Arcade Beach Volleyball, you know, the CGA game where you were ball-shaped and you head-butted a ball over a net? One step up from Pong, for DOS. It's Simcity, you can't break Simcity.

    • by tlhIngan ( 30335 )

      And if only MS had a similar "never break userspace" rule that applied to even the most unbelievably "casual" of software too.

      Hell, I broke four apps just going to 64-bit Windows 8 from... 32-bit Windows 8.

      If that happens (and Microsoft is one of the best at not breaking userspace), WIndows development would stop overnight.

      Most developers are crap - and I'm sure "never break userspcae" is routinely violated by Linux as well, just it breaks little apps that no one knows about and someone either fixes it or c

  • by the_skywise ( 189793 ) on Saturday January 24, 2015 @11:00AM (#48892873)

    This, a thousand times this.

    The one reason that people like Steve Jobs, Walt Disney, et al made such lasting impacts on not only their companies but the world as well was not because of some great business acumen but because they fixed the problems directly. Sure, they were assholes but ultimately they cared about their products and how customers reacted to them.

    Degree milled MBA's don't understand this and would not have given this fix a second thought because a> they couldn't do it and b> the economics didn't make sense because some team would've had to be picked to go out, ascertain the problem, determine the solution which might be a larger fix than a one line change and now you're looking at potentially tens of thousands of dollars expense to fix a bug in a product that isn't even YOURS! It just don't make no economic sense and you'd get dinged and the next stockholders meeting.

    You see this in all the industries. Apple after Steve Jobs. Car manufacturers who were eventually run by "businessmen who understood the auto markets" instead of "a car geek who understood business" the entire industry turned into regurgitated pablum with a few occasional bursts of brilliance by a car geek that broke through the red tape. I worked in the consumer electronics industry and have seen first hand how once highly held and coveted products have been turned into cheap commodities by a "fresh executive team" because it's easier to sell to the masses who don't understand the finer details of a product than it is to actually push the envelope and innovate your product into the next generation. Then, when that market dies out completely because the enthusiasts don't want your product because it sucks so the masses don't want it anymore because "it's not cool", the CEOs blame the market for being fickle.

    • MBAs are the soldiers of the financial system and it doesn't matter one bit if they run their companies to the ground, because that does not hurt the system at all, in fact a failed company creates opportunities for the system to advance.

  • Linux (Score:5, Insightful)

    by phorm ( 591458 ) on Saturday January 24, 2015 @11:24AM (#48892997) Journal

    On one hand, you hear about him flaming out people who break shit in stupid ways.
    On the other, you also hear him accepting blame for not checking things properly himself: "Serves me right for not digging all the way down the mess of macros"

    Whatever his eccentricities, he sounds quite fair to me.

    • by phorm ( 591458 )

      erm, "Linus" not "Linux"

      I see to have a macro built into my muscle-memory on that one :-)

      • by Anonymous Coward

        Serves you right for not digging all the way down the mess of macros ;-)

    • I was thinking the same thing: why isn't Linus spewing his usual foul, withering, tirade at the guy who just broke something? Heck, maybe he even deserves a second meta-tirade for not providing the first one.

      I recently saw a series of video interviews on YouTube that he gave. In light of the email tirades I've seen from him, it seemed remarkable that he spoke so quietly and thoughtfully in that context. And not a single curse word was uttered. Kindda makes you wonder whether his wife and kids get Dr. Je

    • Re:Linux (Score:5, Informative)

      by phantomfive ( 622387 ) on Saturday January 24, 2015 @12:52PM (#48893587) Journal
      It's worth mentioning, he also wouldn't flame someone for breaking the kernel like this. The time he did flame someone for a similar bug, it was because the developer not only broke userland, but also began to argue that he was correct to do so. That is when he got flamed.
      • by Kjella ( 173770 )

        It's worth mentioning, he also wouldn't flame someone for breaking the kernel like this. The time he did flame someone for a similar bug, it was because the developer not only broke userland, but also began to argue that he was correct to do so. That is when he got flamed.

        This. Linus is quite clear that breaking userspace is a bug and they've already added a patch that would restore the functionality, while still blocking possible exploits - which was why they broke it in the first place otherwise they'd revert. It's tough love though, if you make a bad API - and we know that happens - you're stuck with it practically forever.

  • by Anonymous Coward

    Systemd folks take note.

    Don't break my user space with your selfish ideals of progress.

  • by johndoe42 ( 179131 ) on Saturday January 24, 2015 @04:05PM (#48894721)
    The fix and half the quotes attributed to Linus were from me. Apparently people can't figure out who posted which GitHub comment.
    • I believe that github uses the reply email address to attribute comments. eg github sent the message to "@torvalds" and anyone who replies to it must be "@torvalds". I'm guessing both of you "Replied All" and included the same github email as recipient.

FORTUNE'S FUN FACTS TO KNOW AND TELL: A cucumber is not a vegetable but a fruit.

Working...