4 ms·
I'm (among other things) a Linux system engineer and an occasionally reluctant Linux plumber on my team. Debugging kernel panics / bluescreens is night and day
by phone8675309 5y ago
I'm (among other things) a Linux system engineer and an occasionally reluctant Linux plumber on my team. Debugging kernel panics / bluescreens is night and day between Linux and Windows.
I have a Windows gaming rig that I was getting BSODs on. It took about ten minutes to reconfigure Windows to write full crash dumps, get WinDbg set up, and determine where and what was crashing the system (bad display driver install - DDU and reinstall fixed it). There were plenty of guides as to how to get it set up and how to get it to pull Windows debugging symbols from the Internet. It was completely painless.
I have to keep a well-worn grimoire covered with notes and scribbles on how to get kdump working correctly to do the same sort of work on the Linux machines that I support - assuming that devops even set them up in the right configuration for kdump to work.
- BenjiWiebe 5y agoI mess around with ~5 Linux boxes, so this is a small sample size, and also all my neighbors' Windows PCs. Seems like the Windows PCs are more likely to show you a blue screen/crash than a Linux one. Would that match your experience too?
- jiggawatts 5y agoMy experience is that these days only hardware failures crash Windows. A few years ago the biggest source of BSODs were the performance-optimised video drivers. That has thankfully improved a lot…
- phone8675309 5y agoHonestly, not really. My Linux daily driver PC and Windows gaming PC are about equally reliable. The only recent blip for me has been with my Windows machine randomly crashing due to what turned out to be a bad RAM DIMM module. My Windows PC actually seems to have video card problems less often, though I don’t really blame Linux here because they both have nVidia cards.
- gavinray 5y agoI also am a lifelong Linux user and prefer it to Windows. But I have to hand it to Windows in this realm, despite how I might feel about other parts of it. Linux has strace, valgrind/kcachegrind, eBPF, etc And those tools are incredibly powerful, but have a far steeper learning curve and (personal opinion) UX than similar Windows tools. I've used Windbg Preview to debug code written in niche languages like D and it's been able to sync source code from .d files and let me set breakpoints. That really blew me away. I know that debug info is standardized in PE/COFF and in Linux with DWARF, but still. Neat (at least I think so) screenshot of Windbg Preview debugging a D .dll with source synced: https://media.discordapp.net/attachments/625407836473524246/831606636204392448/unknown.png https://media.discordapp.net/attachments/625407836473524246/... The JS scripting is pretty wild too. Repo full of them here. Example for generating a mermaid diagram image of callgraph, given a function name: https://github.com/hugsy/windbg_js_scripts/blob/main/scripts/CallGraph.js https://github.com/hugsy/windbg_js_scripts/blob/main/scripts... (Material from a Defcon workshop by same author): https://github.com/hugsy/defcon_27_windbg_workshop https://github.com/hugsy/defcon_27_windbg_workshop