unsigned int __nocast gfp) 
gfp_t gfp) 
int sctp_ulpq_tail_data(struct sctp_ulpq *ulpq, struct sctp_chunk *chunk,			unsigned int __nocast gfp){	struct sk_buff_head temp;	sctp_data_chunk_t *hdr;	struct sctp_ulpevent *event;	hdr = (sctp_data_chunk_t *) chunk->chunk_hdr;	/* Create an event from the incoming chunk. */	event = sctp_ulpevent_make_rcvmsg(chunk->asoc, chunk, gfp);	if (!event)		return -ENOMEM;	/* Do reassembly if needed.  */	event = sctp_ulpq_reasm(ulpq, event);	/* Do ordering if needed.  */	if ((event) && (event->msg_flags & MSG_EOR)){		/* Create a temporary list to collect chunks on.  */		skb_queue_head_init(&temp);		__skb_queue_tail(&temp, sctp_event2skb(event));		event = sctp_ulpq_order(ulpq, event);	}	/* Send event to the ULP.  'event' is the sctp_ulpevent for	 * very first SKB on the 'temp' list.	 */	if (event)		sctp_ulpq_tail_event(ulpq, event);	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/dd0fc66fb33cd610bc1a5db8a5e232d34879b4d7/ulpqueue.c/buggy/net/sctp/ulpqueue.c