ConfuSomu

one of the many twilight sparkles

gender is a mess, maybe something like (genderfluid) transfem enby, but like: horse! gay! girl!!

:eggbug: 🏳️‍⚧️

name-color: purple


my website (with contact links)
twilightsparkle.space/

bark
@bark

that is, i wanted to

install matlab

you may already see why this is-

MATLAB R2023a (Not Responding)

... a bad idea.

but MathWorks have a Docker Container, which seemed like a good way to not have it destroy my system. and it was!!! downloading stuff took ages. whatever. expected that, plus it's cached so i'm not angry yet. one problem.

the6p4c@dragonfruit
20:00 🥺 ~> docker run -it --rm -e DISPLAY=$DISPLAY \
-v /tmp/.X11-unix:/tmp/.X11-unix:ro --shm-size=512M \
mathworks/matlab:r2023a

Running matlab

Starting MATLAB with license: [blah blah] - MATLAB (Individual)
[dear reader: pause here for about
10 minutes to simulate the issue]

so that's annoying. why's it so slow to launch?? i tried not using --rm to see if it was a first-boot thing, but it happened every time, no matter what i did or didn't do.

‼️ we have a puzzle 🧩 to solve ✨


iliana
@iliana

i have seen this before (different software but same root cause) and i have an opinion about it

click to reveal spoiler for above post

if you close 512 consecutive file descriptors that weren't open anyway, linux should close the rest of them for you and modify your fucking memory space to skip past this bullshit loop

like come on close_range(2) exists since v5.9 and even if you must support something older than that you can read /proc/self/fd!


You must log in to comment.

in reply to @bark's post:

I'm also not sure why it seems to be catching an error thrown after generating a UUID fails due to a lack of entropy (maybe? wonder if it's trying to read /dev/random and that's not mapped into the Docker container) and ... launching a new process while handling that? It is a mystery.

ah, so, since it’s a mostly stripped binary, the symbols in the stack trace are just the only things with names before the actual address - hence the really big offsets at the end since the actual code is nowhere near those few functions with symbols. that tripped me up at first too

okay genuine question bc i am definitely missing something here:
why is it closing file descriptors? especially file descriptors it isn’t using? what does this accomplish??? why not simply not do that????

in reply to @iliana's post: