unsigned n, int gfp_flags) 
unsigned n, unsigned gfp_flags) 
static int prealloc (struct list_head *list, struct usb_ep *ep,			unsigned n, int gfp_flags){	unsigned		i;	struct usb_request	*req;	if (!n)		return -ENOMEM;	/* queue/recycle up to N requests */	i = n;	list_for_each_entry (req, list, list) {		if (i-- == 0)			goto extra;	}	while (i--) {		req = usb_ep_alloc_request (ep, gfp_flags);		if (!req)			return list_empty (list) ? -ENOMEM : 0;		list_add (&req->list, list);	}	return 0;extra:	/* free extras */	for (;;) {		struct list_head	*next;		next = req->list.next;		list_del (&req->list);		usb_ep_free_request (ep, req);		if (next == list)			break;		req = container_of (next, struct usb_request, list);	}	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/5db539e49fc7471e23bf3c94ca304f008cb7b7f3/ether.c/clean/drivers/usb/gadget/ether.c