From: Jo-Philipp Wich Date: Wed, 1 Apr 2020 16:19:30 +0000 (+0200) Subject: luci-mod-status: luci-bwc: skip "." and ".." when finding netdevs X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=e5e71a55ab165584762ac262d4d799e4a5096c9a;p=oweals%2Fluci.git luci-mod-status: luci-bwc: skip "." and ".." when finding netdevs Skip the "." and ".." directory entries of "/sys/class/net/" instead of passing them on to libiwinfo's probe function. This avoids a situation where the kernel requests a modprobe of "netdev-." and "netdev-.." over and over again, resulting in high load on lower end systems. Signed-off-by: Jo-Philipp Wich (cherry picked from commit 16f0997bdbf85df0c7bae7f0773a118714d15cdf) --- diff --git a/modules/luci-mod-status/src/luci-bwc.c b/modules/luci-mod-status/src/luci-bwc.c index 9a57fa23a..6f7016ec9 100644 --- a/modules/luci-mod-status/src/luci-bwc.c +++ b/modules/luci-mod-status/src/luci-bwc.c @@ -492,12 +492,12 @@ static int run_daemon(void) { while ((e = readdir(dir)) != NULL) { + if (!strcmp(e->d_name, "lo") || !strcmp(e->d_name, ".") || !strcmp(e->d_name, "..")) + continue; + if (iw && iw_update(iw, e->d_name, &rate, &rssi, &noise)) update_radiostat(e->d_name, rate, rssi, noise); - if (!strcmp(e->d_name, "lo")) - continue; - for (i = 0; i < sizeof(sysfs_stats)/sizeof(sysfs_stats[0]); i++) { *sysfs_stats[i].value = 0;