ppy / osu

rhythm is just a *click* away!
https://osu.ppy.sh
MIT License
15.22k stars 2.27k forks source link

The game crashing when tabbing out #12480

Open kazmath opened 3 years ago

kazmath commented 3 years ago

Describe the bug: It crashes when I tab out or use my screenshot tool (lightshot). I just resetted my installation by deleting the osu folder on %appdata% and imported some beatmaps from stable.

Screenshots or videos showing encountered issue: https://user-images.githubusercontent.com/66137568/115162061-9d90d880-a077-11eb-887c-8b8aec6168f3.mp4 osu!lazer version: 2021.416.0 Logs: performance.log runtime.log updater.log database.log

frenzibyte commented 3 years ago

Logs:

?

kazmath commented 3 years ago

I accidentally clicked send too quickly, it should be updated

frenzibyte commented 3 years ago

The logs look clean to me? can you confirm you haven't restarted osu!lazer after the crash before attaching these, just to be sure.

kazmath commented 3 years ago

Yes, I haven't restarted it, or rather, I closed it like that three times in a row to get a good recording.

kazmath commented 3 years ago

I can do it again and attach the new logs if you want, this is a pretty consistent thing to reproduce, I just spam alt+tab a couple times and it works. And I don't really need to spam it, it happens when I tab out normally too.

Susko3 commented 3 years ago

Does it crash if you exit out of Discord / disable the in-game overlay?

kazmath commented 3 years ago

Haven't tried that, but I do know this doesn't happen in borderless fullscreen. I tested it prior to resetting the data.

Edit: It does happen, the only difference I noticed was that it froze for roughly 2 seconds before closing.

peppy commented 3 years ago

Can't do anything without a crash log. Provide one via console if you can. Sounds like a gpu or IS level issue, though.

kazmath commented 3 years ago

Firstly, my platform is windows 10, not macOS. About the crash logs, I sent everything in the logs folder, unless there is another folder for the crash logs, I can't say much. About it being a GPU issue, I can't confirm nor deny, but, when I tried an earlier build (last release around february), that didn't happen, although it was more laggy, I can only guess it has something to do with the recent optimizations.

MasterZitron commented 3 years ago

Same here, some times it crashes very fast, other times take multiple alt tabs to crash, no discord running in the background or anything alike, also crashes without recording

version: 2021.524.0 os: windows 10

Not sure where to find a "crash log" since it's not under "logs"

video

updater.log runtime.log performance.log network.log

peppy commented 3 years ago

This actually looks like a GPU driver level crash.

GDcheeriosYT commented 2 years ago

I have a similar issue.

I alt tab then go back in then I'm soft locked, I can't move my cursor and I can't alt tab again until I do ctrl + alt + del then goto task manager. Also should mention that it happens every time I alt tab.

https://user-images.githubusercontent.com/54640414/161009349-645865a8-d7bf-4077-8f7e-528fdb3575d3.mp4

peppy commented 2 years ago

@GDcheeriosYT can you confirm this only happens when running exclusive fullscreen? Also did it start recently? May be a similar regression to https://github.com/ppy/osu/issues/17381.

GDcheeriosYT commented 2 years ago

Nevermind, I think the issue was my overwolf outplayed plugin becoming active, cause you can see after I tab back into the game it says "outplayed is now active". I can also see if its exclusively fullscreen.

GDcheeriosYT commented 2 years ago

it seems to exclusively be fullscreen.

peppy commented 2 years ago

Overwolf has caused ongoing issues with osu!. I would recommend blacklisting it to not display on osu!.

honguyenminh commented 1 year ago

This happens without any external app with me. Running on an i3-3217u, HD graphics 4000 with legacy opengl renderer on fullscreen. Again, only happens on fullscreen. Here's the report in Event Viewer:

Log Name:      Application
Source:        .NET Runtime
Date:          5/15/2023 7:29:54 PM
Event ID:      1023
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      AcerPC
Description:
Application: osu!.exe
CoreCLR Version: 6.0.1523.11507
.NET Version: 6.0.15
Description: The process was terminated due to an internal error in the .NET Runtime at IP 00007FF83DC62361 (00007FF83DA90000) with exit code c0000005.

Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name=".NET Runtime" />
    <EventID Qualifiers="0">1023</EventID>
    <Level>2</Level>
    <Task>0</Task>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2023-05-15T12:29:54.000000000Z" />
    <EventRecordID>595413</EventRecordID>
    <Channel>Application</Channel>
    <Computer>AcerPC</Computer>
    <Security />
  </System>
  <EventData>
    <Data>Application: osu!.exe
CoreCLR Version: 6.0.1523.11507
.NET Version: 6.0.15
Description: The process was terminated due to an internal error in the .NET Runtime at IP 00007FF83DC62361 (00007FF83DA90000) with exit code c0000005.
</Data>
  </EventData>
</Event>
honguyenminh commented 1 year ago

One very interesting thing I found is that, it only happen when renderer is multithreaded. Is it a race condition or something? I'm not really sure how multithreaded renderer really works in osu, so... What I'm sure is, disabling it will stop osu from crashing. Also, when in multithreaded, if tabbed out, wait a bit, then tab back in, it will be ok, but tab out and in quickly will crash the game.

Maybe try to reproduce it by bottlenecking the game, the cpu, etc. will help.

honguyenminh commented 1 year ago

Debug suggests that the bug is in osu-framework legacy OpenGL renderer, and looks like a race condition on multithreaded. Haven't checked other renderers so not really sure if this persists outside OpenGL legacy. I will open a new issue on framework side and leave this issue here for now.

Callstack: callstack

peppy commented 1 year ago

Is there a reason you're using opengl over direct x? Would switching to the new default renderer be an amicable solution?

This is already an edge case which is probably specific to the hardware/drivers you're running, so there's low chance of it being fixed.

honguyenminh commented 1 year ago

DirectX11 does not work on Windows 8.1 for some reason, the hardware is perfectly capable of handling it, and does work on Windows 10 on the same hardware. https://github.com/ppy/osu-framework/issues/5795 will have details on what works and what doesn't.

honguyenminh commented 1 year ago

For anyone having the same issue, DirectX is now working on Windows 8.1.

Please use DirectX renderer if possible, both OpenGL have this problem on any Windows version.