We currently have the per-domain partially populated reservation queues
and the per-domain queue locks. Define a new per-domain structure to
contain both of them. This puts the queue fields and lock in the same
cache line and avoids the false sharing within the old queue array.
Also fix field packing in the reservation structure. In many places we
assume that a domain index fits in 8 bits, so we can do the same there
as well. This reduces the size of the structure by 8 bytes.
Update some comments while here. No functional change intended.