android_kernel_xiaomi_sm8350/include
Tejun Heo 72dba584b6 ida: implement idr based id allocator
Implement idr based id allocator.  ida is used the same way idr is
used but lacks id -> ptr translation and thus consumes much less
memory.  struct ida_bitmap is attached as leaf nodes to idr tree which
is managed by the idr code.  Each ida_bitmap is 128bytes long and
contains slightly less than a thousand slots.

ida is more aggressive with releasing extra resources acquired using
ida_pre_get().  After every successful id allocation, ida frees one
reserved idr_layer if possible.  Reserved ida_bitmap is not freed
automatically but only one ida_bitmap is reserved and it's almost
always used right away.  Under most circumstances, ida won't hold on
to memory for too long which isn't actively used.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
2007-07-11 16:09:03 -07:00
..
acpi
asm-alpha
asm-arm Introduce fixed sys_sync_file_range2() syscall, implement on PowerPC and ARM 2007-06-28 11:38:30 -07:00
asm-arm26 lots-of-architectures: enable arbitary speed tty support 2007-07-10 17:51:13 -07:00
asm-avr32 lots-of-architectures: enable arbitary speed tty support 2007-07-10 17:51:13 -07:00
asm-blackfin lots-of-architectures: enable arbitary speed tty support 2007-07-10 17:51:13 -07:00
asm-cris lots-of-architectures: enable arbitary speed tty support 2007-07-10 17:51:13 -07:00
asm-frv lots-of-architectures: enable arbitary speed tty support 2007-07-10 17:51:13 -07:00
asm-generic sched: simplify sched_find_first_bit() 2007-07-09 18:52:00 +02:00
asm-h8300 lots-of-architectures: enable arbitary speed tty support 2007-07-10 17:51:13 -07:00
asm-i386 i386: es7000 build breakage fix 2007-07-06 10:23:43 -07:00
asm-ia64 lots-of-architectures: enable arbitary speed tty support 2007-07-10 17:51:13 -07:00
asm-m32r lots-of-architectures: enable arbitary speed tty support 2007-07-10 17:51:13 -07:00
asm-m68k lots-of-architectures: enable arbitary speed tty support 2007-07-10 17:51:13 -07:00
asm-m68knommu
asm-mips lots-of-architectures: enable arbitary speed tty support 2007-07-10 17:51:13 -07:00
asm-parisc lots-of-architectures: enable arbitary speed tty support 2007-07-10 17:51:13 -07:00
asm-powerpc [POWERPC] Uninline and export virq_to_hw() for the pasemi_mac driver 2007-07-02 13:29:21 +10:00
asm-ppc Rework ptep_set_access_flags and fix sun4c 2007-06-16 13:16:16 -07:00
asm-s390 lots-of-architectures: enable arbitary speed tty support 2007-07-10 17:51:13 -07:00
asm-sh lots-of-architectures: enable arbitary speed tty support 2007-07-10 17:51:13 -07:00
asm-sh64
asm-sparc Rework ptep_set_access_flags and fix sun4c 2007-06-16 13:16:16 -07:00
asm-sparc64 [SPARC64]: Add linux/pagemap.h to asm/tlb.h 2007-06-28 21:25:31 -07:00
asm-um uml: add asm/paravirt.h 2007-06-24 08:59:11 -07:00
asm-v850 lots-of-architectures: enable arbitary speed tty support 2007-07-10 17:51:13 -07:00
asm-x86_64 x86_64: Fix eventd/timerfd syscalls 2007-06-20 14:27:25 -07:00
asm-xtensa lots-of-architectures: enable arbitary speed tty support 2007-07-10 17:51:13 -07:00
crypto
keys
linux ida: implement idr based id allocator 2007-07-11 16:09:03 -07:00
math-emu
media
mtd
net AX88796 network driver 2007-07-10 12:41:08 -04:00
pcmcia PCMCIA-NETDEV : add new ID of lan&modem multifunction card 2007-07-08 22:16:39 -04:00
rdma
rxrpc
scsi
sound
video
Kbuild