On Wed Jan 28, 2026 at 1:04 AM EST, Greg Kroah-Hartman wrote:
On Tue, Jan 27, 2026 at 03:23:44PM -0500, Damien Riégel wrote:
On Fri Jan 16, 2026 at 10:09 AM EST, Greg Kroah-Hartman wrote: [...]
The SVC doesn' really serve a purpose here, as there is no bus to manage, and adding its support only increase the complexity and the code size needed on memory-constrained devices.
Exactly how much memory does a "single point" SVC driver take, vs. adding new P2P functionality everywhere in the code like you just did? Finding that out would be good first before worrying about adding another type of "bus" here please.
Sorry for not giving numbers in the cover letter. We measured 10kB of code size difference (which may be on the higher end of the spectrum) and in Zephyr [1] they measured a 2kB difference (which is probably on the lower end considering the implementation is pretty barebone).
Please submit your "empty" SVC driver, 10kb seems too big to me, I think we can slim it down, or at the very least, see what is making it "large" and potentially work to reduce that.
The comparison I did originally was pretty naive. When I tested without the SVC, the C files were not even compiled. What I didn't account for is that our SVC currently logs pretty extensively, and guess where these log strings are stored...
After removing the logs, I could compare apples to apples: - with SVC: 59,272 B - without SVC: 57,556 B
So not even 2kB difference.
For Zephyr, I thought it was 1kb in the github comments, but still 2kb seems reasonable :)
The last comment in the thread says 2kB, but it's in the same ballpark.
So I think we have our number, an empty SVC would be in the 1kB to 2kB range.