every time I yum update my firewall, it ends up oom'ing when it gets to updating selinux-policy-targeted. That machine runs from flash, so there's no swap space. Is there anything that can be done to reduce selinux's memory usage, or am I going to have to add a disk/more ram to that machine ? It has 512MB right now, which is on the lower end of what Fedora supports, but this is the only thing that ever seems to use all the memory. Routing packets isn't particularly memory intensive, so it seems a waste to have to upgrade the hardware.
You can customize the bzip block size and "small" flag via /etc/selinux/semanage.conf. After applying you can add entries like these to your /etc/selinux/semanage.conf to trade off memory vs disk space (block size) and to trade off memory vs runtime (small): bzip-blocksize=4 bzip-small=1 You can also disable bzip compression altogether for your module store via: bzip-blocksize=0