Skip to content

backport vendor/bin/shared_modem_platform#292

Merged
thestinger merged 2 commits intoGrapheneOS:16-qpr2from
inthewaves:shamp-backport
Mar 5, 2026
Merged

backport vendor/bin/shared_modem_platform#292
thestinger merged 2 commits intoGrapheneOS:16-qpr2from
inthewaves:shamp-backport

Conversation

@inthewaves
Copy link
Copy Markdown
Member

Using shared_modem_platform from 16 QPR2 with other 16 QPR3 backports results in bluejay crashing,
but it's unclear why other devices don't seem to crash.

bluejay crash logs:

 1002-1002  shamp                   shared_modem_platform                I  Starting the Shared Modem Platform server!
 1002-1002  shamp                   shared_modem_platform                I  Updating Device Info:
 1002-1002  shamp                   shared_modem_platform                I  platform: 2
 1002-1002  shamp                   shared_modem_platform                I  product: 5
 1002-1002  shamp                   shared_modem_platform                I  board (stage): 6
 1002-1002  shamp                   shared_modem_platform                I  major: 1
 1002-1002  shamp                   shared_modem_platform                I  minor: 0
 1002-1002  shamp                   shared_modem_platform                I  variant: 0
 1002-1002  shamp                   shared_modem_platform                I  rf_sku (modem_sku): 3
 1002-1002  shamp                   shared_modem_platform                I  modem_hw: 0
 1002-1002  shamp                   shared_modem_platform                I  rf_sub: 0
 1002-1002  shamp                   shared_modem_platform                I  rf_cfg: 0
 1002-1002  shamp                   shared_modem_platform                I  Starting rpc server: ModemSvc
 1002-1002  shamp                   shared_modem_platform                I  IO handler started for /dev/oem_ipc1
 1002-1002  shamp                   shared_modem_platform                I  Using a Lassen specific implementation of the shared_modem_platform!
 1002-1002  shamp                   shared_modem_platform                I  Current shared modem platform version: 2
 1002-1002  shamp                   shared_modem_platform                I  About to start creating shared_modem_platform instance.
 1002-1002  shamp                   shared_modem_platform                I  Starting and creating threadpool of size: 1
 1002-1002  cutils-trace            shared_modem_platform                E  Error opening trace file: No such file or directory (2)
 1002-1002  shamp                   shared_modem_platform                I  Successfully registered instance for the shared_modem_platform.
 1002-1052  shamp                   shared_modem_platform                I  Open IO channel, fd: 7 channel: /dev/oem_ipc1
 1002-1049  shamp                   shared_modem_platform                I  Start modem state monitoring
 1002-1049  shamp                   shared_modem_platform                I  State Monitor: Modem state changed from INVALID to OFFLINE
 1002-1055  shamp                   shared_modem_platform                I  Umi server thread started.
 1052-1052  cpif                    shared_modem_platform                I  ipc_open: oem_ipc1 (opened 1) by shared_modem_pl
 1049-1049  cpif                    shared_modem_platform                I  bootdump_open: umts_boot0 (opened 2) by shared_modem_pl
 1002-1051  shamp                   shared_modem_platform                I  RPC server: ModemSvc start initiated in background thread.
 1002-1051  shamp                   shared_modem_platform                I  IO handler started for /dev/oem_ipc3
 1002-1051  shamp                   shared_modem_platform                I  RPC server: ModemSvc started successfully in background thread.
 1002-1056  shamp                   shared_modem_platform                I  Open IO channel, fd: 10 channel: /dev/oem_ipc3
 1056-1056  cpif                    shared_modem_platform                I  ipc_open: oem_ipc3 (opened 1) by shared_modem_pl
 1002-1049  shamp                   shared_modem_platform                I  Poll timeout. interval=2000
 1002-1049  shamp                   shared_modem_platform                I  State Monitor: Modem state changed from OFFLINE to BOOTING
 1002-1049  shamp                   shared_modem_platform                I  State Monitor: Modem state changed from BOOTING to ONLINE
 1002-1049  shamp                   shared_modem_platform                I  All message servers are ready.
 1049-1049  cpif                    shared_modem_platform                I  ipc_write: oem_ipc3: wait for INIT_END done (150ms) cnt:1 last:0 cmd:0xC2
 1002-1052  shamp                   shared_modem_platform                E  ParseFromArray failed
 1002-1052  shamp                   shared_modem_platform                E  ProcessReceivedMessage returns error: INTERNAL
 1002-1052  shamp                   shared_modem_platform                E  ParseFromArray failed
 1002-1052  shamp                   shared_modem_platform                E  ProcessReceivedMessage returns error: INTERNAL
 1002-1052  shamp                   shared_modem_platform                E  ParseFromArray failed
 1002-1052  shamp                   shared_modem_platform                E  ProcessReceivedMessage returns error: INTERNAL
 1002-1052  shamp                   shared_modem_platform                E  ParseFromArray failed
 1002-1052  shamp                   shared_modem_platform                E  ProcessReceivedMessage returns error: INTERNAL
 1002-1052  shamp                   shared_modem_platform                E  ParseFromArray failed
 1002-1052  shamp                   shared_modem_platform                E  ProcessReceivedMessage returns error: INTERNAL
 1002-1052  shamp                   shared_modem_platform                E  ParseFromArray failed
 1002-1052  shamp                   shared_modem_platform                E  ProcessReceivedMessage returns error: INTERNAL
 1002-1049  shamp                   shared_modem_platform                W  Rpc Capability request sent ERROR: DEADLINE_EXCEEDED
 1002-1049  shamp                   shared_modem_platform                I  Set active handler to Legacy!
 1002-1049  shamp                   shared_modem_platform                I  Read config: /vendor/etc/modem_stat.conf
 1002-1049  shamp                   shared_modem_platform                I  Send debug stat config: uim_statistics, v=-1, t=0
 1002-1049  shamp                   shared_modem_platform                I  Sending modemstat enable request
 1002-1049  libc++abi               shared_modem_platform                E  Pure virtual function called!
 1002-1049  libc                    shared_modem_platform                A  Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 1049 (shared_modem_pl), pid 1002 (binder:1002_2)
 3038-3038  cutils-trace            crash_dump64                         E  Error opening trace file: No such file or directory (2)
 3039-3039  crash_dump64            crash_dump64                         I  obtaining output fd from tombstoned, type: kDebuggerdTombstoneProto
 3039-3039  crash_dump64            crash_dump64                         I  performing dump of process 1002 (target tid = 1049)
 3039-3039  DEBUG                   crash_dump64                         A  *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
 3039-3039  DEBUG                   crash_dump64                         A  Build fingerprint: 'google/bluejay/bluejay:16/BP4A.251205.006/2026030401:userdebug/test-keys'
 3039-3039  DEBUG                   crash_dump64                         A  Kernel Release: '6.1.162-android14-11-g4d32cd6f478f'
 3039-3039  DEBUG                   crash_dump64                         A  Revision: 'MP1.0'
 3039-3039  DEBUG                   crash_dump64                         A  ABI: 'arm64'
 3039-3039  DEBUG                   crash_dump64                         A  Timestamp: 2026-03-04 21:24:12.402149340-0500
 3039-3039  DEBUG                   crash_dump64                         A  Process uptime: 13s
 3039-3039  DEBUG                   crash_dump64                         A  Executable: /vendor/bin/shared_modem_platform
 3039-3039  DEBUG                   crash_dump64                         A  Cmdline: /vendor/bin/shared_modem_platform -s
 3039-3039  DEBUG                   crash_dump64                         A  pid: 1002, tid: 1049, name: shared_modem_pl  >>> /vendor/bin/shared_modem_platform <<<
 3039-3039  DEBUG                   crash_dump64                         A  uid: 1001
 3039-3039  DEBUG                   crash_dump64                         A  tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE)
 3039-3039  DEBUG                   crash_dump64                         A  signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
 3039-3039  DEBUG                   crash_dump64                         A  Abort message: 'Pure virtual function called!'
 3039-3039  DEBUG                   crash_dump64                         A      x0  0000000000000000  x1  0000000000000419  x2  0000000000000006  x3  0000c6393573c610
 3039-3039  DEBUG                   crash_dump64                         A      x4  0000000000000010  x5  0000000000000010  x6  0000000000000010  x7  7f7f7f7f7f7f7f7f
 3039-3039  DEBUG                   crash_dump64                         A      x8  00000000000000f0  x9  61e34ab428e25200  x10 0000000000000001  x11 0000c96147516e30
 3039-3039  DEBUG                   crash_dump64                         A      x12 0000000069a9137c  x13 000000007fffffff  x14 0000000000001e36  x15 00000000291eb14d
 3039-3039  DEBUG                   crash_dump64                         A      x16 0000c9614757f358  x17 0000c96147566ec0  x18 0000c6392da5c000  x19 00000000000003ea
 3039-3039  DEBUG                   crash_dump64                         A      x20 0000000000000419  x21 00000000ffffffff  x22 0000c6393573c830  x23 ffffff80ffffffc8
 3039-3039  DEBUG                   crash_dump64                         A      x24 0000c6393573c740  x25 0000b73de87ca6c4  x26 0000b73de87d0975  x27 b400c65ca4580120
 3039-3039  DEBUG                   crash_dump64                         A      x28 0000000000000000  x29 0000c6393573c690
 3039-3039  DEBUG                   crash_dump64                         A      lr  0000c961474ff288  sp  0000c6393573c610  pc  0000c961474ff2ac  pst 0000000000001000
 3039-3039  DEBUG                   crash_dump64                         A      esr 0000000000000000
 3039-3039  DEBUG                   crash_dump64                         A  15 total frames
 3039-3039  DEBUG                   crash_dump64                         A  backtrace:
 3039-3039  DEBUG                   crash_dump64                         A        #00 pc 000000000007c2ac  /apex/com.android.runtime/lib64/bionic/libc.so (abort+156) (BuildId: bddad1c467668efae27df87f4c84e901)
 3039-3039  DEBUG                   crash_dump64                         A        # 01 pc 0000000000081588  /vendor/lib64/libc++.so (__abort_message+256) (BuildId: c1178e02479441e4d5f533f88cd8ff05d8ef10a8)
 3039-3039  DEBUG                   crash_dump64                         A        # 02 pc 0000000000080f88  /vendor/lib64/libc++.so (__cxa_pure_virtual+20) (BuildId: c1178e02479441e4d5f533f88cd8ff05d8ef10a8)
 3039-3039  DEBUG                   crash_dump64                         A        # 03 pc 0000000000242238  /vendor/lib64/libprotobuf-cpp-full-4.25.8.so (google::protobuf::Message::GetTypeName() const+24) (BuildId: e6f2455d42d07a548554ec35aaa811d3)
 3039-3039  DEBUG                   crash_dump64                         A        # 04 pc 000000000015b68c  /vendor/lib64/libprotobuf-cpp-full-4.25.8.so (google::protobuf::MessageLite::SerializePartialToArray(void*, int) const+236) (BuildId: e6f2455d42d07a548554ec35aaa811d3)
 3039-3039  DEBUG                   crash_dump64                         A        # 05 pc 00000000002f3330  /vendor/bin/shared_modem_platform (SitMessage::SerializeSendMessage(char*, int)+16) (BuildId: 4c03fb29e43d9151b71d7ba3fc0f275c)
 3039-3039  DEBUG                   crash_dump64                         A        # 06 pc 00000000002ee0e0  /vendor/bin/shared_modem_platform (MessageServerLegacy::SendRequest(SitMessage*, unsigned int)+112) (BuildId: 4c03fb29e43d9151b71d7ba3fc0f275c)
 3039-3039  DEBUG                   crash_dump64                         A        # 07 pc 00000000002f1fc8  /vendor/bin/shared_modem_platform (ModemSvcServiceHandler::SendServiceRequest(pixel_modem::shared_modem_platform_core::RequestType)+3720) (BuildId: 4c03fb29e43d9151b71d7ba3fc0f275c)
 3039-3039  DEBUG                   crash_dump64                         A        # 08 pc 00000000002ee4ac  /vendor/bin/shared_modem_platform (MessageServerLegacy::SendServiceRequest(pixel_modem::shared_modem_platform_core::RequestType, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&)+12) (BuildId: 4c03fb29e43d9151b71d7ba3fc0f275c)
 3039-3039  DEBUG                   crash_dump64                         A        # 09 pc 000000000030f4e0  /vendor/bin/shared_modem_platform (pixel_modem::shared_modem_platform_core::MessageCore::SendServiceRequest(pixel_modem::shared_modem_platform_core::RequestType, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&)+384) (BuildId: 4c03fb29e43d9151b71d7ba3fc0f275c)
 3039-3039  DEBUG                   crash_dump64                         A        # 10 pc 000000000030f090  /vendor/bin/shared_modem_platform (pixel_modem::shared_modem_platform_core::MessageCore::OnModemStateChanged(pixel_modem::shared_modem_platform_core::ModemStateTypeCommon)+672) (BuildId: 4c03fb29e43d9151b71d7ba3fc0f275c)
 3039-3039  DEBUG                   crash_dump64                         A        # 11 pc 00000000002eaa48  /vendor/bin/shared_modem_platform (pixel_modem::lassen::ModemStateMonitor::Run()+760) (BuildId: 4c03fb29e43d9151b71d7ba3fc0f275c)
 3039-3039  DEBUG                   crash_dump64                         A        # 12 pc 000000000033fd34  /vendor/bin/shared_modem_platform (pixel_modem::shared_modem_platform_core::Thread::ThreadProc(void*)+132) (BuildId: 4c03fb29e43d9151b71d7ba3fc0f275c)
 3039-3039  DEBUG                   crash_dump64                         A        # 13 pc 000000000008e8fc  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*) (.__uniq.67847048707805468364044055584648682506)+236) (BuildId: bddad1c467668efae27df87f4c84e901)
 3039-3039  DEBUG                   crash_dump64                         A        # 14 pc 000000000007f4a0  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: bddad1c467668efae27df87f4c84e901)

By backporting shared_modem_platform, crashes no longer happen, and error logs such as

 1002-1052  shamp                   shared_modem_platform                E  ParseFromArray failed
 1002-1052  shamp                   shared_modem_platform                E  ProcessReceivedMessage returns error: INTERNAL

no longer occur on bluejay.

Using shared_modem_platform from 16 QPR2 with other 16 QPR3 backports results in bluejay crashing,
but it's unclear why other devices don't seem to crash.

bluejay crash logs:

 1002-1002  shamp                   shared_modem_platform                I  Starting the Shared Modem Platform server!
 1002-1002  shamp                   shared_modem_platform                I  Updating Device Info:
 1002-1002  shamp                   shared_modem_platform                I  platform: 2
 1002-1002  shamp                   shared_modem_platform                I  product: 5
 1002-1002  shamp                   shared_modem_platform                I  board (stage): 6
 1002-1002  shamp                   shared_modem_platform                I  major: 1
 1002-1002  shamp                   shared_modem_platform                I  minor: 0
 1002-1002  shamp                   shared_modem_platform                I  variant: 0
 1002-1002  shamp                   shared_modem_platform                I  rf_sku (modem_sku): 3
 1002-1002  shamp                   shared_modem_platform                I  modem_hw: 0
 1002-1002  shamp                   shared_modem_platform                I  rf_sub: 0
 1002-1002  shamp                   shared_modem_platform                I  rf_cfg: 0
 1002-1002  shamp                   shared_modem_platform                I  Starting rpc server: ModemSvc
 1002-1002  shamp                   shared_modem_platform                I  IO handler started for /dev/oem_ipc1
 1002-1002  shamp                   shared_modem_platform                I  Using a Lassen specific implementation of the shared_modem_platform!
 1002-1002  shamp                   shared_modem_platform                I  Current shared modem platform version: 2
 1002-1002  shamp                   shared_modem_platform                I  About to start creating shared_modem_platform instance.
 1002-1002  shamp                   shared_modem_platform                I  Starting and creating threadpool of size: 1
 1002-1002  cutils-trace            shared_modem_platform                E  Error opening trace file: No such file or directory (2)
 1002-1002  shamp                   shared_modem_platform                I  Successfully registered instance for the shared_modem_platform.
 1002-1052  shamp                   shared_modem_platform                I  Open IO channel, fd: 7 channel: /dev/oem_ipc1
 1002-1049  shamp                   shared_modem_platform                I  Start modem state monitoring
 1002-1049  shamp                   shared_modem_platform                I  State Monitor: Modem state changed from INVALID to OFFLINE
 1002-1055  shamp                   shared_modem_platform                I  Umi server thread started.
 1052-1052  cpif                    shared_modem_platform                I  ipc_open: oem_ipc1 (opened 1) by shared_modem_pl
 1049-1049  cpif                    shared_modem_platform                I  bootdump_open: umts_boot0 (opened 2) by shared_modem_pl
 1002-1051  shamp                   shared_modem_platform                I  RPC server: ModemSvc start initiated in background thread.
 1002-1051  shamp                   shared_modem_platform                I  IO handler started for /dev/oem_ipc3
 1002-1051  shamp                   shared_modem_platform                I  RPC server: ModemSvc started successfully in background thread.
 1002-1056  shamp                   shared_modem_platform                I  Open IO channel, fd: 10 channel: /dev/oem_ipc3
 1056-1056  cpif                    shared_modem_platform                I  ipc_open: oem_ipc3 (opened 1) by shared_modem_pl
 1002-1049  shamp                   shared_modem_platform                I  Poll timeout. interval=2000
 1002-1049  shamp                   shared_modem_platform                I  State Monitor: Modem state changed from OFFLINE to BOOTING
 1002-1049  shamp                   shared_modem_platform                I  State Monitor: Modem state changed from BOOTING to ONLINE
 1002-1049  shamp                   shared_modem_platform                I  All message servers are ready.
 1049-1049  cpif                    shared_modem_platform                I  ipc_write: oem_ipc3: wait for INIT_END done (150ms) cnt:1 last:0 cmd:0xC2
 1002-1052  shamp                   shared_modem_platform                E  ParseFromArray failed
 1002-1052  shamp                   shared_modem_platform                E  ProcessReceivedMessage returns error: INTERNAL
 1002-1052  shamp                   shared_modem_platform                E  ParseFromArray failed
 1002-1052  shamp                   shared_modem_platform                E  ProcessReceivedMessage returns error: INTERNAL
 1002-1052  shamp                   shared_modem_platform                E  ParseFromArray failed
 1002-1052  shamp                   shared_modem_platform                E  ProcessReceivedMessage returns error: INTERNAL
 1002-1052  shamp                   shared_modem_platform                E  ParseFromArray failed
 1002-1052  shamp                   shared_modem_platform                E  ProcessReceivedMessage returns error: INTERNAL
 1002-1052  shamp                   shared_modem_platform                E  ParseFromArray failed
 1002-1052  shamp                   shared_modem_platform                E  ProcessReceivedMessage returns error: INTERNAL
 1002-1052  shamp                   shared_modem_platform                E  ParseFromArray failed
 1002-1052  shamp                   shared_modem_platform                E  ProcessReceivedMessage returns error: INTERNAL
 1002-1049  shamp                   shared_modem_platform                W  Rpc Capability request sent ERROR: DEADLINE_EXCEEDED
 1002-1049  shamp                   shared_modem_platform                I  Set active handler to Legacy!
 1002-1049  shamp                   shared_modem_platform                I  Read config: /vendor/etc/modem_stat.conf
 1002-1049  shamp                   shared_modem_platform                I  Send debug stat config: uim_statistics, v=-1, t=0
 1002-1049  shamp                   shared_modem_platform                I  Sending modemstat enable request
 1002-1049  libc++abi               shared_modem_platform                E  Pure virtual function called!
 1002-1049  libc                    shared_modem_platform                A  Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 1049 (shared_modem_pl), pid 1002 (binder:1002_2)
 3038-3038  cutils-trace            crash_dump64                         E  Error opening trace file: No such file or directory (2)
 3039-3039  crash_dump64            crash_dump64                         I  obtaining output fd from tombstoned, type: kDebuggerdTombstoneProto
 3039-3039  crash_dump64            crash_dump64                         I  performing dump of process 1002 (target tid = 1049)
 3039-3039  DEBUG                   crash_dump64                         A  *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
 3039-3039  DEBUG                   crash_dump64                         A  Build fingerprint: 'google/bluejay/bluejay:16/BP4A.251205.006/2026030401:userdebug/test-keys'
 3039-3039  DEBUG                   crash_dump64                         A  Kernel Release: '6.1.162-android14-11-g4d32cd6f478f'
 3039-3039  DEBUG                   crash_dump64                         A  Revision: 'MP1.0'
 3039-3039  DEBUG                   crash_dump64                         A  ABI: 'arm64'
 3039-3039  DEBUG                   crash_dump64                         A  Timestamp: 2026-03-04 21:24:12.402149340-0500
 3039-3039  DEBUG                   crash_dump64                         A  Process uptime: 13s
 3039-3039  DEBUG                   crash_dump64                         A  Executable: /vendor/bin/shared_modem_platform
 3039-3039  DEBUG                   crash_dump64                         A  Cmdline: /vendor/bin/shared_modem_platform -s
 3039-3039  DEBUG                   crash_dump64                         A  pid: 1002, tid: 1049, name: shared_modem_pl  >>> /vendor/bin/shared_modem_platform <<<
 3039-3039  DEBUG                   crash_dump64                         A  uid: 1001
 3039-3039  DEBUG                   crash_dump64                         A  tagged_addr_ctrl: 0000000000000001 (PR_TAGGED_ADDR_ENABLE)
 3039-3039  DEBUG                   crash_dump64                         A  signal 6 (SIGABRT), code -1 (SI_QUEUE), fault addr --------
 3039-3039  DEBUG                   crash_dump64                         A  Abort message: 'Pure virtual function called!'
 3039-3039  DEBUG                   crash_dump64                         A      x0  0000000000000000  x1  0000000000000419  x2  0000000000000006  x3  0000c6393573c610
 3039-3039  DEBUG                   crash_dump64                         A      x4  0000000000000010  x5  0000000000000010  x6  0000000000000010  x7  7f7f7f7f7f7f7f7f
 3039-3039  DEBUG                   crash_dump64                         A      x8  00000000000000f0  x9  61e34ab428e25200  x10 0000000000000001  x11 0000c96147516e30
 3039-3039  DEBUG                   crash_dump64                         A      x12 0000000069a9137c  x13 000000007fffffff  x14 0000000000001e36  x15 00000000291eb14d
 3039-3039  DEBUG                   crash_dump64                         A      x16 0000c9614757f358  x17 0000c96147566ec0  x18 0000c6392da5c000  x19 00000000000003ea
 3039-3039  DEBUG                   crash_dump64                         A      x20 0000000000000419  x21 00000000ffffffff  x22 0000c6393573c830  x23 ffffff80ffffffc8
 3039-3039  DEBUG                   crash_dump64                         A      x24 0000c6393573c740  x25 0000b73de87ca6c4  x26 0000b73de87d0975  x27 b400c65ca4580120
 3039-3039  DEBUG                   crash_dump64                         A      x28 0000000000000000  x29 0000c6393573c690
 3039-3039  DEBUG                   crash_dump64                         A      lr  0000c961474ff288  sp  0000c6393573c610  pc  0000c961474ff2ac  pst 0000000000001000
 3039-3039  DEBUG                   crash_dump64                         A      esr 0000000000000000
 3039-3039  DEBUG                   crash_dump64                         A  15 total frames
 3039-3039  DEBUG                   crash_dump64                         A  backtrace:
 3039-3039  DEBUG                   crash_dump64                         A        #00 pc 000000000007c2ac  /apex/com.android.runtime/lib64/bionic/libc.so (abort+156) (BuildId: bddad1c467668efae27df87f4c84e901)
 3039-3039  DEBUG                   crash_dump64                         A        # 01 pc 0000000000081588  /vendor/lib64/libc++.so (__abort_message+256) (BuildId: c1178e02479441e4d5f533f88cd8ff05d8ef10a8)
 3039-3039  DEBUG                   crash_dump64                         A        # 02 pc 0000000000080f88  /vendor/lib64/libc++.so (__cxa_pure_virtual+20) (BuildId: c1178e02479441e4d5f533f88cd8ff05d8ef10a8)
 3039-3039  DEBUG                   crash_dump64                         A        # 03 pc 0000000000242238  /vendor/lib64/libprotobuf-cpp-full-4.25.8.so (google::protobuf::Message::GetTypeName() const+24) (BuildId: e6f2455d42d07a548554ec35aaa811d3)
 3039-3039  DEBUG                   crash_dump64                         A        # 04 pc 000000000015b68c  /vendor/lib64/libprotobuf-cpp-full-4.25.8.so (google::protobuf::MessageLite::SerializePartialToArray(void*, int) const+236) (BuildId: e6f2455d42d07a548554ec35aaa811d3)
 3039-3039  DEBUG                   crash_dump64                         A        # 05 pc 00000000002f3330  /vendor/bin/shared_modem_platform (SitMessage::SerializeSendMessage(char*, int)+16) (BuildId: 4c03fb29e43d9151b71d7ba3fc0f275c)
 3039-3039  DEBUG                   crash_dump64                         A        # 06 pc 00000000002ee0e0  /vendor/bin/shared_modem_platform (MessageServerLegacy::SendRequest(SitMessage*, unsigned int)+112) (BuildId: 4c03fb29e43d9151b71d7ba3fc0f275c)
 3039-3039  DEBUG                   crash_dump64                         A        # 07 pc 00000000002f1fc8  /vendor/bin/shared_modem_platform (ModemSvcServiceHandler::SendServiceRequest(pixel_modem::shared_modem_platform_core::RequestType)+3720) (BuildId: 4c03fb29e43d9151b71d7ba3fc0f275c)
 3039-3039  DEBUG                   crash_dump64                         A        # 08 pc 00000000002ee4ac  /vendor/bin/shared_modem_platform (MessageServerLegacy::SendServiceRequest(pixel_modem::shared_modem_platform_core::RequestType, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&)+12) (BuildId: 4c03fb29e43d9151b71d7ba3fc0f275c)
 3039-3039  DEBUG                   crash_dump64                         A        # 09 pc 000000000030f4e0  /vendor/bin/shared_modem_platform (pixel_modem::shared_modem_platform_core::MessageCore::SendServiceRequest(pixel_modem::shared_modem_platform_core::RequestType, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>> const&)+384) (BuildId: 4c03fb29e43d9151b71d7ba3fc0f275c)
 3039-3039  DEBUG                   crash_dump64                         A        # 10 pc 000000000030f090  /vendor/bin/shared_modem_platform (pixel_modem::shared_modem_platform_core::MessageCore::OnModemStateChanged(pixel_modem::shared_modem_platform_core::ModemStateTypeCommon)+672) (BuildId: 4c03fb29e43d9151b71d7ba3fc0f275c)
 3039-3039  DEBUG                   crash_dump64                         A        # 11 pc 00000000002eaa48  /vendor/bin/shared_modem_platform (pixel_modem::lassen::ModemStateMonitor::Run()+760) (BuildId: 4c03fb29e43d9151b71d7ba3fc0f275c)
 3039-3039  DEBUG                   crash_dump64                         A        # 12 pc 000000000033fd34  /vendor/bin/shared_modem_platform (pixel_modem::shared_modem_platform_core::Thread::ThreadProc(void*)+132) (BuildId: 4c03fb29e43d9151b71d7ba3fc0f275c)
 3039-3039  DEBUG                   crash_dump64                         A        # 13 pc 000000000008e8fc  /apex/com.android.runtime/lib64/bionic/libc.so (__pthread_start(void*) (.__uniq.67847048707805468364044055584648682506)+236) (BuildId: bddad1c467668efae27df87f4c84e901)
 3039-3039  DEBUG                   crash_dump64                         A        # 14 pc 000000000007f4a0  /apex/com.android.runtime/lib64/bionic/libc.so (__start_thread+64) (BuildId: bddad1c467668efae27df87f4c84e901)

By backporting shared_modem_platform, crashes no longer happen, and error logs such as

 1002-1052  shamp                   shared_modem_platform                E  ParseFromArray failed
 1002-1052  shamp                   shared_modem_platform                E  ProcessReceivedMessage returns error: INTERNAL

no longer occur on bluejay.
EMFILE: too many open files can occur. This will allow generate-all for all devices to run on
systems where `ulimit -n` cannot be changed past the hard limit `ulimit -Hn` without root.
@inthewaves
Copy link
Copy Markdown
Member Author

readelf results

From 16 QPR2

bluejay:/ # readelf -d /vendor/bin/shared_modem_platform                                                                          

Dynamic section at offset 0x380fc0 contains 35 entries:
  Tag                Type                 Name/Value
 0x0000000000000001 (NEEDED)             Shared library: [libbinder_ndk.so]
 0x0000000000000001 (NEEDED)             Shared library: [libbase.so]
 0x0000000000000001 (NEEDED)             Shared library: [libcutils.so]
 0x0000000000000001 (NEEDED)             Shared library: [libjsoncpp.so]
 0x0000000000000001 (NEEDED)             Shared library: [liblog.so]
 0x0000000000000001 (NEEDED)             Shared library: [libmodem_svc_proto_legacy_soong.so]
 0x0000000000000001 (NEEDED)             Shared library: [libprotobuf-cpp-full-4.25.8.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc++.so]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so]
 0x0000000000000001 (NEEDED)             Shared library: [libm.so]
 0x0000000000000001 (NEEDED)             Shared library: [libdl.so]
 0x000000000000001e (FLAGS)              BIND_NOW
 0x000000006ffffffb (FLAGS_1)            Flags: NOW PIE
 0x0000000000000015 (DEBUG)              0x0
 0x0000000060000011 (ANDROID_RELA)       0x13198
 0x0000000060000012 (ANDROID_RELASZ)     1896 (bytes)
 0x0000000000000009 (RELAENT)            24 (bytes)
 0x000000006fffe000 (ANDROID_RELR)       0x13900
 0x000000006fffe001 (ANDROID_RELRSZ)     4384 (bytes)
 0x000000006fffe003 (ANDROID_RELRENT)    0x8
 0x0000000000000017 (JMPREL)             0x14a20
 0x0000000000000002 (PLTRELSZ)           9312 (bytes)
 0x0000000000000003 (PLTGOT)             0x381bf0
 0x0000000000000014 (PLTREL)             RELA
 0x0000000000000006 (SYMTAB)             0x330
 0x000000000000000b (SYMENT)             24 (bytes)
 0x0000000000000005 (STRTAB)             0x7890
 0x000000000000000a (STRSZ)              47368 (bytes)
 0x000000006ffffef5 (GNU_HASH)           0x69c8
 0x0000000000000019 (INIT_ARRAY)         0x380eb8
 0x000000000000001b (INIT_ARRAYSZ)       264 (bytes)
 0x000000006ffffff0 (VERSYM)             0x60d8
 0x000000006ffffffe (VERNEED)            0x68a8
 0x000000006fffffff (VERNEEDNUM)         5
 0x0000000000000000 (NULL)               0x0

From 16 QPR3

bluejay:/ # readelf -d /vendor/bin/shared_modem_platform                                                                          

Dynamic section at offset 0x382d68 contains 36 entries:
 Tag                Type                 Name/Value
0x0000000000000001 (NEEDED)             Shared library: [libbinder_ndk.so]
0x0000000000000001 (NEEDED)             Shared library: [libcutils.so]
0x0000000000000001 (NEEDED)             Shared library: [libjsoncpp.so]
0x0000000000000001 (NEEDED)             Shared library: [libmodem_svc_proto_legacy_soong.so]
0x0000000000000001 (NEEDED)             Shared library: [libprotobuf-cpp-full-6.33.1.so]
0x0000000000000001 (NEEDED)             Shared library: [libbase.so]
0x0000000000000001 (NEEDED)             Shared library: [libaconfig_storage_read_api_cc.so]
0x0000000000000001 (NEEDED)             Shared library: [liblog.so]
0x0000000000000001 (NEEDED)             Shared library: [libc++.so]
0x0000000000000001 (NEEDED)             Shared library: [libc.so]
0x0000000000000001 (NEEDED)             Shared library: [libm.so]
0x0000000000000001 (NEEDED)             Shared library: [libdl.so]
0x000000000000001e (FLAGS)              BIND_NOW
0x000000006ffffffb (FLAGS_1)            Flags: NOW PIE
0x0000000000000015 (DEBUG)              0x0
0x0000000060000011 (ANDROID_RELA)       0x13280
0x0000000060000012 (ANDROID_RELASZ)     1309 (bytes)
0x0000000000000009 (RELAENT)            24 (bytes)
0x000000006fffe000 (ANDROID_RELR)       0x137a0
0x000000006fffe001 (ANDROID_RELRSZ)     4416 (bytes)
0x000000006fffe003 (ANDROID_RELRENT)    0x8
0x0000000000000017 (JMPREL)             0x148e0
0x0000000000000002 (PLTRELSZ)           9696 (bytes)
0x0000000000000003 (PLTGOT)             0x3839f8
0x0000000000000014 (PLTREL)             RELA
0x0000000000000006 (SYMTAB)             0x330
0x000000000000000b (SYMENT)             24 (bytes)
0x0000000000000005 (STRTAB)             0x7910
0x000000000000000a (STRSZ)              47470 (bytes)
0x000000006ffffef5 (GNU_HASH)           0x6a58
0x0000000000000019 (INIT_ARRAY)         0x382c08
0x000000000000001b (INIT_ARRAYSZ)       352 (bytes)
0x000000006ffffff0 (VERSYM)             0x6150
0x000000006ffffffe (VERNEED)            0x6928
0x000000006fffffff (VERNEEDNUM)         5
0x0000000000000000 (NULL)               0x0

@inthewaves
Copy link
Copy Markdown
Member Author

Pixel 6a logs after shared_modem_platform from 16 QPR3 was backported

1023-1023  shamp                   shared_modem_platform                I  Starting the Shared Modem Platform server!
 1023-1023  shamp                   shared_modem_platform                D  Updating Device Info: 
 1023-1023  shamp                   shared_modem_platform                D  platform: 2
 1023-1023  shamp                   shared_modem_platform                D  product: 5
 1023-1023  shamp                   shared_modem_platform                D  board (stage): 6
 1023-1023  shamp                   shared_modem_platform                D  major: 1
 1023-1023  shamp                   shared_modem_platform                D  minor: 0
 1023-1023  shamp                   shared_modem_platform                D  variant: 0
 1023-1023  shamp                   shared_modem_platform                D  rf_sku (modem_sku): 3
 1023-1023  shamp                   shared_modem_platform                D  modem_hw: 0
 1023-1023  shamp                   shared_modem_platform                D  rf_sub: 0
 1023-1023  shamp                   shared_modem_platform                D  rf_cfg: 0
 1023-1023  shamp                   shared_modem_platform                D  Found device profile: Pixel 6a, Stage: 6
 1023-1023  shamp                   shared_modem_platform                I  Device info: Pixel 6a
 1023-1023  shamp                   shared_modem_platform                I  Starting rpc server: ModemSvc
 1023-1042  shamp                   shared_modem_platform                I  Start modem state monitoring
 1023-1042  shamp                   shared_modem_platform                I  State Monitor: Modem state changed from INVALID to OFFLINE
 1023-1043  shamp                   shared_modem_platform                I  RPC server: ModemSvc start initiated in background thread.
 1042-1042  cpif                    shared_modem_platform                I  bootdump_open: umts_boot0 (opened 2) by shared_modem_pl
 1023-1023  shamp                   shared_modem_platform                I  IO handler started for /dev/oem_ipc1
 1023-1043  shamp                   shared_modem_platform                I  IO handler started for /dev/oem_ipc3
 1023-1043  shamp                   shared_modem_platform                I  RPC server: ModemSvc started successfully in background thread.
 1023-1023  shamp                   shared_modem_platform                I  MainCommon setup successful, continuing...
 1023-1023  shamp                   shared_modem_platform                I  Using a Lassen specific implementation of the shared_modem_platform!
 1023-1023  shamp                   shared_modem_platform                I  Current shared modem platform version: 2
 1023-1023  shamp                   shared_modem_platform                I  About to start creating shared_modem_platform instance.
 1044-1044  cpif                    shared_modem_platform                I  ipc_open: oem_ipc1 (opened 1) by shared_modem_pl
 1023-1023  shamp                   shared_modem_platform                I  Starting and creating threadpool of size: 1
 1023-1044  shamp                   shared_modem_platform                I  Open IO channel, fd: 6 channel: /dev/oem_ipc1
 1023-1023  cutils-trace            shared_modem_platform                E  Error opening trace file: No such file or directory (2)
 1023-1045  shamp                   shared_modem_platform                I  Open IO channel, fd: 10 channel: /dev/oem_ipc3
 1045-1045  cpif                    shared_modem_platform                I  ipc_open: oem_ipc3 (opened 1) by shared_modem_pl
 1023-1023  shamp                   shared_modem_platform                I  Successfully registered instance for the shared_modem_platform.
 1023-1049  shamp                   shared_modem_platform                I  Umi server thread started.
 1023-1042  shamp                   shared_modem_platform                I  State Monitor: Modem state changed from OFFLINE to BOOTING
 1023-1042  shamp                   shared_modem_platform                I  State Monitor: Modem state changed from BOOTING to ONLINE
 1023-1023  shamp                   shared_modem_platform                I  All message servers are ready.
 1023-1023  shamp                   shared_modem_platform                D  Sending pw_rpc packet: service_id=0x52ad37c9, method_id=0x179f1afd
 1023-1023  shamp                   shared_modem_platform                D  Found device profile: Pixel 6a, Stage: 6
 1023-1023  cpif                    shared_modem_platform                I  ipc_write: oem_ipc3: wait for INIT_END done (150ms) cnt:1 last:0 cmd:0xC2
 1023-1044  shamp                   shared_modem_platform                I  Get property request
 1023-1044  shamp                   shared_modem_platform                I  Write property persist.vendor.modem.esim_profiles_exist with value FALSE
 1023-1044  shamp                   shared_modem_platform                I  Get property request
 1023-1044  shamp                   shared_modem_platform                I  Read property persist.vendor.radio.config.config_db_version with value cfgdb-whi-260109-B-14688209
 1023-1044  shamp                   shared_modem_platform                I  Get property request
 1023-1044  shamp                   shared_modem_platform                I  Write property persist.vendor.modem.esim_profiles_exist with value TRUE
 1023-1044  shamp                   shared_modem_platform                I  Get property request
 1023-1044  shamp                   shared_modem_platform                I  Write property persist.vendor.modem.esim_profiles_exist with value TRUE
 1023-1044  shamp                   shared_modem_platform                I  Got userspace log indication
 1023-1044  shamp                   shared_modem_platform                D  Modem: [GRPT][Confpack] ca_freedom, stack[0]
 1023-1044  shamp                   shared_modem_platform                I  Got modem temperature request
 1023-1044  shamp                   shared_modem_platform                D  Temp sensor 0 - Update 1 - Temperature 34000
 1023-1044  shamp                   shared_modem_platform                D  Temp sensor 1 - Update 1 - Temperature 34000
 1023-1044  shamp                   shared_modem_platform                D  Temp sensor 2 - Update 1 - Temperature 33000
 1023-1044  shamp                   shared_modem_platform                D  Temp sensor 3 - Update 1 - Temperature 34000
 1023-1044  shamp                   shared_modem_platform                D  Temp sensor 4 - Update 1 - Temperature 34000
 1023-1044  shamp                   shared_modem_platform                D  Temp sensor 5 - Update 1 - Temperature 34000
 1023-1044  shamp                   shared_modem_platform                D  Temp sensor 6 - Update 1 - Temperature 37000
 1023-1044  shamp                   shared_modem_platform                D  Temp sensor 7 - Update 1 - Temperature 30000
 1023-1044  shamp                   shared_modem_platform                D  Temp sensor 8 - Update 1 - Temperature 30000
 1044-1044  thermal_zone0           shared_modem_platform                W  failed to read out thermal zone (-22)
 1044-1044  gs101-cp-t...one cp-tm1 shared_modem_platform                I  Update CP temperature sensor 0
 1044-1044  thermal_zone1           shared_modem_platform                W  failed to read out thermal zone (-22)
 1044-1044  gs101-cp-t...one cp-tm1 shared_modem_platform                I  Update CP temperature sensor 1
 1044-1044  thermal_zone2           shared_modem_platform                W  failed to read out thermal zone (-22)
 1044-1044  gs101-cp-t...one cp-tm1 shared_modem_platform                I  Update CP temperature sensor 2
 1044-1044  thermal_zone3           shared_modem_platform                W  failed to read out thermal zone (-22)
 1044-1044  gs101-cp-t...one cp-tm1 shared_modem_platform                I  Update CP temperature sensor 3
 1044-1044  thermal_zone4           shared_modem_platform                W  failed to read out thermal zone (-22)
 1044-1044  gs101-cp-t...one cp-tm1 shared_modem_platform                I  Update CP temperature sensor 4
 1044-1044  thermal_zone5           shared_modem_platform                W  failed to read out thermal zone (-22)
 1044-1044  gs101-cp-t...one cp-tm1 shared_modem_platform                I  Update CP temperature sensor 5
 1044-1044  thermal_zone6           shared_modem_platform                W  failed to read out thermal zone (-22)
 1044-1044  gs101-cp-t...one cp-tm1 shared_modem_platform                I  Update CP temperature sensor 6
 1044-1044  thermal_zone7           shared_modem_platform                W  failed to read out thermal zone (-22)
 1044-1044  gs101-cp-t...one cp-tm1 shared_modem_platform                I  Update CP temperature sensor 7
 1044-1044  thermal_zone8           shared_modem_platform                W  failed to read out thermal zone (-22)
 1044-1044  gs101-cp-t...one cp-tm1 shared_modem_platform                I  Update CP temperature sensor 8
 1023-1023  shamp                   shared_modem_platform                W  Rpc Capability request sent ERROR: DEADLINE_EXCEEDED
 1023-1023  shamp                   shared_modem_platform                I  Set active handler to Legacy!
 1023-1023  shamp                   shared_modem_platform                I  Read config: /vendor/etc/modem_stat.conf
 1023-1023  shamp                   shared_modem_platform                I  Send debug stat config: uim_statistics, v=-1, t=0
 1023-1023  shamp                   shared_modem_platform                I  Sending modemstat enable request
 1023-1023  cpif                    shared_modem_platform                I  pcie_send_ap2cp_irq: Reserve doorbell interrupt: PCI on/off working
 1023-1023  shamp                   shared_modem_platform                I  Got modemstat enable response successful
 1023-1023  shamp                   shared_modem_platform                I  Send debug stat config: Protocol_stats, v=-1, t=0
 1023-1023  shamp                   shared_modem_platform                I  Sending modemstat enable request
 1023-1023  shamp                   shared_modem_platform                I  Got modemstat enable response successful
 1023-1023  shamp                   shared_modem_platform                I  Send debug stat config: rf_stats, v=-1, t=0
 1023-1023  shamp                   shared_modem_platform                I  Sending modemstat enable request
 1023-1023  shamp                   shared_modem_platform                I  Got modemstat enable response successful
 1023-1023  shamp                   shared_modem_platform                D  Modem userspace logging config does not exist
 1023-1023  shamp                   shared_modem_platform                I  Configuring GNSS coex

@inthewaves inthewaves marked this pull request as ready for review March 5, 2026 10:47
@thestinger thestinger merged commit e1ac1ef into GrapheneOS:16-qpr2 Mar 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants