It turns out sending a closed FD via XCB doesn't fail. The other side (X.Org server) just receives a random FD number, which I think by chance referred to an unrelated FD which was opened.
But why was I sending a closed FD via XCB in the first place? It turns out sending a FD via XCB also closes it. So it worked fine the first time, and caused the bug the second time.
This morning I spent a few hours tracking down a bug in wlroots' X11 backend. Importing a DMA-BUF via the X11 DRI3 extension failed, and I couldn't understand why.
Went from X.Org server core to Xwayland to GBM to Gallium to radeonsi to libdrm to the kernel. The FD seemed valid, since stat() didn't return an error, but drmPrimeFDToHandle failed.
Saying "no" to unethical tasks
A few ways to make money in FOSS
https://drewdevault.com/2020/11/20/A-few-ways-to-make-money-in-FOSS.html
gemini://drewdevault.com/2020/11/20/A-few-ways-to-make-money-in-FOSS.gmi
Status update, November 2020
SourceHut's second year in alpha
https://sourcehut.org/blog/2020-11-15-sourcehut-2-year-alpha/
Join us for basu development:
- Doesn't require to think too hard
- Just delete large chunks code as long as it compiles
- The code you get to delete is terrible, so you'll sleep better afterwards
- Can be seen as payback for all of the bad code you've written during the day
Some doctors even recommend it!
Support for AMD modifiers is being merged in Mesa's radeonsi 🎉
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6176
Linux graphics, why sharing code with Windows isn't always a win
https://airlied.blogspot.com/2020/11/linux-graphics-why-sharing-code-with.html?m=1
SourceHut Q3 2020 Financial report
https://sourcehut.org/blog/2020-11-11-sourcehut-q3-2020-financial-report/
wlroots 0.12.0 is released!
weeb shit
I don't know why, but sometimes I fall in love with a song on first listening. This just happened with:
number_of_people_who_invented_scfg_before_it_existed++
Getting pixels on screen on Linux: introduction to Kernel Mode Setting - Simon Ser https://conf.tube/videos/watch/c023f9e8-0bae-4aa1-ac91-bfc5f21c46aa