Go to file
John Brooks 798950e055 Use a better hash function for libsepol's avtab
This function, based on murmurhash3, has much better distribution than
the original. Using the current default of 4096 buckets, there are many
fewer collisions:

Before:
2893000 entries and 4096/4096 buckets used, longest chain length 1649
After:
2732000 entries and 4096/4096 buckets used, longest chain length 764

The difference becomes much more significant when buckets are increased.
A naive attempt to expand the current function to larger outputs doesn't
yield any significant improvement; so this function is a prerequisite
for increasing the bucket size.

Signed-off-by: John Brooks <john.brooks@jolla.com>
2015-01-15 10:44:01 -05:00
checkpolicy Clear errno before call to strtol(3). 2014-12-11 08:29:34 -05:00
libselinux Bump to release candidate 7 2014-12-03 10:06:26 -05:00
libsemanage Bump to release candidate 7 2014-12-03 10:06:26 -05:00
libsepol Use a better hash function for libsepol's avtab 2015-01-15 10:44:01 -05:00
policycoreutils Bump to release candidate 7 2014-12-03 10:06:26 -05:00
scripts scripts: update release script to not output file name twice 2014-12-03 10:06:26 -05:00
sepolgen Bump to release candidate 7 2014-12-03 10:06:26 -05:00
.gitignore global: gitignore: add a couple of more editor backup filetypes 2013-02-01 12:14:57 -05:00
Makefile libselinux: additional makefile support for rubywrap 2012-06-28 11:21:16 -04:00
README Adjust build instructions to clarify x86_64 vs x86. 2013-10-30 12:51:19 -04:00

To build and install everything under a private directory, run:
make DESTDIR=~/obj install install-pywrap

To install as the default system libraries and binaries
(overwriting any previously installed ones - dangerous!),
on x86_64, run:
make LIBDIR=/usr/lib64 SHLIBDIR=/lib64 install install-pywrap relabel
or on x86 (32-bit), run:
make install install-pywrap relabel

This may render your system unusable if the upstream SELinux userspace
lacks library functions or other dependencies relied upon by your
distribution.  If it breaks, you get to keep both pieces.