if (directories && !S_ISDIR(mystat.st_mode))
continue;
- if (sz + 2 >= asz)
+ if (sz + 2 >= asz) {
+ asz += BATCH_SIZE;
*list = must_realloc(*list, asz * typesize);
+ }
(*list)[sz] = (*iterator)(controller, path, dirent->d_name);
(*list)[sz + 1] = NULL;
sz++;
fi
}
+TESTCASE="Stress readdir"
+RUNTEST ${dirname}/test_readdir
TESTCASE="test_proc"
RUNTEST ${dirname}/test_proc
TESTCASE="test_cgroup"
--- /dev/null
+#!/bin/sh
+# SPDX-License-Identifier: LGPL-2.1+
+
+set -eu
+[ -n "${DEBUG:-}" ] && set -x
+
+PASS=0
+UUID=$(uuidgen)
+
+cleanup() {
+ [ "$PASS" = "1" ] || (echo FAIL && exit 1)
+}
+
+LXCFSDIR=${LXCFSDIR:-/var/lib/lxcfs}
+
+trap cleanup EXIT HUP INT TERM
+
+if ! mountpoint -q ${LXCFSDIR}; then
+ echo "lxcfs isn't mounted on ${LXCFSDIR}"
+ exit 1
+fi
+
+echo "==> Checking for cpuset cgroups"
+[ ! -d /sys/fs/cgroup/cpuset ] && exit 0
+
+TESTCASE="Stress readdir"
+for i in `seq 1 1000`;do ls -al "${LXCFSDIR}/cgroup/cpuset" >/dev/null; done
+
+PASS=1