Replace PID implementation with IDR API
From: | Gargi Sharma <gs051095-AT-gmail.com> | |
To: | linux-kernel-AT-vger.kernel.org | |
Subject: | [RFC 0/2] Replace PID implementation with IDR API | |
Date: | Sat, 9 Sep 2017 18:03:15 +0530 | |
Message-ID: | <cover.1504952909.git.gs051095@gmail.com> | |
Cc: | riel-AT-surriel.com, julia.lawall-AT-lip6.fr, akpm-AT-linux-foundation.org, mingo-AT-kernel.org, pasha.tatashin-AT-oracle.com, ktkhai-AT-virtuozzo.com, oleg-AT-redhat.com, wangkefeng.wang-AT-huawei.org, Gargi Sharma <gs051095-AT-gmail.com> |
This patch series replaces kernel bitmap implementation of PID allocation with IDR API. The following are the stats for pid and pid_namespace object files before and after the replacement. There is a noteworthy change between the IDR and bitmap implementation. Before text data bss dec hex filename 8447 3894 64 12405 3075 kernel/pid.o After text data bss dec hex filename 3602 324 8 3934 f5e kernel/pid.o Before text data bss dec hex filename 5692 1842 192 7726 1e2e kernel/pid_namespace.o After text data bss dec hex filename 2858 216 16 3090 c12 kernel/pid_namespace.o There wasn't a considerable difference between the time required for allocation of PIDs to the processes. The IDR implementation is a little faster than bitmap implementation. The next change in the pipeline is replacing pidhash with IDR API implementation. Gargi Sharma (2): proc: Return if nothing to unmount pid: Replace PID bitmap implementation with IDR API fs/proc/base.c | 4 + include/linux/pid.h | 1 + include/linux/pid_namespace.h | 5 +- init/main.c | 4 +- kernel/pid.c | 204 ++++++++---------------------------------- kernel/pid_namespace.c | 39 ++++---- 6 files changed, 63 insertions(+), 194 deletions(-) -- 2.7.4