After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 749447 - gstv4l2bufferpool: gst_v4l2_allocator_probe cause reqbufs failed
gstv4l2bufferpool: gst_v4l2_allocator_probe cause reqbufs failed
Status: RESOLVED NOTGNOME
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
git master
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-05-15 18:31 UTC by Randy Li (ayaka)
Modified: 2015-05-16 13:37 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Randy Li (ayaka) 2015-05-15 18:31:48 UTC
gst_v4l2_allocator_probe will use count=0 to detect whether that type of buffer
is supported, unfortunately, it will break the state inside the exynos MFC 5.1
driver in kernel 3.16 and master.
[   33.661038] reqbufs_output:474: Freeing buffers
[   33.661057] s5p_mfc_clock_on:82: + 2
[   33.661071] s5p_mfc_close_inst_cmd_v5:139: Returning instance number -1
[   33.661116] s5p_mfc_irq:605: enter
[   33.661137] s5p_mfc_irq:612: Int reason: 32 (err: 00000004)
[   33.661144] s5p_mfc_handle_error:421: Interrupt Error: 00000004
[   33.661220] s5p_mfc_clock_off:92: - 1
[   33.661232] s5p_mfc_irq:690: leave
[   33.661256] s5p_mfc_wait_for_done_ctx:79: Finished waiting (ctx->int_type:32, command: 6)
[   33.661272] s5p_mfc_close_mfc_inst:454: Err returning instance
[   33.661335] s5p_mfc_clock_off:92: - 0

Then ctx->state inside become MFCINST_FREE, but in order to request buffers, it need state to be MFCINST_INIT.

[   33.664309] reqbufs_output:485: Reqbufs called in an invalid state
[   33.669298] s5p_mfc_clock_off:92: - 0
[   33.669319] reqbufs_output:511: Failed allocating buffers for OUTPUT queue

I don't know whether I should fix the kernel or gstreamer itself as v4l2 document doesn't give me an answer.
Comment 1 Nicolas Dufresne (ndufresne) 2015-05-16 13:37:18 UTC
This is a bug in the kernel driver.