Use a single CMSG for all passed descriptors. This lets us pack more
descriptors in a single message, which is useful for cap_fileargs.
Add a regression test which passes an nvlist containing many descriptors
over a unix socket pair.
Differential D20941
Optimize libnv descriptor passing. markj on Jul 12 2019, 9:42 PM. Authored by Tags None Referenced Files
Subscribers None
Details
Diff Detail
Event TimelineComment Actions It took me a while to try remind this issue: Comment Actions Hmmm. Do we care about supporting Linux anymore given that it seems Capsicum is not going into mainline Linux? I am fine with dropping this patch, but it seems a bit of a shame since it is faster and more space-efficient to send multiple FDs in a single control message. Comment Actions libnv may be used in different places as well, not only Capsicum. I also wonder is there is no limit in FreeBSD to the count how many fd we can send in single message. Comment Actions Thanks, I will leave this change for now then.
It's limited by the number of fd pointers we can fit in an mbuf cluster.
Comment Actions I committed the bug fix already. It might still be useful to attempt optimization on FreeBSD, but I have no plans to work on it in the near future. |