/// Maximum number of thread-local storage keys
#define MAX_TLS 16
+/// Maximum number of buffered capability receive slots
+#define MAX_RECV_SLOTS 4
+
/** \brief TLS dynamic thread vector data structure
*
* See: ELF handling for thread-local storage. Ulrich Drepper, Dec 2005.
errval_t async_error; ///< RPC async error
uint32_t outgoing_token; ///< Token of outgoing message
bool mask_channels;
- struct capref recv_slots[16]; ///< Queued cap recv slots
+ struct capref recv_slots[MAX_RECV_SLOTS];///< Queued cap recv slots
int8_t recv_slot_count; ///< number of currently queued recv slots
};
struct thread *me = thread_self();
assert(me);
- assert(me->recv_slot_count < 16);
+ assert(me->recv_slot_count < MAX_RECV_SLOTS);
assert(me->recv_slot_count >= 0);
me->recv_slots[me->recv_slot_count++] = recv_slot;