Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Register
  • Sign in
  • pygobject pygobject
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 303
    • Issues 303
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 32
    • Merge requests 32
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • GNOMEGNOME
  • pygobjectpygobject
  • Issues
  • #535
Closed
Open
Issue created Aug 05, 2022 by Michael Catanzaro@mcatanzaroDeveloper

Broke fwupd build

A recent pygobject change broke the fwupd build:

[66/415] Generating plugins/uefi-capsule/ux-capsule-tar with a custom command
1887        FAILED: plugins/uefi-capsule/uefi-capsule-ux.tar.xz 
1888        /usr/bin/python3 /buildstream/gnome/core-deps/fwupd.bst/plugins/uefi-capsule/make-images.py --podir /buildstream/gnome/core-deps/fwupd.bst/po --label 'Installing firmware update…' --out plugins/uefi-capsule/uefi-capsule-ux.tar.xz

It's crashing. Backtrace:

0x00007fffef691010 in ?? ()
(gdb) bt
#0  0x00007fffef691010 in  ()
#1  0x00007ffff06fa6a1 in pango_fc_fontset_foreach (fontset=0x5555557e2f20 [PangoFcFontset], func=0x7fffef691010, data=0x555555871f70) at ../pango/pangofc-fontmap.c:1308
#2  0x00007ffff6a8b056 in ffi_call_unix64 () at ../src/x86/unix64.S:105
#3  0x00007ffff6a8907b in ffi_call_int (cif=<optimized out>, fn=<optimized out>, rvalue=<optimized out>, avalue=<optimized out>, closure=<optimized out>)
    at ../src/x86/ffi64.c:672
#4  0x00007ffff6b637f6 in pygi_invoke_c_callable (function_cache=0x5555557d9a50, state=<optimized out>, py_args=<optimized out>, py_kwargs=<optimized out>)
    at ../gi/pygi-invoke.c:684
#5  0x00007ffff6b656d1 in pygi_function_cache_invoke (function_cache=<optimized out>, py_args=py_args@entry=0x7ffff6697bc0, py_kwargs=py_kwargs@entry=0x0)
    at ../gi/pygi-cache.c:862
#6  0x00007ffff6b64148 in pygi_callable_info_invoke (user_data=0x0, cache=<optimized out>, kwargs=0x0, py_args=0x7ffff6697bc0, info=<optimized out>)
    at ../gi/pygi-invoke.c:727
#7  0x00007ffff6b54c86 in _callable_info_call (self=0x7ffff64adc30, args=0x7ffff6615400, kwargs=0x0) at ../gi/pygi-info.c:548
#8  0x00007ffff7d7b06c in _PyObject_MakeTpCall
    (tstate=0x5555555601b0, callable=callable@entry=0x7ffff64adc30, args=args@entry=0x5555557f07f0, nargs=<optimized out>, keywords=keywords@entry=0x0)
    at ../Objects/call.c:215
#9  0x00007ffff7cb87f1 in _PyObject_VectorcallTstate (kwnames=0x0, nargsf=9223372036854775810, args=0x5555557f07f0, callable=0x7ffff64adc30, tstate=<optimized out>)
    at ../Include/cpython/abstract.h:112
#10 _PyObject_VectorcallTstate (kwnames=0x0, nargsf=9223372036854775810, args=0x5555557f07f0, callable=0x7ffff64adc30, tstate=<optimized out>)
    at ../Include/cpython/abstract.h:99
#11 PyObject_Vectorcall (kwnames=0x0, nargsf=9223372036854775810, args=<optimized out>, callable=0x7ffff64adc30) at ../Include/cpython/abstract.h:123
#12 call_function (kwnames=0x0, oparg=2, pp_stack=<synthetic pointer>, trace_info=0x7fffffffe110, tstate=0x5555555601b0) at ../Python/ceval.c:5869
#13 _PyEval_EvalFrameDefault (tstate=<optimized out>, f=<optimized out>, throwflag=<optimized out>) at ../Python/ceval.c:4181
#14 0x00007ffff7e0ba15 in _PyEval_EvalFrame (throwflag=0, f=0x5555557f0560, tstate=0x5555555601b0) at ../Include/internal/pycore_ceval.h:46
#15 _PyEval_Vector (tstate=0x5555555601b0, con=<optimized out>, locals=<optimized out>, args=<optimized out>, argcount=<optimized out>, kwnames=<optimized out>)
    at ../Python/ceval.c:5065
#16 0x00007ffff7cb62a4 in _PyObject_VectorcallTstate (kwnames=0x0, nargsf=<optimized out>, args=0x7ffff7821bb8, callable=0x7ffff669b880, tstate=0x5555555601b0)
    at ../Include/cpython/abstract.h:114
