-
Notifications
You must be signed in to change notification settings - Fork 3
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
Failed to upgrade to Pop!OS 22.04 due to Pipewire dependency issue #12
Comments
This seems like a duplicate of pop-os/upgrade#301. Can you please provide the output of these commands:
This Pop!_OS PipeWire package is only for version 22.04, so if you're still on 21.10, then the issue is not with this repository (it sounds like pop-upgrade is the correct repository if it started when you attempted to upgrade.) |
The way to fix this is going to be similar to this comment, you just need to specify compatible version numbers for each of the packages that apt is complaining about. |
This does look like the issue you've linked. Not sure how I missed that one.
I tried the following:
|
Fixed a typo in my command and used all the replaced packages in the following:
|
As the linked comment suggested (with a few extra packages not listed in my first error), I appeared to have fixed it with:
It appears I can now use the Pop!Shop to upgrade OS. |
`client::name` points to a string that is owned by `client::props`, so when the property list is updated, it needs to be refreshed as well. Otherwise, various use-after-frees can be triggered, for example: ==1471586==ERROR: AddressSanitizer: heap-use-after-free on address 0x60200007e7d0 at pc 0x7f14390755d0 bp 0x7ffe23edee30 sp 0x7ffe23ede5a8 READ of size 3 at 0x60200007e7d0 thread T0 #0 0x7f14390755cf in printf_common /usr/src/debug/gcc/libsanitizer/sanitizer_common/sanitizer_common_interceptors_format.inc:553 #1 0x7f1439077215 in __interceptor_vsnprintf /usr/src/debug/gcc/libsanitizer/sanitizer_common/sanitizer_common_interceptors.inc:1665 #2 0x7f1434ead47d in spa_vscnprintf ../spa/include/spa/utils/string.h:239 #3 0x7f1434eae2ae in impl_log_logtv ../spa/plugins/support/logger.c:138 #4 0x7f14385cacc7 in pw_log_logt ../src/pipewire/log.c:135 #5 0x7f1433aef8e9 in do_set_profile ../src/modules/module-protocol-pulse/pulse-server.c:4656 #6 0x7f1433b0af4d in handle_packet ../src/modules/module-protocol-pulse/server.c:109 #7 0x7f1433b0e747 in do_read ../src/modules/module-protocol-pulse/server.c:276 #8 0x7f1433b0eb04 in on_client_data ../src/modules/module-protocol-pulse/server.c:306 #9 0x7f1434ec56a0 in source_io_func ../spa/plugins/support/loop.c:442 #10 0x7f1434ec4a21 in loop_iterate ../spa/plugins/support/loop.c:430 #11 0x7f14385dc23d in pw_main_loop_run ../src/pipewire/main-loop.c:148 #12 0x55b065d73722 in main ../src/daemon/pipewire.c:131 #13 0x7f143742928f (/usr/lib/libc.so.6+0x2928f) #14 0x7f1437429349 in __libc_start_main (/usr/lib/libc.so.6+0x29349) #15 0x55b065d722a4 in _start (./src/daemon/pipewire-pulse+0x42a4) 0x60200007e7d0 is located 0 bytes inside of 16-byte region [0x60200007e7d0,0x60200007e7e0) freed by thread T0 here: #0 0x7f14390be672 in __interceptor_free /usr/src/debug/gcc/libsanitizer/asan/asan_malloc_linux.cpp:52 #1 0x7f14386a775a in do_replace ../src/pipewire/properties.c:414 #2 0x7f14386a785e in pw_properties_set ../src/pipewire/properties.c:441 #3 0x7f14386a658b in pw_properties_update ../src/pipewire/properties.c:309 #4 0x7f1433adb055 in do_update_proplist ../src/modules/module-protocol-pulse/pulse-server.c:3246 #5 0x7f1433b0af4d in handle_packet ../src/modules/module-protocol-pulse/server.c:109 #6 0x7f1433b0e747 in do_read ../src/modules/module-protocol-pulse/server.c:276 #7 0x7f1433b0eb04 in on_client_data ../src/modules/module-protocol-pulse/server.c:306 #8 0x7f1434ec56a0 in source_io_func ../spa/plugins/support/loop.c:442 #9 0x7f1434ec4a21 in loop_iterate ../spa/plugins/support/loop.c:430 #10 0x7f14385dc23d in pw_main_loop_run ../src/pipewire/main-loop.c:148 #11 0x55b065d73722 in main ../src/daemon/pipewire.c:131 #12 0x7f143742928f (/usr/lib/libc.so.6+0x2928f) previously allocated by thread T0 here: #0 0x7f1439072faa in __interceptor_strdup /usr/src/debug/gcc/libsanitizer/asan/asan_interceptors.cpp:439 #1 0x7f14386a6fe2 in do_replace ../src/pipewire/properties.c:394 #2 0x7f14386a785e in pw_properties_set ../src/pipewire/properties.c:441 #3 0x7f1433a6c52d in read_props ../src/modules/module-protocol-pulse/message.c:147 #4 0x7f1433a6f467 in message_get ../src/modules/module-protocol-pulse/message.c:359 #5 0x7f1433ab3191 in do_set_client_name ../src/modules/module-protocol-pulse/pulse-server.c:1030 #6 0x7f1433b0af4d in handle_packet ../src/modules/module-protocol-pulse/server.c:109 #7 0x7f1433b0e747 in do_read ../src/modules/module-protocol-pulse/server.c:276 #8 0x7f1433b0eb04 in on_client_data ../src/modules/module-protocol-pulse/server.c:306 #9 0x7f1434ec56a0 in source_io_func ../spa/plugins/support/loop.c:442 #10 0x7f1434ec4a21 in loop_iterate ../spa/plugins/support/loop.c:430 #11 0x7f14385dc23d in pw_main_loop_run ../src/pipewire/main-loop.c:148 #12 0x55b065d73722 in main ../src/daemon/pipewire.c:131 #13 0x7f143742928f (/usr/lib/libc.so.6+0x2928f)
It is not enough for `buffer` to be alive in its current scope because when execution enters that branch, `format` will be set to `fmt`, which points inside `buffer`. And since `format` is used outside that scope, `buffer` must live longer. This was detected by ASAN when Audacity was starting up. ==25007==ERROR: AddressSanitizer: stack-use-after-scope on address 0x7ffdbcfef560 at pc 0x7fe44ca95db3 bp 0x7ffdbcfeeda0 sp 0x7ffdbcfeed90 READ of size 4 at 0x7ffdbcfef560 thread T0 #0 0x7fe44ca95db2 in spa_pod_parser_pod ../spa/include/spa/pod/parser.h:67 #1 0x7fe44ca9a805 in spa_format_parse ../spa/include/spa/param/format-utils.h:44 #2 0x7fe44cad293a in port_set_format ../spa/plugins/audioconvert/audioconvert.c:1934 #3 0x7fe44cadad14 in impl_node_port_set_param ../spa/plugins/audioconvert/audioconvert.c:2038 #4 0x7fe44ca587e2 in configure_format ../spa/plugins/audioconvert/audioadapter.c:509 #5 0x7fe44ca60dff in negotiate_format ../spa/plugins/audioconvert/audioadapter.c:822 #6 0x7fe44ca62bbf in impl_node_send_command ../spa/plugins/audioconvert/audioadapter.c:846 #7 0x7fe45ea1c2f1 in node_update_state ../src/pipewire/impl-node.c:407 #8 0x7fe45ea5137e in pw_impl_node_set_state ../src/pipewire/impl-node.c:2251 #9 0x7fe45eb3355f in pw_work_queue_destroy ../src/pipewire/work-queue.c:142 #10 0x7fe45b2cd6f4 in source_event_func ../spa/plugins/support/loop.c:615 #11 0x7fe45b2c634f in loop_iterate ../spa/plugins/support/loop.c:452 #12 0x7fe45e9ebebc in spa_hook_list_clean ../spa/include/spa/utils/hook.h:395 #13 0x5561e03dc722 in main ../src/daemon/pipewire.c:131 #14 0x7fe45da3c28f (/usr/lib/libc.so.6+0x2328f) #15 0x7fe45da3c349 in __libc_start_main (/usr/lib/libc.so.6+0x23349) #16 0x5561e03db2a4 in _start ../sysdeps/x86_64/start.S:115 Address 0x7ffdbcfef560 is located in stack of thread T0 at offset 160 in frame #0 0x7fe44ca56fa9 in configure_format ../spa/plugins/audioconvert/audioadapter.c:475 This frame has 4 object(s): [32, 36) 'state' (line 493) [48, 56) 'fmt' (line 494) [80, 128) 'b' (line 492) [160, 4256) 'buffer' (line 491) <== Memory access at offset 160 is inside this variable
I attempted to upgrade from Pop!_OS 21.10 to 22.04. When I click the "download" button in the Settings, Settings crashes. Previously, it showed an error that I tracked to a dependency issue with Pipewire. Some sample output:
Naturally:
I'm not sure what to do after searching for a solution; I found two others who posted the same issue in the last month or two elsewhere, but it appears the results are inconclusive for them and they did not work for me.
After attempting some of the fixes, it seems nothing is showing up in qpwgraph except ALSA MIDI Through source and sink. Qjackctl won't even open.
Any help you can provide would be great. I'm hoping I can fix enough to upgrade to 22.04 because word is Pipewire comes by default with that upgrade.
The text was updated successfully, but these errors were encountered: