linux-2.4.28-grsec and linux-2.4.29-grsec on sparc64 architecture.
lmbench shows an order-of-magnitude slowdown for
integer operations, this run on 2.4.30 w/ and w/o grsecurity:
- Code: Select all
Host OS intgr intgr intgr intgr intgr
bit add mul div mod
--------- ------------- ------ ------ ------ ------ ------
vlatko Linux 2.4.30 1.5500 1.5500 48.3 87.8 97.0
vlatko Linux 2.4.30- 1.5500 1.5500 919.7 958.3 978.7
In real life, on an Ultra-5 (UltraSPARC IIi CPU @270MHz, 128MB RAM),
running the usual sparc64 kernel + sparc32 userspace (Debian
3.1 for sparc), this makes eg. an "apt-get update" run for 3-5
minutes with 2.4.30-grsecurity, vs. ~1 min with the plain 2.4.30
kernel.
The problem was introduced between linux-2.4.28 (grsec 2.1.0)
and linux-2.4.29 (grsec 2.1.1). The local kernel expert has narrowed
the visible slowdown down to these options:
- Code: Select all
CONFIG_GRKERNSEC_PAX_MPROTECT=y
CONFIG_GRKERNSEC_PAX_EMUPLT=y
CONFIG_GRKERNSEC_PAX_DLRESOLVE=y
Turning them off makes the system work at decent speed again.
Here are the complete lmbench results for 2.4.30 with and without
Grsecurity (just ignore the comments in Croatian, this is from an
internal list):
http://kosjenka.srce.hr/~jelly/grsec-sparc.txt
Any ideas?
Regards,
Zoran
[/u]