Optimize IDMapper

Simplify code and remove a whole bunch of redundant copies.

Signed-off-by: Adam C. Emerson <aemerson@linuxbox.com>
Clean up uninitialized warning in dbus_message_entrypoint

Signed-off-by: Adam C. Emerson <aemerson@linuxbox.com>
Rewire IDMapper Cache

The last patch didn't touch the cache, just the stuff that queried it.
This patch switches it around to use AVL trees.

Signed-off-by: Adam C. Emerson <aemerson@linuxbox.com>
Streamline dispatch queue.

Restore explicit spinlocks from original design.  This profiles
better (callgrind) than pthread mutex version.

Make req ctr just an atomic inc.

Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Inline the remaining XDR primitive type decoders (attr).

Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Actually implement slot cache in CIH.

Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Fix two apparent (old?) bugs in CIH cache-hit path.

1. assoc check (if valid) must  ensure associated!=NULL
2. the above check also leaked refs (I think)

Signed-off-by: Matt Benjamin <matt@linuxbox.com>
Fix early return on entry == asssociated from cache_inode_get

Signed-off-by: Adam C. Emerson <aemerson@linuxbox.com>