Description of problem: Python script: DIR_NAME = os.path.dirname(__file__) SSHD_CONFIG_TMPL = os.path.abspath(os.path.sep.join( [DIR_NAME, 'sshd_config.tmpl'])) SSHD_CONFIG = os.path.abspath(os.path.sep.join([DIR_NAME, 'sshd_config'])) from jinja2 import Template def make_config(self): with open(SSHD_CONFIG_TMPL) as fh: tmpl = fh.read() template = Template(tmpl) with open(SSHD_CONFIG, 'w') as fh: fh.write(template.render(parent_dir=os.path.abspath(DIR_NAME))) fh.write(os.linesep) File content for SSHD_CONFIG_TMPL looks like: Protocol 2 UsePAM yes HostbasedAuthentication no IgnoreUserKnownHosts yes ListenAddress 127.0.0.1 AcceptEnv LANG LC_* Subsystem sftp internal-sftp AuthorizedKeysFile {{parent_dir}}/authorized_keys UsePrivilegeSeparation no StrictModes no Version-Release number of selected component (if applicable): Python 3.9 (Fedora 34) and Python 3.10 (Rawhide) How reproducible: yes Steps to Reproduce: 1. try to execute above sample function 2. again, try to execute above sample function 3. again again again, try to execute above sample function Actual results: segmentation fault with backtrace Expected results: no error reported Additional info: Backtrace with Fedora 34: File "/usr/lib/python3.9/site-packages/jinja2/nodes.py", line 160 in iter_child_nodes File "/usr/lib/python3.9/site-packages/jinja2/nodes.py", line 179 in find_all File "/usr/lib/python3.9/site-packages/jinja2/nodes.py", line 182 in find_all File "/usr/lib/python3.9/site-packages/jinja2/nodes.py", line 182 in find_all File "/usr/lib/python3.9/site-packages/jinja2/nodes.py", line 172 in find File "/usr/lib/python3.9/site-packages/jinja2/compiler.py", line 733 in visit_Template File "/usr/lib/python3.9/site-packages/jinja2/visitor.py", line 32 in visit File "/usr/lib/python3.9/site-packages/jinja2/compiler.py", line 87 in generate File "/usr/lib/python3.9/site-packages/jinja2/environment.py", line 586 in _generate File "/usr/lib/python3.9/site-packages/jinja2/environment.py", line 629 in compile File "/usr/lib/python3.9/site-packages/jinja2/environment.py", line 941 in from_string File "/usr/lib/python3.9/site-packages/jinja2/environment.py", line 1031 in __new__ […] File "/usr/lib/python3.9/site-packages/_pytest/unittest.py", line 159 in fixture File "/usr/lib/python3.9/site-packages/_pytest/fixtures.py", line 925 in call_fixture_func File "/usr/lib/python3.9/site-packages/_pytest/fixtures.py", line 1126 in pytest_fixture_setup File "/usr/lib/python3.9/site-packages/pluggy/callers.py", line 187 in _multicall File "/usr/lib/python3.9/site-packages/pluggy/manager.py", line 84 in <lambda> File "/usr/lib/python3.9/site-packages/pluggy/manager.py", line 93 in _hookexec File "/usr/lib/python3.9/site-packages/pluggy/hooks.py", line 286 in __call__ File "/usr/lib/python3.9/site-packages/_pytest/fixtures.py", line 1072 in execute File "/usr/lib/python3.9/site-packages/_pytest/fixtures.py", line 687 in _compute_fixture_value File "/usr/lib/python3.9/site-packages/_pytest/fixtures.py", line 601 in _get_active_fixturedef File "/usr/lib/python3.9/site-packages/_pytest/fixtures.py", line 581 in getfixturevalue File "/usr/lib/python3.9/site-packages/_pytest/fixtures.py", line 568 in _fillfixtures File "/usr/lib/python3.9/site-packages/_pytest/unittest.py", line 197 in setup File "/usr/lib/python3.9/site-packages/_pytest/runner.py", line 449 in prepare File "/usr/lib/python3.9/site-packages/_pytest/runner.py", line 150 in pytest_runtest_setup File "/usr/lib/python3.9/site-packages/pluggy/callers.py", line 187 in _multicall File "/usr/lib/python3.9/site-packages/pluggy/manager.py", line 84 in <lambda> File "/usr/lib/python3.9/site-packages/pluggy/manager.py", line 93 in _hookexec File "/usr/lib/python3.9/site-packages/pluggy/hooks.py", line 286 in __call__ File "/usr/lib/python3.9/site-packages/_pytest/runner.py", line 255 in <lambda> File "/usr/lib/python3.9/site-packages/_pytest/runner.py", line 311 in from_call File "/usr/lib/python3.9/site-packages/_pytest/runner.py", line 254 in call_runtest_hook File "/usr/lib/python3.9/site-packages/_pytest/runner.py", line 215 in call_and_report File "/usr/lib/python3.9/site-packages/_pytest/runner.py", line 120 in runtestprotocol File "/usr/lib/python3.9/site-packages/_pytest/runner.py", line 109 in pytest_runtest_protocol File "/usr/lib/python3.9/site-packages/pluggy/callers.py", line 187 in _multicall File "/usr/lib/python3.9/site-packages/pluggy/manager.py", line 84 in <lambda> File "/usr/lib/python3.9/site-packages/pluggy/manager.py", line 93 in _hookexec File "/usr/lib/python3.9/site-packages/pluggy/hooks.py", line 286 in __call__ File "/usr/lib/python3.9/site-packages/_pytest/main.py", line 348 in pytest_runtestloop File "/usr/lib/python3.9/site-packages/pluggy/callers.py", line 187 in _multicall File "/usr/lib/python3.9/site-packages/pluggy/manager.py", line 84 in <lambda> File "/usr/lib/python3.9/site-packages/pluggy/manager.py", line 93 in _hookexec File "/usr/lib/python3.9/site-packages/pluggy/hooks.py", line 286 in __call__ File "/usr/lib/python3.9/site-packages/_pytest/main.py", line 323 in _main File "/usr/lib/python3.9/site-packages/_pytest/main.py", line 269 in wrap_session File "/usr/lib/python3.9/site-packages/_pytest/main.py", line 316 in pytest_cmdline_main File "/usr/lib/python3.9/site-packages/pluggy/callers.py", line 187 in _multicall File "/usr/lib/python3.9/site-packages/pluggy/manager.py", line 84 in <lambda> File "/usr/lib/python3.9/site-packages/pluggy/manager.py", line 93 in _hookexec File "/usr/lib/python3.9/site-packages/pluggy/hooks.py", line 286 in __call__ Backtrace with Rawhide: File "/usr/lib/python3.10/site-packages/jinja2/lexer.py", line 706 in tokeniter File "/usr/lib/python3.10/site-packages/jinja2/lexer.py", line 624 in wrap File "/usr/lib/python3.10/site-packages/jinja2/lexer.py", line 389 in __next__ File "/usr/lib/python3.10/site-packages/jinja2/lexer.py", line 335 in __init__ File "/usr/lib/python3.10/site-packages/jinja2/lexer.py", line 613 in tokenize File "/usr/lib/python3.10/site-packages/jinja2/environment.py", line 656 in _tokenize File "/usr/lib/python3.10/site-packages/jinja2/parser.py", line 60 in __init__ File "/usr/lib/python3.10/site-packages/jinja2/environment.py", line 606 in _parse File "/usr/lib/python3.10/site-packages/jinja2/environment.py", line 749 in compile File "/usr/lib/python3.10/site-packages/jinja2/environment.py", line 1092 in from_string File "/usr/lib/python3.10/site-packages/jinja2/environment.py", line 1208 in __new__ […] File "/usr/lib/python3.10/site-packages/_pytest/unittest.py", line 159 in fixture File "/usr/lib/python3.10/site-packages/_pytest/fixtures.py", line 925 in call_fixture_func File "/usr/lib/python3.10/site-packages/_pytest/fixtures.py", line 1126 in pytest_fixture_setup File "/usr/lib/python3.10/site-packages/pluggy/_callers.py", line 39 in _multicall File "/usr/lib/python3.10/site-packages/pluggy/_manager.py", line 80 in _hookexec File "/usr/lib/python3.10/site-packages/pluggy/_hooks.py", line 265 in __call__ File "/usr/lib/python3.10/site-packages/_pytest/fixtures.py", line 1072 in execute File "/usr/lib/python3.10/site-packages/_pytest/fixtures.py", line 687 in _compute_fixture_value File "/usr/lib/python3.10/site-packages/_pytest/fixtures.py", line 601 in _get_active_fixturedef File "/usr/lib/python3.10/site-packages/_pytest/fixtures.py", line 581 in getfixturevalue File "/usr/lib/python3.10/site-packages/_pytest/fixtures.py", line 568 in _fillfixtures File "/usr/lib/python3.10/site-packages/_pytest/unittest.py", line 197 in setup File "/usr/lib/python3.10/site-packages/_pytest/runner.py", line 449 in prepare File "/usr/lib/python3.10/site-packages/_pytest/runner.py", line 150 in pytest_runtest_setup File "/usr/lib/python3.10/site-packages/pluggy/_callers.py", line 39 in _multicall File "/usr/lib/python3.10/site-packages/pluggy/_manager.py", line 80 in _hookexec File "/usr/lib/python3.10/site-packages/pluggy/_hooks.py", line 265 in __call__ File "/usr/lib/python3.10/site-packages/_pytest/runner.py", line 255 in <lambda> File "/usr/lib/python3.10/site-packages/_pytest/runner.py", line 311 in from_call File "/usr/lib/python3.10/site-packages/_pytest/runner.py", line 254 in call_runtest_hook File "/usr/lib/python3.10/site-packages/_pytest/runner.py", line 215 in call_and_report File "/usr/lib/python3.10/site-packages/_pytest/runner.py", line 120 in runtestprotocol File "/usr/lib/python3.10/site-packages/_pytest/runner.py", line 109 in pytest_runtest_protocol File "/usr/lib/python3.10/site-packages/pluggy/_callers.py", line 39 in _multicall File "/usr/lib/python3.10/site-packages/pluggy/_manager.py", line 80 in _hookexec File "/usr/lib/python3.10/site-packages/pluggy/_hooks.py", line 265 in __call__ File "/usr/lib/python3.10/site-packages/_pytest/main.py", line 348 in pytest_runtestloop File "/usr/lib/python3.10/site-packages/pluggy/_callers.py", line 39 in _multicall File "/usr/lib/python3.10/site-packages/pluggy/_manager.py", line 80 in _hookexec File "/usr/lib/python3.10/site-packages/pluggy/_hooks.py", line 265 in __call__ File "/usr/lib/python3.10/site-packages/_pytest/main.py", line 323 in _main File "/usr/lib/python3.10/site-packages/_pytest/main.py", line 269 in wrap_session File "/usr/lib/python3.10/site-packages/_pytest/main.py", line 316 in pytest_cmdline_main File "/usr/lib/python3.10/site-packages/pluggy/_callers.py", line 39 in _multicall File "/usr/lib/python3.10/site-packages/pluggy/_manager.py", line 80 in _hookexec File "/usr/lib/python3.10/site-packages/pluggy/_hooks.py", line 265 in __call__ File "/usr/lib/python3.10/site-packages/_pytest/config/__init__.py", line 162 in main File "/usr/lib/python3.10/site-packages/_pytest/config/__init__.py", line 185 in console_main File "/usr/bin/pytest", line 33 in <module>
Cannot reproduce. Using the files you provided, the example works fine for me.
Please keep this bug open till found possible solution. Crashes happen while execution of tests for python-ssh2-python package. Therefore will see if there are any more information available to consider.
Those tests are running inside mock. Maybe memory leak or restricted resources?
Please provide more info why you think this is bug in jinja.
Package python-ssh2-python as the cause is orphaned.