13:34ishitatsuyuki: I looked at how DRI permissions work and it seems the current master system is pretty much flawed? Are there proposals to fix it?
13:40imirkin: maybe try to understand what it was trying to achieve before declaring it flawed?
13:41ishitatsuyuki: Primary issues are that it's racy (first come first served) and implicit gained masters cannot be dropped
13:42ishitatsuyuki: It doesn't really provide safety nets and a malfunctioning compositor will directly result in unresponsive system
13:50pq: ishitatsuyuki, racy and cannot drop, yes, but what do you mean by safety nets or unresponsive?
13:52ishitatsuyuki: As dropping master is the compositor's job, if it locks up you won't be able to switch VTs AFAIK
13:52pq: ishitatsuyuki, first open becoming automatically master was maybe a mistake in hindsight, but that cannot be taken away now as there are programs/setups depending on it.
13:52pq: ishitatsuyuki, no, DRM master is irrelevant to VT switching.
13:53ishitatsuyuki: Switching a VT still implies a mode switch, so does the kernel have priority in those cases?
13:53bnieuwenhuizen: pq: how does input work for VT switching? I thought the compositor generally takes over input to the point you might not be able to trigger a switch?
13:54ishitatsuyuki: maybe I was dumb and forgot that X also take over the input mode
13:54pq: bnieuwenhuizen, that's correct. The compositors disabled the kernel/tty VT-switch hotkeys.
13:54ishitatsuyuki: OK I see.
13:54bnieuwenhuizen: in which case it is hard to get out of a broken compositor :)
13:55ascent12: The joys of crashing your compositor to the point input doesn't work, and you can't even VT switch away to fix it.
13:55pq: ishitatsuyuki, if you VT-switch to a VT where fbcon is active and in control, then kernel will probably reset KMS state. How stuck DRM-master affects that, I don't know.
13:56ishitatsuyuki: thanks, I guess I'll dig source for it
13:56pq: yeah, all compositor devs pretty much have some kind of remote access to rescue.
13:57imirkin: another fun mistake to avoid - attaching with gdb to X from an xterm in said X server...
13:58pq: heh, yup, works with any display server
15:10bl4ckb0ne: is shader compilation supported for GLES2?
15:10bl4ckb0ne: I have this error `Mesa: User error: GL_INVALID_OPERATION in unsupported function called (unsupported extension or deprecated function?)`
15:11bl4ckb0ne: when I call `glCompileShader`
15:17imirkin: sounds like you're doing something wrong -- glCompileShader should be in ES2
15:18bl4ckb0ne: GL_COMPILE_STATUS is GL_FALSE
15:18bl4ckb0ne: but the error log is 0
15:21imirkin: i mean you're doing something wrong when you're selecting the context or something
15:22bl4ckb0ne: my code is here https://git.sr.ht/~bl4ckb0ne/egl_playground/tree/master/framebuffer/framebuffer.c
15:26bl4ckb0ne: might be a leftover from the SDL2, it makes an EGL context before I hijack it
15:27imirkin: EGL_OPENGL_ES_BIT -- is that right?
15:27imirkin: i would have imagined there'd be a ES2_BIT
15:27imirkin: ah no, apparently ES_BIT is right. weird.
15:29bl4ckb0ne: it is ES2_BIT
15:29imirkin: aha - no - you are supposed to use ES2_BIT
15:29bl4ckb0ne: but no change
15:30imirkin: what does it print for GL_VERSION?
15:30bl4ckb0ne: > OpenGL ES-CM 1.1 Mesa 19.3.2
15:30imirkin: aha - so you do get ES 1.1
15:30imirkin: you need ES2
15:31bl4ckb0ne: maybe im missing a context attribute
15:31imirkin: until that prints a version like 2.x or 3.x, glCompileShader won't work
15:32bl4ckb0ne: that explains so many things
15:33imirkin: i think EGL_CONFORMATN is wrong
15:33imirkin: you want like EGL_CONTEXT_MAJOR_VERSION
15:33imirkin: or EGL_CONTEXT_OPENGL_PROFILE_MASK
15:34imirkin: er, probably not the latter. that's for compat vs core
16:34bl4ckb0ne: > OpenGL ES 3.0 Mesa 19.3.2
16:34bl4ckb0ne: imirkin: got it to work
16:34bl4ckb0ne: > 0:1(1): error: syntax error, unexpected NEW_IDENTIFIER
16:34bl4ckb0ne: and a proper shader error
21:30airlied: anyone wanna throw a trivial ack at https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3571
21:30gitbot: Mesa issue (Merge request) 3571 in mesa "gallivm/nir: add missing break for isub." [Gallium, Llvmpipe, Opened]