00:08
scientes has quit [Ping timeout: 256 seconds]
01:00
genii has quit [Remote host closed the connection]
03:40
scientes has joined #linux-exynos
03:41
scientes has quit [Changing host]
03:41
scientes has joined #linux-exynos
04:53
mszyprow has joined #linux-exynos
05:45
Vasco is now known as Vasco_O
06:01
Vasco_O is now known as Vasco
06:02
Vasco has quit [Remote host closed the connection]
06:14
nighty- has quit [Quit: Disappears in a puff of smoke]
06:17
nighty- has joined #linux-exynos
06:40
Vasco has joined #linux-exynos
12:48
aalm has quit [Ping timeout: 264 seconds]
12:55
<
memeka >
mszyprow: ping
12:56
<
mszyprow >
memeka: pong
12:56
<
memeka >
if i am not mistaken
12:56
<
memeka >
MFC outputs with some padding 1088×1920
12:56
<
memeka >
instead of 1080p
12:56
<
memeka >
might that be the reason?!
12:57
<
memeka >
cause i am sending 1920x1088 ?
12:57
<
mszyprow >
memeka: nope, the page fault issue is on the displayed rgb buffer
12:57
<
mszyprow >
and the device which triggers it is mixer
12:58
<
mszyprow >
1920x1088 buffers goes to gsc not the mixer
12:58
<
mszyprow >
-goes +go
12:58
<
memeka >
and gsc will output it back
12:58
<
memeka >
and i send it to drm
12:58
<
mszyprow >
yes, but that will be different buffer
12:59
<
memeka >
sure, but the buffer is still 1088
12:59
<
memeka >
and drm can handle 1080
12:59
<
memeka >
e.g. if you play 720p video, it won't show
12:59
<
memeka >
cause buffer is wrong value, and drm does no scaling
12:59
<
mszyprow >
from the log I see that the buffer is 1920x1080 rbg 32bit
12:59
<
memeka >
(so i need to make gsc to scaling too)
13:00
<
memeka >
but i think i remember the gsc log as having 1088
13:00
<
memeka >
let me check
13:00
<
memeka >
it might not be a bug after all :(
13:01
<
mszyprow >
drm imports buffer as 1920x1080x32bit rgb
13:02
<
mszyprow >
hmmm, now I got kernel panic due to oom killer having to process to kill
13:02
<
mszyprow >
it looks that something is leaking memory...
13:04
<
memeka >
mszyprow: yeah GSC converts it to 1080
13:04
<
memeka >
[ 71.981785] video21: VIDIOC_G_FMT: type=vid-out-mplane, width=1920, height=1088, format=NM21
13:04
<
mszyprow >
-converts +crops ;)
13:04
<
memeka >
[ 71.982328] video21: VIDIOC_G_FMT: type=vid-cap-mplane, width=1920, height=1080, format=BGR4
13:04
<
memeka >
yes, crops :)
13:05
<
memeka >
i need to make it scale too :)
13:05
<
memeka >
leaking memory in kernel or userspace?
13:06
<
memeka >
e.g. i might not be releasing buffers correctly when closing mfc/gsc
13:06
<
memeka >
in that version of the code :
13:06
<
mszyprow >
in kernel
13:06
genii has joined #linux-exynos
13:06
<
memeka >
actually i think the code used back then
13:07
<
memeka >
didn't release gsc v4l2 buffers at all
13:07
<
mszyprow >
userspace can do anything stupid, but in any case, kernel after finishing the process should release all the allocated resources
13:10
<
memeka >
debugging a kernel other than putting some printk's is something i did not do :(
13:13
<
memeka >
mszyprow: have you noticed the overlay image ... trembles ?
13:14
<
memeka >
not sure it's related or not
13:15
<
mszyprow >
might be related to devfreq activity
13:15
<
mszyprow >
I didn't notice it
13:15
<
mszyprow >
but frankly I didn't look much at the movie/osd
13:15
<
memeka >
whatever is rendered on primary plane
13:16
<
memeka >
whatever is rendered on overlay plane (GRAPH1)
13:17
<
memeka >
... trembles ... like the lights with unstable power source :)
13:17
<
memeka >
you can change a bit the source to mpv
13:18
<
memeka >
then run ../waf build to compile again
13:18
<
memeka >
and now the video will tremble
13:18
<
memeka >
when it's shown on overlay plane
13:19
<
memeka >
anw, not that important :)
13:19
<
memeka >
unless it's related :P
13:19
<
memeka >
but probably not
13:19
<
mszyprow >
it might be also related to the priority of memory access on axi bus
13:23
afaerber has quit [Ping timeout: 240 seconds]
13:24
<
memeka >
mszyprow: it's weird, why would it not crash if h is 2 pixels short?
13:24
<
mszyprow >
memeka: 2 lines
13:25
<
memeka >
2xwidth :)
13:25
<
memeka >
buffer sizes?
13:25
<
memeka >
does DRM not have enough allocated, or is the buffer i'm sending too big?
13:25
<
mszyprow >
memeka: I have no idea yet, but the page fault is because mixer tries to access beyond the end of the provided buffer
13:26
<
mszyprow >
DRM calculates everything properly
13:27
<
mszyprow >
I got some logs, where mixer displays the provided buffers for more than one vblank period and then crashes by accessing a byte after the end of the provided buffer
13:28
<
mszyprow >
I really have no idea why and more important under which conditions this issue happens
13:29
<
mszyprow >
I initially thought that this is related to freeing the buffer immediately after displaying it, but the page fault is always because of the access to a byte after the provided buffer
13:29
<
memeka >
mszyprow: can it be a GScaler bug?
13:30
<
mszyprow >
it is related only to mixer
13:30
<
memeka >
Gscaler sets wrong bytesperline
13:30
<
mszyprow >
this is ignored by drm
13:30
<
memeka >
maybe it's computing the buffer length wrongly?
13:31
<
mszyprow >
at least in debugs everything looks correct...
13:32
<
memeka >
actually if the data itself from gsc would be wrong, image would have some artifact
13:32
<
memeka >
and it doesn't
13:34
<
memeka >
mszyprow: what happens if i allocate a larger buffer?
13:34
<
mszyprow >
memeka: it might also work
13:35
<
mszyprow >
memeka: but make sure that the larger size is also used in drm prime
13:35
<
mszyprow >
you might try to set gsc destination to 1920x1088 rgb32 and adjust crop/selection
13:35
<
memeka >
drmprime i see ends offset and pitch
13:36
<
mszyprow >
I didn't have time to play with userspace
13:53
afaerber has joined #linux-exynos
14:49
wwilly has joined #linux-exynos
15:22
mszyprow has quit [Ping timeout: 244 seconds]
18:15
afaerber has quit [Quit: Leaving]
18:31
afaerber has joined #linux-exynos
20:08
aalm has joined #linux-exynos
23:04
wwilly_ has joined #linux-exynos
23:06
wwilly has quit [Ping timeout: 264 seconds]