Bug 961646

Summary: user(s) processes are not moved into the group at login time + cgred restart segfault
Product: Red Hat Enterprise Linux 6 Reporter: lejeczek <peljasz>
Component: libcgroupAssignee: Jan Chaloupka <jchaloup>
Status: CLOSED NEXTRELEASE QA Contact: Red Hat Kernel QE team <kernel-qe>
Severity: high Docs Contact:
Priority: unspecified    
Version: 6.4CC: jsafrane, ovasik, peljasz, varekova
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-08-04 12:06:41 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description lejeczek 2013-05-10 07:37:09 UTC
Description of problem:

it seems cgred service starts at boot but each subsequent restart results in segfault
also, more! importantly processes initiated by a user declared in rules are not being acted upon when user logins in

Version-Release number of selected component (if applicable):

libcgroup-0.37-7.el6.x86_64
pam-1.1.1-13.el6.x86_64
2.6.32-358.2.1.el6.x86_64

How reproducible:

mount {
  cpu = /cgroup/cpu;
  cpuset  = /cgroup/cpuset;
  cpuacct = /cgroup/cpuacct;
  memory  = /cgroup/memory;
  devices = /cgroup/devices;
  freezer = /cgroup/freezer;
  net_cls = /cgroup/net_cls;
  blkio = /cgroup/blkio;
}

group . {
  perm {
    task {
      uid = root;
      gid = root;
    }
    admin {
      uid = root;
      gid = root;
    }
  }
}

group limit {
  memory {
    memory.limit_in_bytes = 15G;
  }
  cpuset {
    cpuset.cpus = "5";
    cpuset.mems = 0;
  }
}

and

aUser memory,cpuset  limit/


Steps to Reproduce:
1.
2.
3.
  
Actual results:

declared users are not confined/controlled

Expected results:

when user logs in all processes should be move into the cgroup


Additional info:

Comment 2 lejeczek 2013-05-10 10:39:27 UTC
cgrulesengd[4202]: segfault at 0 ip 000000345b081321 sp 00007fffbbe2a168 error 4 in libc-2.12.so[345b000000+18a000]

Comment 3 lejeczek 2013-05-10 11:29:24 UTC
libcgroup-0.37-7.1.el6.x86_64 seems to fix above problem but!

at boot time services fail, both

Starting cgconfig service: Failed to parse /etc/cgconfig.conf[FAILED]
and naturally
Starting CGroup Rules Engine Daemon:
Cannot find cgroups, is cgconfig service running?[FAILED]

only to start fine at very first manual service start

?

Comment 4 Ondrej Vasik 2013-05-17 15:48:48 UTC
*** Bug 961648 has been marked as a duplicate of this bug. ***

Comment 5 Peter Schiffer 2013-08-15 11:16:53 UTC
lejeczek,

please, can you try this build?

https://dl.dropboxusercontent.com/u/15321270/libcgroup-0.37-10.el6.x86_64.rpm
https://dl.dropboxusercontent.com/u/15321270/libcgroup-devel-0.37-10.el6.x86_64.rpm
https://dl.dropboxusercontent.com/u/15321270/libcgroup-pam-0.37-10.el6.s390x.rpm
https://dl.dropboxusercontent.com/u/15321270/libcgroup-debuginfo-0.37-10.el6.s390x.rpm

Also, if the error still persists, modify the /etc/init.d/cgconfig file on line 132:
- $CGCONFIGPARSER_BIN -l $CONFIG_FILE
+ export CGROUP_LOGLEVEL=DEBUG
+ $CGCONFIGPARSER_BIN -l $CONFIG_FILE > /tmp/cglog

reboot the machine and attach here /tmp/cglog file. (You might need to temporarily disable selinux if /tmp/cglog file is empty after reboot.)

Thanks,

peter

Comment 6 Jan Chaloupka 2014-08-04 10:23:49 UTC
ping lejeczek, is this still relevant?

Comment 7 lejeczek 2014-08-04 10:59:19 UTC
nope, segfault got fixed, later only cgred restart after system start was needed as user db (slapd backend) wasn't picked up by cgroups.
So on my systems no segfaults now and later (as per my other bugreport) slapd & cgred services initd was reordered.

Comment 8 Jan Chaloupka 2014-08-04 12:06:41 UTC
So segfault is fixed and moving processes into groups during logging is reported in BZ1126003. Then closing as fixed in rhel6.6.