From: Felix Fietkau Date: Tue, 25 May 2021 16:12:41 +0000 (+0200) Subject: kernel: fix a perf build error X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=5f1338e9839bebe497672c4ca6c0bca4adccf3fa;p=openwrt%2Fstaging%2Flinusw.git kernel: fix a perf build error Signed-off-by: Felix Fietkau --- diff --git a/target/linux/generic/pending-5.10/110-perf-jevents-fix-getting-maximum-number-of-fds.patch b/target/linux/generic/pending-5.10/110-perf-jevents-fix-getting-maximum-number-of-fds.patch new file mode 100644 index 0000000000..ab6b250953 --- /dev/null +++ b/target/linux/generic/pending-5.10/110-perf-jevents-fix-getting-maximum-number-of-fds.patch @@ -0,0 +1,24 @@ +From: Felix Fietkau +Date: Tue, 25 May 2021 18:00:34 +0200 +Subject: [PATCH] perf jevents: fix getting maximum number of fds + +On some hosts, rlim.rlim_max can be returned as RLIM_INFINITY. +By casting it to int, it is interpreted as -1, which will cause get_maxfds +to return 0, causing "Invalid argument" errors in nftw() calls. +Fix this by casting the second argument of min() to rlim_t instead. + +Fixes: 80eeb67fe577 ("perf jevents: Program to convert JSON file") +Signed-off-by: Felix Fietkau +--- + +--- a/tools/perf/pmu-events/jevents.c ++++ b/tools/perf/pmu-events/jevents.c +@@ -897,7 +897,7 @@ static int get_maxfds(void) + struct rlimit rlim; + + if (getrlimit(RLIMIT_NOFILE, &rlim) == 0) +- return min((int)rlim.rlim_max / 2, 512); ++ return min(rlim.rlim_max / 2, (rlim_t)512); + + return 512; + }