rem: mqueue->msq_buffers = (mq_buffer*)malloc(buffering_req);
add: mqueue->msq_buffers = (mq_buffer*)__lwp_wkspace_allocate(buffering_req);
context: u32 __lwpmq_initialize(mq_cntrl *mqueue,mq_attr *attrs,u32 max_pendingmsgs,u32 max_msgsize){	u32 alloc_msgsize;	u32 buffering_req;	#ifdef _LWPMQ_DEBUG	printf("__lwpmq_initialize(%p,%p,%d,%d)\n",mqueue,attrs,max_pendingmsgs,max_msgsize);#endif	mqueue->max_pendingmsgs = max_pendingmsgs;	mqueue->num_pendingmsgs = 0;	mqueue->max_msgsize = max_msgsize;	__lwpmq_set_notify(mqueue,NULL,NULL);		alloc_msgsize = max_msgsize;	if(alloc_msgsize&(sizeof(u32)-1))		alloc_msgsize = (alloc_msgsize+sizeof(u32))&~(sizeof(u32)-1);		buffering_req = max_pendingmsgs*(alloc_msgsize+sizeof(mq_buffercntrl));	mqueue->msq_buffers = (mq_buffer*)malloc(buffering_req);	if(!mqueue->msq_buffers) return 0;	__lwp_queue_initialize(&mqueue->inactive_msgs,mqueue->msq_buffers,max_pendingmsgs,(alloc_msgsize+sizeof(mq_buffercntrl)));	__lwp_queue_init_empty(&mqueue->pending_msgs);	__lwp_threadqueue_init(&mqueue->wait_queue,__lwpmq_is_priority(attrs)?LWP_THREADQ_MODEPRIORITY:LWP_THREADQ_MODEFIFO,LWP_STATES_WAITING_FOR_MESSAGE,LWP_MQ_STATUS_TIMEOUT);	return 1;}