Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cog: Fix wrong var in use to add the selected platforms #448

Merged
merged 1 commit into from
Mar 21, 2023

Conversation

psaavedra
Copy link
Member

@psaavedra psaavedra commented Feb 8, 2023

Also:

@psaavedra psaavedra added the bug label Feb 8, 2023
@psaavedra psaavedra added this to the 202210_4.1_langdale milestone Feb 8, 2023
@psaavedra psaavedra self-assigned this Feb 8, 2023
@Bastian-Krause
Copy link
Contributor

Bastian-Krause commented Feb 8, 2023

Could you elaborate what component uses graphene causing the alignment fault? At least for GStreamer's gltransformation, this should be fixed by https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1321.

I'm running the WPE port from latest WebKit main and recent cog/libwpe/wpebackend-fdo on ARM 32 bit devices and I have not seen this since.

@psaavedra
Copy link
Member Author

Could you elaborate what component uses graphene causing the alignment fault? At least for GStreamer's gltransformation, this should be fixed by https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1321.

I'm running the WPE port from latest WebKit main and recent cog/libwpe/wpebackend-fdo on ARM 32 bit devices and I have not seen this since.

The crash came out by using the gtk4 Cog's platform (cog -P gtk4 https://...) on a raspberrypi3 (32bits) and MACHINE_FEATURES:append = " vc4graphics" (environment created using the instructions detailed in image-with-mesa-vc4-driver-weston-and-wpebackend-fdo)