#17 PyObject_Vectorcall (kwnames=0x0, nargsf=<optimized out>, args=<optimized out>, callable=<optimized out>) at ../Include/cpython/abstract.h:123
#18 call_function (kwnames=0x0, oparg=<optimized out>, pp_stack=<synthetic pointer>, trace_info=0x7fffffffe340, tstate=0x5555555601b0) at ../Python/ceval.c:5869
#19 _PyEval_EvalFrameDefault (tstate=<optimized out>, f=<optimized out>, throwflag=<optimized out>) at ../Python/ceval.c:4213
#20 0x00007ffff7e0ba15 in _PyEval_EvalFrame (throwflag=0, f=0x7ffff7821a40, tstate=0x5555555601b0) at ../Include/internal/pycore_ceval.h:46
#21 _PyEval_Vector
    (tstate=tstate@entry=0x5555555601b0, con=con@entry=0x7fffffffe4c0, locals=locals@entry=0x7ffff7735640, args=args@entry=0x0, argcount=argcount@entry=0, kwnames=kwnames@entry=0x0) at ../Python/ceval.c:5065
#22 0x00007ffff7e0c086 in PyEval_EvalCode (co=co@entry=0x7ffff77f1b00, globals=globals@entry=0x7ffff7735640, locals=locals@entry=0x7ffff7735640) at ../Python/ceval.c:1134
#23 0x00007ffff7e0c104 in run_eval_code_obj
    (tstate=tstate@entry=0x5555555601b0, co=co@entry=0x7ffff77f1b00, globals=globals@entry=0x7ffff7735640, locals=locals@entry=0x7ffff7735640) at ../Python/pythonrun.c:1291
#24 0x00007ffff7e6316b in run_mod
    (mod=mod@entry=0x55555569f390, filename=filename@entry=0x7ffff7786530, globals=globals@entry=0x7ffff7735640, locals=locals@entry=0x7ffff7735640, flags=flags@entry=0x7fffffffe6d8, arena=arena@entry=0x7ffff77fbb50) at ../Python/pythonrun.c:1312
#25 0x00007ffff7e6fac8 in pyrun_file
    (fp=fp@entry=0x555555559370, filename=filename@entry=0x7ffff7786530, start=start@entry=257, globals=globals@entry=0x7ffff7735640, locals=locals@entry=0x7ffff7735640, closeit=closeit@entry=1, flags=<optimized out>) at ../Python/pythonrun.c:1208
#26 0x00007ffff7e6fc3f in _PyRun_SimpleFileObject
    (fp=fp@entry=0x555555559370, filename=filename@entry=0x7ffff7786530, closeit=closeit@entry=1, flags=flags@entry=0x7fffffffe6d8) at ../Python/pythonrun.c:456
#27 0x00007ffff7e701b9 in _PyRun_AnyFileObject (fp=0x555555559370, filename=filename@entry=0x7ffff7786530, closeit=closeit@entry=1, flags=flags@entry=0x7fffffffe6d8)
    at ../Python/pythonrun.c:90
#28 0x00007ffff7e730e0 in pymain_run_file_obj (skip_source_first_line=0, filename=0x7ffff7786530, program_name=0x7ffff78a6dd0) at ../Modules/main.c:353
#29 pymain_run_file (config=0x555555587c30) at ../Modules/main.c:372
#30 pymain_run_python (exitcode=0x7fffffffe6d0) at ../Modules/main.c:587
--Type <RET> for more, q to quit, c to continue without paging--
#31 Py_RunMain () at ../Modules/main.c:666
#32 0x00007ffff7e73596 in pymain_main (args=0x7fffffffe7d0) at ../Modules/main.c:696
#33 Py_BytesMain (argc=<optimized out>, argv=<optimized out>) at ../Modules/main.c:720
#34 0x00007ffff7a5e54a in __libc_start_call_main (main=main@entry=0x555555555060 <main>, argc=argc@entry=8, argv=argv@entry=0x7fffffffe968)
    at ../sysdeps/nptl/libc_start_call_main.h:58
#35 0x00007ffff7a5e60b in __libc_start_main_impl
     (main=0x555555555060 <main>, argc=8, argv=0x7fffffffe968, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=<optimized out>)
    at ../csu/libc-start.c:389
#36 0x0000555555555095 in _start () 

The most suspicious commit is fc776c20.

Any ideas? Maybe an ownership bug somewhere else was hidden by the fact that g_callable_info_free_closure() was broken and not actually freeing anything?

CC @hughsie

Assignee
Assign to
Time tracking