Skip to content

10.1.x: Crash in HttpSM::setup_cache_write_transfer #12137

Description

@bneradt

When testing 10.1.x on a production box, I'm seeing the following crash with some frequency:

#0  0x000000000058092d in HttpSM::setup_cache_write_transfer (name=0x8ded65 "cache write", skip_bytes=956, store_info=0x7fe896dfe180, source_vc=0x7fe896ecdd90, c_sm=0x7fe896e00878, this=0x7fe896dfe000) at /sd/workspace/src/git.ouryahoo.com/Edge/build/_scm/trafficserver10.1/src/proxy/http/HttpSM.cc:6838
#1  HttpSM::perform_cache_write_action (this=this@entry=0x7fe896dfe000) at /sd/workspace/src/git.ouryahoo.com/Edge/build/_scm/trafficserver10.1/src/proxy/http/HttpSM.cc:6490
#2  0x0000000000598879 in HttpSM::handle_api_return (this=0x7fe896dfe000) at /sd/workspace/src/git.ouryahoo.com/Edge/build/_scm/trafficserver10.1/src/proxy/http/HttpSM.cc:1650
#3  0x000000000058fd9e in HttpSM::state_api_callout (this=0x7fe896dfe000, event=<optimized out>) at /sd/workspace/src/git.ouryahoo.com/Edge/build/_scm/trafficserver10.1/src/proxy/http/HttpSM.cc:1511
#4  0x0000000000596ede in HttpSM::state_api_callback (this=this@entry=0x7fe896dfe000, event=event@entry=60000, data=data@entry=0x0) at /sd/workspace/src/git.ouryahoo.com/Edge/build/_scm/trafficserver10.1/src/proxy/http/HttpSM.cc:1311
#5  0x00007ff217303373 in TSHttpTxnReenable (txnp=0x7fe896dfe000, event=TS_EVENT_HTTP_CONTINUE) at /sd/workspace/src/git.ouryahoo.com/Edge/build/_scm/trafficserver10.1/src/api/InkAPI.cc:5045

The crash is a nullptr dereference:

#0  0x000000000058092d in HttpSM::setup_cache_write_transfer (name=0x8ded65 "cache write", skip_bytes=956, store_info=0x7fe896dfe180, source_vc=0x7fe896ecdd90, c_sm=0x7fe896e00878, this=0x7fe896dfe000) at /sd/workspace/src/git.ouryahoo.com/Edge/build/_scm/trafficserver10.1/src/proxy/http/HttpSM.cc:6838
6838      c_sm->cache_write_vc->set_http_info(store_info);
(gdb) p c_sm->cache_write_vc
$3 = (CacheVConnection *) 0x0

Reverting #11542 alleviates the crash.

For reference, I'm testing against 10.1.x commit:

commit 42f2920bce6df86e0e21a8de85e33a1795e9eff5
Author: Chris McFarlen <chris@mcfarlen.us>
Date:   Tue Mar 11 11:51:42 2025 -0500

    Move defaulting install prefix before layout setup (#12085)
    
    Co-authored-by: Chris McFarlen <cmcfarlen@apple.com>
    (cherry picked from commit 9a1ef119f3b7a017583c9aa5d088b2437101b92a)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions