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
   3381        304          0       3717        e65    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
   2870        216         16       3102        c1e    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.

Gargi Sharma (4):
  pid: Replace pid bitmap implementation with IDR API
  idr: Add a function idr_get()
  pid.c: Replace pidhash lookup with idr_get()
  pid: Remove pidhash

 arch/powerpc/platforms/cell/spufs/sched.c |   2 +-
 fs/proc/loadavg.c                         |   2 +-
 include/linux/idr.h                       |   1 +
 include/linux/init_task.h                 |   1 -
 include/linux/pid.h                       |   2 -
 include/linux/pid_namespace.h             |  16 +-
 init/main.c                               |   3 +-
 kernel/fork.c                             |   2 +-
 kernel/pid.c                              | 241 +++++-------------------------
 kernel/pid_namespace.c                    |  45 +++---
 lib/idr.c                                 |  11 ++
 11 files changed, 78 insertions(+), 248 deletions(-)

-- 
2.7.4

Reply via email to