Hello again, I realized it is a series of patch actually:
3812c8c8f3953921ef18544110dafc3505c1ac62 mm: memcg: do not trap chargers with full callstack on OOM fb2a6fc56be66c169f8b80e07ed999ba453a2db2 mm: memcg: rework and document OOM waiting and wakeup 519e52473ebe9db5cdef44670d5a97f1fd53d721 mm: memcg: enable memcg OOM killer only for user faults 3a13c4d761b4b979ba8767f42345fed3274991b0 x86: finish user fault error path with fatal signal 759496ba6407c6994d6a5ce3a5e74937d7816208 arch: mm: pass userspace fault flag to generic fault handler 871341023c771ad233620b7a1fb3d9c7031c4e5c arch: mm: do not invoke OOM killer on kernel fault OOM 94bce453c78996cc4373d5da6cfabe07fcc6d9f9 arch: mm: remove obsolete init OOM protection I am not sure if they have more dependencies. However, this bug is *fairly* easy to reproduce on 3.10, just using the following script: #!/bin/bash TEST_DIR=/tmp/cgroup_test [ -d $TEST_DIR ] || mkdir -p $TEST_DIR mount -t cgroup none $TEST_DIR -o memory mkdir $TEST_DIR/test echo 512k > $TEST_DIR/test/memory.limit_in_bytes dd if=/dev/zero of=/tmp/oom_test_big_file bs=512 count=20000000 & echo $! > $TEST_DIR/test/tasks rm -f /tmp/oom_test_big_file umount $TEST_DIR Run it like this: for i in `seq 1 1000`; do ./oom_hung.sh ; done So please consider this seriously. :) Thanks! -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/