Short version:
Main problem is it seems prctl for process.max-sem-nsems is not working.
When I do a prctl $$ I see the kernel parameter set, but when specifying it on the command line it doesn't think it exists (?)
Detailed version:
Going through the oracle 10 pre-installation config tasks on solaris 10, I see the kernel settings which need to be set:
noexec_user_stack 1 (/etc/system)
project.max-sem-ids 100
process.max-sem-nsems 256
project.max-shm-memory 4294967295
project.max-shm-ids 100
I added the kernel settings to all the projects also just because I'm over paranoid even though oracle is using user.oracle by default.
Anyway, all seem fine except for process.max-sem-nsems. I get an error when trying to prctl it.
# cat /etc/project
system:0::::process.max-se
m-nsems=(p
riv,256,de
ny);projec
t.max-sem-
ids=(priv,
128,deny);
project.ma
x-shm-ids=
(priv,128,
deny);proj
ect.max-sh
m-memory=(
priv,42949
67295,deny
)
user.root:1::::
noproject:2::::
default:3::::process.max-s
em-nsems=(
priv,256,d
eny);proje
ct.max-sem
-ids=(priv
,128,deny)
;project.m
ax-shm-ids
=(priv,128
,deny);pro
ject.max-s
hm-memory=
(priv,4294
967295,den
y)
group.staff:10::::
user.oracle:100:Oracle:ora
cle::proce
ss.max-sem
-nsems=(pr
iv,256,den
y);project
.max-sem-i
ds=(priv,1
28,deny);p
roject.max
-shm-ids=(
priv,128,d
eny);proje
ct.max-shm
-memory=(p
riv,429496
7295,deny)
# su - oracle
Sun Microsystems Inc. SunOS 5.10 Generic January 2005
$ id -p
uid=50(oracle) gid=200(oinstall) projid=100(user.oracle)
$ prctl -n process.max-sem-nsems -i project user.oracle
prctl: cannot get/set process rctl on task or project
usage:
..
..
$ prctl $$ | more
..
..
process.max-sem-ops
privileged 512 - deny -
system 2.15G max deny -
process.max-sem-nsems
privileged 256 - deny -
system 32.8K max deny -
process.max-address-space
privileged 16.0EB max deny -
system 16.0EB max deny -
..
..
$ uname -a
SunOS hostname..com 5.10 Generic_127127-11 sun4u sparc SUNW,Sun-Fire-V245
$
Any idea what's going on?