Core was generated by `cog -P gtk4 https://igalia.com'.
Program terminated with signal SIGBUS, Bus error.
#0  0x6af085c0 in merge_color_matrix_nodes (matrix2=matrix2@entry=0x1c07b98, offset2=offset2@entry=0x1c07bd8, child=child@entry=0x1c760f0) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtksnapshot.c:562

warning: Source file is more recent than executable.
562	  graphene_vec4_t off2 = *offset2;
[Current thread is 1 (LWP 1340)]
warning: File "/home/psaavedra/local/workshop/toolchain_browsers_rpi3/sysroots/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib/libstdc++.so.6.0.30-gdb.py" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load:/home/psaavedra/local/workshop/nwot-arm/veld/1.0.0/sysroots/cortexa9hf-neon-veld-linux-gnueabi/usr/lib/libstdc++.so.6.0.24-gdb.py".
To enable execution of this file add
	add-auto-load-safe-path /home/psaavedra/local/workshop/toolchain_browsers_rpi3/sysroots/cortexa7t2hf-neon-vfpv4-poky-linux-gnueabi/usr/lib/libstdc++.so.6.0.30-gdb.py
line to your configuration file "/home/psaavedra/.gdbinit".
To completely disable this security protection add
	set auto-load safe-path /
line to your configuration file "/home/psaavedra/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
	info "(gdb)Auto-loading safe path"
(gdb) bt
#0  0x6af085c0 in merge_color_matrix_nodes (matrix2=matrix2@entry=0x1c07b98, offset2=offset2@entry=0x1c07bd8, child=child@entry=0x1c760f0) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtksnapshot.c:562
#1  0x6af08a80 in gtk_snapshot_collect_color_matrix (snapshot=<optimized out>, state=0x1c07b78, nodes=<optimized out>, n_nodes=<optimized out>) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtksnapshot.c:600
#2  0x6af09356 in gtk_snapshot_pop_one (snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtksnapshot.c:1374
#3  0x6af09540 in gtk_snapshot_pop_internal (snapshot=snapshot@entry=0x1c84580, is_texture_pop=is_texture_pop@entry=0) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtksnapshot.c:1459
#4  0x6af0a24a in gtk_snapshot_pop (snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtksnapshot.c:1575
#5  0x6afb33c2 in gtk_css_filter_value_pop_snapshot (filter=0x1088790, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkcssfiltervalue.c:992
#6  0x6aee7c8a in gtk_css_style_snapshot_icon_paintable (style=0x1ba5b80, snapshot=0x1c84580, paintable=0x1131930, width=16, height=16) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkrendericon.c:153
#7  0x6b054462 in gdk_paintable_snapshot (paintable=0x106de50, snapshot=0x1c84580, width=16, height=16) at /usr/src/debug/gtk4/4.6.7-r0/gdk/gdkpaintable.c:236
#8  0x6ae8ed58 in gtk_image_snapshot (widget=<optimized out>, snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkimage.c:1045
#9  0x6af7e1c6 in gtk_widget_create_render_node (widget=widget@entry=0x10e0258, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11587
#10 0x6af8000e in gtk_widget_do_snapshot (widget=widget@entry=0x10e0258, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11622
#11 0x6af88304 in gtk_widget_snapshot_child (widget=<optimized out>, child=0x10e0258, snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:12043
#12 0x6af88380 in gtk_widget_real_snapshot (widget=0x10e0170, snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:734
#13 0x6af7e1c6 in gtk_widget_create_render_node (widget=widget@entry=0x10e0170, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11587
#14 0x6af8000e in gtk_widget_do_snapshot (widget=widget@entry=0x10e0170, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11622
#15 0x6af88304 in gtk_widget_snapshot_child (widget=<optimized out>, child=0x10e0170, snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:12043
#16 0x6af88380 in gtk_widget_real_snapshot (widget=0x10eb2e0, snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:734
#17 0x6af7e1c6 in gtk_widget_create_render_node (widget=widget@entry=0x10eb2e0, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11587
#18 0x6af8000e in gtk_widget_do_snapshot (widget=widget@entry=0x10eb2e0, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11622
#19 0x6af88304 in gtk_widget_snapshot_child (widget=<optimized out>, child=0x10eb2e0, snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:12043
#20 0x6af7e1c6 in gtk_widget_create_render_node (widget=widget@entry=0x10df1a0, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11587
#21 0x6af8000e in gtk_widget_do_snapshot (widget=widget@entry=0x10df1a0, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11622
#22 0x6af88304 in gtk_widget_snapshot_child (widget=<optimized out>, child=0x10df1a0, snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:12043
#23 0x6af88380 in gtk_widget_real_snapshot (widget=0x10eb100, snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:734
#24 0x6af7e1c6 in gtk_widget_create_render_node (widget=widget@entry=0x10eb100, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11587
#25 0x6af8000e in gtk_widget_do_snapshot (widget=widget@entry=0x10eb100, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11622
#26 0x6af88304 in gtk_widget_snapshot_child (widget=<optimized out>, child=0x10eb100, snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:12043
#27 0x6af88380 in gtk_widget_real_snapshot (widget=0x1031ad8, snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:734
#28 0x6af7e1c6 in gtk_widget_create_render_node (widget=widget@entry=0x1031ad8, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11587
#29 0x6af8000e in gtk_widget_do_snapshot (widget=widget@entry=0x1031ad8, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11622
#30 0x6af88304 in gtk_widget_snapshot_child (widget=<optimized out>, child=0x1031ad8, snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:12043
#31 0x6af88380 in gtk_widget_real_snapshot (widget=0x10319e0, snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:734
#32 0x6af7e1c6 in gtk_widget_create_render_node (widget=widget@entry=0x10319e0, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11587
#33 0x6af8000e in gtk_widget_do_snapshot (widget=widget@entry=0x10319e0, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11622
#34 0x6af88304 in gtk_widget_snapshot_child (widget=<optimized out>, child=0x10319e0, snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:12043
#35 0x6af88380 in gtk_widget_real_snapshot (widget=0x10e9198, snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:734
#36 0x6af7e1c6 in gtk_widget_create_render_node (widget=widget@entry=0x10e9198, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11587
#37 0x6af8000e in gtk_widget_do_snapshot (widget=widget@entry=0x10e9198, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11622
#38 0x6af88304 in gtk_widget_snapshot_child (widget=<optimized out>, child=0x10e9198, snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:12043
#39 0x6af88380 in gtk_widget_real_snapshot (widget=0x10841a0, snapshot=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:734
#40 0x6af7e252 in gtk_widget_create_render_node (widget=widget@entry=0x10841a0, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11582
#41 0x6af8000e in gtk_widget_do_snapshot (widget=widget@entry=0x10841a0, snapshot=snapshot@entry=0x1c84580) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11622
#42 0x6af87c78 in gtk_widget_snapshot (snapshot=0x1c84580, widget=0x10841a0) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11644
#43 gtk_widget_render (widget=0x10841a0, surface=0x11380c8, region=0x1ba3148) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwidget.c:11676
#44 0x6af8d53a in surface_render (surface=<optimized out>, region=<optimized out>, widget=<optimized out>) at /usr/src/debug/gtk4/4.6.7-r0/gtk/gtkwindow.c:4733
#45 0x6b0395aa in _gdk_marshal_BOOLEAN__BOXEDv (closure=0x198b878, return_value=0x7e9e4720, instance=<optimized out>, args=..., marshal_data=0x0, n_params=1, param_types=0x1135448) at /usr/src/debug/gtk4/4.6.7-r0/gdk/gdkmarshalers.c:130
#46 0x73e0ff3a in _g_closure_invoke_va (closure=closure@entry=0x198b878, return_value=return_value@entry=0x7e9e4720, instance=instance@entry=0x11380c8, args=args@entry=..., n_params=1, param_types=0x1135448)
    at /usr/src/debug/glib-2.0/1_2.72.3-r0/gobject/gclosure.c:893
#47 0x73e2176a in g_signal_emit_valist (instance=0x0, instance@entry=0x11380c8, signal_id=0, detail=detail@entry=2124302308, var_args=..., var_args@entry=...) at /usr/src/debug/glib-2.0/1_2.72.3-r0/gobject/gsignal.c:3406
#48 0x73e2203e in g_signal_emit (instance=instance@entry=0x11380c8, signal_id=<optimized out>, detail=0) at /usr/src/debug/glib-2.0/1_2.72.3-r0/gobject/gsignal.c:3553
#49 0x6b0594c2 in gdk_surface_process_updates_internal (surface=0x11380c8) at /usr/src/debug/gtk4/4.6.7-r0/gdk/gdksurface.c:1348
#50 gdk_surface_paint_on_clock (clock=<optimized out>, data=<optimized out>) at /usr/src/debug/gtk4/4.6.7-r0/gdk/gdksurface.c:1436
#51 0x73e0ff3a in _g_closure_invoke_va (closure=closure@entry=0x11372a0, return_value=return_value@entry=0x0, instance=instance@entry=0x1136908, args=args@entry=..., n_params=0, param_types=0x0)
    at /usr/src/debug/glib-2.0/1_2.72.3-r0/gobject/gclosure.c:893
#52 0x73e21e90 in g_signal_emit_valist (instance=0x1b562c8, instance@entry=0x1136908, signal_id=0, detail=detail@entry=2124302700, var_args=..., var_args@entry=...) at /usr/src/debug/glib-2.0/1_2.72.3-r0/gobject/gsignal.c:3406
--Type <RET> for more, q to quit, c to continue without paging--c
#53 0x73e2203e in g_signal_emit (instance=instance@entry=0x1136908, signal_id=<optimized out>, detail=0) at /usr/src/debug/glib-2.0/1_2.72.3-r0/gobject/gsignal.c:3553
#54 0x6b04ced8 in _gdk_frame_clock_emit_paint (frame_clock=frame_clock@entry=0x1136908) at /usr/src/debug/gtk4/4.6.7-r0/gdk/gdkframeclock.c:708
#55 0x6b04d7ec in gdk_frame_clock_paint_idle (data=<error reading variable: value has been optimized out>) at /usr/src/debug/gtk4/4.6.7-r0/gdk/gdkframeclockidle.c:608
#56 0x73d30286 in g_timeout_dispatch (source=0x1581d10, callback=<optimized out>, user_data=<optimized out>) at /usr/src/debug/glib-2.0/1_2.72.3-r0/glib/gmain.c:4971
#57 0x73d2f950 in g_main_dispatch (context=0x100d108) at /usr/src/debug/glib-2.0/1_2.72.3-r0/glib/gmain.c:3417
#58 g_main_context_dispatch (context=context@entry=0x100d108) at /usr/src/debug/glib-2.0/1_2.72.3-r0/glib/gmain.c:4135
#59 0x73d2fc02 in g_main_context_iterate (context=context@entry=0x100d108, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at /usr/src/debug/glib-2.0/1_2.72.3-r0/glib/gmain.c:4211
#60 0x73d2fc68 in g_main_context_iteration (context=context@entry=0x100d108, may_block=may_block@entry=1) at /usr/src/debug/glib-2.0/1_2.72.3-r0/glib/gmain.c:4276
#61 0x73f044aa in g_application_run (application=application@entry=0x10048a8, argc=argc@entry=4, argv=argv@entry=0x7e9e4c14) at /usr/src/debug/glib-2.0/1_2.72.3-r0/gio/gapplication.c:2569

We reached to thissolution through ebassi/graphene#215 (comment)

@Bastian-Krause
Copy link
Contributor

Bastian-Krause commented Feb 8, 2023

Ah, I see. Thanks for the explanation.

@Bastian-Krause
Copy link
Contributor

Is it possible to disable the NEON instructions only if the gtk platform is enabled? I think it's a bit unfortunate that all graphene users get their NEON instructions disabled, even if the affected gtk platform is not even built.

@psaavedra
Copy link
Member Author

psaavedra commented Feb 9, 2023

Is it possible to disable the NEON instructions only if the gtk platform is enabled?

I don't see a way of how an flag in one component (cog) could affect to the selected flags for others. I can only visualize an kind of global setting to be set on the local.conf or in the distro. Something like: ENABLE_COG_GTK4 = "yes" or ENABLE_GTK4_TWEAKS = "yes". A distro feature could be what we need for this.

@Bastian-Krause
Copy link
Contributor

Bastian-Krause commented Feb 9, 2023

Yes, a global setting, a distro feature (maybe gtk3, gtk4, ..?) or a packageconfig neon for graphene (maybe even upstream in oe-core/meta-oe) that could be disabled in the local.conf for the gtk case sounds good to me.

@psaavedra
Copy link
Member Author

Yes, a global setting, a distro feature (maybe gtk3, gtk4, ..?) or a packageconfig neon for graphene (maybe even upstream in oe-core/meta-oe) that could be disabled in the local.conf for the gtk case sounds good to me.

Unfortunately, the distro features are more about the stack itself (wayland, x11, 3g ... ) than for a particular widget toolkit. I am going to do an explicit mention here to @kraj who time to time collaborated in this repo and it has by far much more experience in poky and meta-oe. For sure he can give a good suggestion.

@kraj
Copy link
Contributor

kraj commented Feb 11, 2023

Is it possible to disable the NEON instructions only if the gtk platform is enabled? I think it's a bit unfortunate that all graphene users get their NEON instructions disabled, even if the affected gtk platform is not even built.

We do not have UI toolkits as distro level knobs, but loosely inferred so perhaps we could do a packageconfig knob for the above recipe something like

PACKAGECONFIG[gtkgui] = "--enable-gui=gtk3,--enable-gui=no,gtk+3"

and then it could be tied to a DISTRO_FEATURE like x11 if needed.

PACKAGECONFIG ??= " \
    ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'gtkgui', '', d)} \

but if we are needing it without X11 too then we might just keep it a packageconfig and turn it on and off from
site config file like local.conf on need bases

PACKAGECONFIG:append:pn-<PN> = " gtkgui"

@@ -0,0 +1,4 @@
# Disable ARM neon support. Backported from Arch Linux: https://github.com/archlinuxarm/PKGBUILDs/pull/1977
# Upstream-status: Reported [https://github.com/ebassi/graphene/issues/215]
EXTRA_OEMESON:append:arm = " -Darm_neon=false"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does :arm applies both to Aarch64 and ARMv7 or only to ARMv7?

If the crash only happens on ARMv7 i think it will make sense to only disable it there

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just checked it. It only seems to apply to ARM-32 bits. Good

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But this still means we disable graphene NEON instructions unconditionally for everybody on ARMv7, regardless of whether webkitgtk is built or not. I think that's bad style.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I understand your point but see a clear path to follow right now. It sounds like distros like Arch and ReHat just disabled NEON on graphene package for ARM: archlinuxarm/PKGBUILDs#1977. If this is too much aggressive or not I don't have a strong enough argument to take position in one or another side.

Copy link
Contributor

@clopez clopez Feb 13, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But this still means we disable graphene NEON instructions unconditionally for everybody on ARMv7, regardless of whether webkitgtk is built or not. I think that's bad style.

The issue not only affects WebKitGTK. It also affects WPE when using the GTK4 plugin of Cog.

Graphene seems to be used by the gstreamer-gl plugin. It is needed to build the gltransformation and glvideoflip elements.

So removing NEON support on Graphene may impact performance (would like to see some benchmarks) when using gltransformation, glvideoflip elements inside the gstreamer pipeline.

Other than that, I'm not aware of any usage of Graphene when using WPE that may be impacted by this change.

Do you have any example of use case that will be impacted?

We have to make a difficult choice here, and I will rather have every ARMv7 user of WPE+Cog/GTK4 and WebKitGTK/GTK4 with a working build than a hypothetical performance improvement when playing videos with WPE/WebKitGTK with some non-standard configuration.

Ideally I would like to fix this without having to disable NEON support on Graphene. If you have any suggestion on how to do that, then please share it.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, someone else posted the graphene approach already upstream: https://lore.kernel.org/openembedded-core/20230213120407.1092455-1-f_l_k@t-online.de/T/#u

Good. If this gets merged in oe-core then we don't have to do anything here.
But the end result will be the same: NEON support on Graphene will get disabled by default for all ARMv7 users

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The build instructions could then mention:
On ARMv7 WebKitGTK and cog GTK4 plugin users should disable NEON instructions in their local.conf (see bug: FIXME)
PACKAGECONFIG:remove:pn-graphene = "neon"

I agree with the PACKAGECONFIG option so it is possible to enable or disable it on local.conf

But I think things should work by default, so I would default it to be disabled and then add a note at https://github.com/Igalia/meta-webkit/wiki/PerformanceTips about enabling it for users that don't care about GTK

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Right. We could still add a notice that non-gtk users on ARMv7 might be able to add PACKAGECONFIG:append:pn-graphene = "neon". But OTOH that's not really meta-webkit exclusive.

Copy link
Contributor

@clopez clopez Feb 17, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But OTOH that's not really meta-webkit exclusive.

Agreed. On top of that I'm a bit skeptical regarding whether enabling Neon support for Graphene has any noticeable performance improvement on WPE when playing videos with GStreamer. Have you tested it?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@clopez
Copy link
Contributor

clopez commented Feb 17, 2023

It landed in poky this commit: yoctoproject/poky@491a323

It should be part of Yocto Mickledore (to be released in April 2023).
I don't know if it will be backported to current stable version of Yocto Langdale.

In any case, I guess it is an option to add here a .bbappend with similar contents

@psaavedra
Copy link
Member Author

It landed in poky this commit: yoctoproject/poky@491a323

It should be part of Yocto Mickledore (to be released in April 2023). I don't know if it will be backported to current stable version of Yocto Langdale.

In any case, I guess it is an option to add here a .bbappend with similar contents

Let's keep this discussion just as reference anyone facing this problem could take the decision by their own.

I've remove the append and I will merge the original commit what actually it is a bug in meta-webkit.

@psaavedra psaavedra merged commit 7e7bc6b into main Mar 21, 2023
@psaavedra psaavedra deleted the psaavedra-fixes-cog-gtk4 branch March 21, 2023 11:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants