milos-linux/net
Jorijn van der Graaf fb5953a877 net: qrtr: ns: push adsp service announcements to the modem (FP6 voice)
The DSP firmwares expect the downstream IPC-router flooding model: a
node never sends NEW_LOOKUP for a service hosted on a peer node and
relies on the application processor pushing every NEW_SERVER/DEL_SERVER
to every link. Mainline's name service only broadcasts local servers;
remote servers reach other remote nodes solely via persistent lookups
nobody in the firmware issues.

Observed on the FP6 (SM7635): at boot the modem queries the in-kernel
pd-mapper for 'avs/audio' and receives 'msm/adsp/audio_pd' instance 74,
but never contacts the ADSP's service-registry notifier (svc 66 inst 74,
node 5 port 2) because it was never told that service exists - zero
forwarded modem->adsp packets across a full modem boot with the
forwarding path instrumented. Without the avs/audio-up notification the
modem's Voice Services never creates a vocoder session (empty
placeholder encoder/decoder during live VoLTE calls AND CVD loopback,
journal/calls.md sessions 15/16).

A first version of this patch flooded every remote announcement to every
hello'd node, downstream-style; it wedged the phone within ~20 s of the
DSPs booting, recurring in waves (control packets are exempt from qrtr
flow control, so any echo between routers runs unbounded, and DSP
crash/recovery cycles re-trigger it). Push only the one edge voice
needs instead: ADSP-hosted servers, to the modem, both live (new/del)
and replayed when the modem says HELLO. Any echo is structurally
loop-free: a re-announcement arriving from the modem is pushed to
nobody (target == origin). Pairs with the data-path forwarding carry
0c63174949.

Assisted-by: Claude:claude-fable-5
Signed-off-by: Jorijn van der Graaf <jorijnvdgraaf@catcrafts.net>
2026-07-12 18:45:57 +02:00
..
6lowpan 6lowpan: fix off-by-one in multicast context address compression 2026-06-01 19:10:16 -07:00
9p
802 net/802/mrp: fix vector attribute parsing in mrp_pdu_parse_vecattr 2026-06-04 08:52:41 -07:00
8021q
appletalk appletalk: aarp: zero-initialize aarp_entry to prevent heap info leak 2026-06-03 18:08:58 -07:00
atm net: atm: fix skb leak in sigd_send() default branch 2026-05-12 18:07:02 -07:00
batman-adv batman-adv: bla: avoid NULL-ptr deref for claim via dropped interface 2026-05-19 10:43:54 +02:00
bluetooth Bluetooth: MGMT: Fix backward compatibility with userspace 2026-06-03 11:24:12 -04:00
bpf
bridge netfilter: nft_meta_bridge: fix stale stack leak via IIFHWADDR register 2026-06-10 18:00:32 +02:00
can
ceph libceph: Fix potential null-ptr-deref in decode_choose_args() 2026-05-12 21:00:59 +02:00
core net: guard timestamp cmsgs to real error queue skbs 2026-06-09 18:32:08 -07:00
dcb
devlink devlink: Release nested relation on devlink free 2026-06-01 19:54:52 -07:00
dns_resolver
dsa
ethernet
ethtool ethtool: eeprom: add more safeties to EEPROM Netlink fallback 2026-05-27 17:42:09 -07:00
handshake net/handshake: Drain pending requests at net namespace exit 2026-05-28 13:35:32 +02:00
hsr hsr: Remove WARN_ONCE() in hsr_addr_is_self(). 2026-06-02 12:04:52 -07:00
ieee802154 ieee802154: 6lowpan: only accept IPv6 packets in lowpan_xmit() 2026-06-04 08:51:32 -07:00
ife
ipv4 netfilter pull request 26-06-10 2026-06-11 12:30:00 +02:00
ipv6 netfilter pull request 26-06-10 2026-06-11 12:30:00 +02:00
iucv net/iucv: fix locking in .getsockopt 2026-05-22 17:40:32 -07:00
kcm
key
l2tp l2tp: pppol2tp: hold reference to session in pppol2tp_ioctl() 2026-06-01 19:40:46 -07:00
l3mdev
lapb
llc
mac80211 wifi: mac80211: limit injected antenna index in ieee80211_parse_tx_radiotap 2026-06-02 13:26:33 +02:00
mac802154
mctp
mpls
mptcp mptcp: add-addr: always drop other suboptions 2026-06-03 19:04:27 -07:00
ncsi
netfilter netfilter: nft_fib: fix stale stack leak via the OIFNAME register 2026-06-10 18:00:19 +02:00
netlabel netlabel: validate unlabeled address and mask attribute lengths 2026-06-05 19:05:06 -07:00
netlink net: netlink: don't set nsid on local notifications 2026-05-22 17:11:09 -07:00
nfc
nsh
openvswitch net: openvswitch: fix possible kfree_skb of ERR_PTR 2026-06-08 20:13:02 -07:00
packet
phonet net: phonet: free phonet_device after RCU grace period 2026-06-08 17:37:07 -07:00
psample
psp
qrtr net: qrtr: ns: push adsp service announcements to the modem (FP6 voice) 2026-07-12 18:45:57 +02:00
rds rds: mark snapshot pages dirty in rds_info_getsockopt() 2026-06-10 08:18:16 -07:00
rfkill
rxrpc rxrpc: Fix the ACK parser to extract the SACK table for parsing 2026-06-09 11:28:17 +02:00
sched net/sched: fix pedit partial COW leading to page cache corruption 2026-06-04 08:29:02 -07:00
sctp sctp: validate embedded INIT chunk and address list lengths in cookie 2026-06-09 18:16:51 -07:00
shaper net: shaper: rework the VALID marking (again) 2026-05-20 16:34:20 -07:00
smc net/smc: Do not re-initialize smc hashtables 2026-05-22 17:38:02 -07:00
strparser
sunrpc nfsd-7.1 fixes: 2026-05-26 13:49:13 -07:00
switchdev
tipc
tls tls: Preserve sk_err across recvmsg() when data has been copied 2026-05-14 18:19:44 -07:00
unix af_unix: Fix inq_len update problem in partial read 2026-06-03 18:52:25 -07:00
vmw_vsock vsock/vmci: fix sk_ack_backlog leak on failed handshake 2026-06-04 13:08:02 +02:00
wireless wifi: cfg80211: enforce HE/EHT cap/oper consistency 2026-06-03 13:25:19 +02:00
x25
xdp xsk: cache csum_start/csum_offset to fix TOCTOU in xsk_skb_metadata() 2026-06-03 17:45:42 -07:00
xfrm xfrm: espintcp: do not reuse an in-progress partial send 2026-06-05 13:20:03 +02:00
compat.c
devres.c
Kconfig
Kconfig.debug
Makefile
socket.c net: guard timestamp cmsgs to real error queue skbs 2026-06-09 18:32:08 -07:00
sysctl_net.c