Thursday, 2026-04-23

stephenfinfungi: I wasn't at the TC/PTL session on Monday, but what was the context of the rootwrap to privsep migration?15:16
gouthamrit came up because eventlet-removal requires a migration to privsep 15:16
fungistephenfin: whether it was "done"15:17
stephenfinI ask as I see a link to os-brick there. I started work on migrating os-brick to privsep years ago, but it never got reviewed and I grew tired of rebasing it15:17
stephenfinhttps://review.opendev.org/q/project:openstack/os-brick+owner:stephenfin@redhat.com+branch:master (there wasn't a consistent topic)15:18
fungiand the goal basically has two halves, one is moving off rootwrap but the other is actually using privsep more securely than what rootwrap allowed (and basically no projects have done the latter half)15:18
stephenfinah, yes, one of sean-k-mooney's favourite hills to die to on 😄15:19
stephenfins/die to/die/15:19
fungimoving off rootwrap was mostly pointless if we simply moved the existing security design risks into a privsep policy15:19
stephenfinexcept now there's an eventlet aspect also?15:20
fungiwhich i think was a bit of a happy accident15:21
stephenfinindeed15:21
stephenfinwell I'm guessing you figured this out Monday (it's not clear from the notes) but os-brick is not migrated and still needs to be done15:22
fungimy brain is mush at this point, but i do think that came up, yes15:22
fungihopefully someone else remembers better than i15:23
stephenfin😄 Isn't everyone's. Good to know. Thanks for the context15:23
sean-k-mooneyfungi: os-vif kind of does it right15:45
sean-k-mooneythe problem with many context is it increase memory usage15:46
sean-k-mooneybut haveing a small number is a good thing15:46
sean-k-mooneythe split i wanted to do in nova was file operatiosn, network operation and everythign else15:46
sean-k-mooneywe shoudl nto relaly have a single prive sep call that need the ablity to read/write any file on the systme while also recofniging netowrk interfaces 15:47
sean-k-mooneyso there are some natual split that can/should be done15:47
fungisean-k-mooney: yeah, it was more that i wasn't aware of any that did (and had forgotten about os-vif, a great albeit small example)15:54
sean-k-mooneywell even os-vif does it on plugin15:55
sean-k-mooneybut its a networkign lib so really we dont have diffent type of prive calls 15:55
sean-k-mooneybut ya services have diffent types in general15:56
sean-k-mooneythe other thing is bubblewrap and other tools exist15:56
sean-k-mooneyso they more secure approch really is not to just have rootwap ro privsep15:57
sean-k-mooneyits defence in dept with selinx and sandboxes and contiaenr ectra15:57
clarkbsean-k-mooney: the memory usage ballooning is likely solveable too fwiw. I can't imaging that we actually need to consume several hudnred megabytes of memory just to shuttle a few byes around. It seems likely that buffers are bloating because we're not formally buffering things and shuttling it around so python lets them grow?16:01
clarkbbut yes the memory consumption is a problem and ideally it would get addressed16:01
fungii think it was related to forking off the parent carrying the entire context in with it16:04
fungiif memory serves we discussed possible mitigations for that16:05
sean-k-mooneyits becasue each contenxt need a diffent privsep process today and each one need to improt the relevent set of python module with the code to run i.e. a subset of nova16:05
sean-k-mooneyfungi: yes it is16:05
sean-k-mooneywith that said haveing 2-3 context per service as i descibe above16:06
sean-k-mooneyis likely workabel16:06
sean-k-mooneybut with all that said libvirt runs as root an ovs used too by default16:07
clarkbif the issue is forking wouldn't the unused pages all get marked as unused and things wouldn't be resident?16:07
sean-k-mooneythey just rely on selinux ectra16:07
sean-k-mooneyso to a degree i think the sandboxing can be external16:07
sean-k-mooneyas long as it not inheritnly insecure without it16:07
clarkbanyway there are profiling tools that can be used to provide concrete data and if that info is collected I'm pretty certain improvements could be made16:07
mnasiadkaWell, Kolla uses rootwrap to run privsep-helper (I assume that’s some… interim path), wonder if other deployment projects do the same - so whatever is the plan it should probably include deployment projects19:28
fungifrom a security perspective that's likely just fine, as long as services are only calling into privsep that's what's providing the isolation layer19:51
fungibut from a being able to finally retire and get rid of rootwrap perspective, less great of course19:52

Generated by irclog2html.py 4.1.0 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!