The patch titled Subject: proc-report-open-files-as-size-in-stat-for-proc-pid-fd-v3 has been added to the -mm mm-nonmm-unstable branch. Its filename is proc-report-open-files-as-size-in-stat-for-proc-pid-fd-v3.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/proc-report-open-files-as-size-in-stat-for-proc-pid-fd-v3.patch This patch will later appear in the mm-nonmm-unstable branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next via the mm-everything branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there every 2-3 working days ------------------------------------------------------ From: Ivan Babrou <ivan@xxxxxxxxxxxxxx> Subject: proc-report-open-files-as-size-in-stat-for-proc-pid-fd-v3 Date: Mon, 17 Oct 2022 21:58:44 -0700 use bitmap_weight() to count the bits Link: https://lkml.kernel.org/r/20221018045844.37697-1-ivan@xxxxxxxxxxxxxx Signed-off-by: Ivan Babrou <ivan@xxxxxxxxxxxxxx> Cc: Alexey Dobriyan <adobriyan@xxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- fs/proc/fd.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) --- a/fs/proc/fd.c~proc-report-open-files-as-size-in-stat-for-proc-pid-fd-v3 +++ a/fs/proc/fd.c @@ -283,7 +283,7 @@ static int proc_readfd_count(struct inod { struct task_struct *p = get_proc_task(inode); struct fdtable *fdt; - unsigned int i, size, open_fds = 0; + unsigned int open_fds = 0; if (!p) return -ENOENT; @@ -293,10 +293,7 @@ static int proc_readfd_count(struct inod rcu_read_lock(); fdt = files_fdtable(p->files); - size = fdt->max_fds; - - for (i = size / BITS_PER_LONG; i > 0;) - open_fds += hweight64(fdt->open_fds[--i]); + open_fds = bitmap_weight(fdt->open_fds, fdt->max_fds); rcu_read_unlock(); } _ Patches currently in -mm which might be from ivan@xxxxxxxxxxxxxx are proc-report-open-files-as-size-in-stat-for-proc-pid-fd.patch proc-report-open-files-as-size-in-stat-for-proc-pid-fd-v3.patch