• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/net/sunrpc/

Lines Matching defs:tail

118 	struct kvec *tail = xdr->tail;
126 tail->iov_base = p;
127 tail->iov_len = 0;
133 tail->iov_base = (char *)p + (len & 3);
134 tail->iov_len = pad;
147 struct kvec *tail = xdr->tail;
157 tail->iov_base = buf + offset;
158 tail->iov_len = buflen - offset;
318 * moved into the inlined pages and/or the tail.
323 struct kvec *head, *tail;
327 tail = buf->tail;
331 /* Shift the tail first */
332 if (tail->iov_len != 0) {
333 if (tail->iov_len > len) {
334 copy = tail->iov_len - len;
335 memmove((char *)tail->iov_base + len,
336 tail->iov_base, copy);
338 /* Copy from the inlined pages into the tail */
343 if (offs >= tail->iov_len)
345 else if (copy > tail->iov_len - offs)
346 copy = tail->iov_len - offs;
348 _copy_from_pages((char *)tail->iov_base + offs,
352 /* Do we also need to copy data from the head into the tail ? */
355 if (copy > tail->iov_len)
356 copy = tail->iov_len;
357 memcpy(tail->iov_base,
391 * moved into the tail.
396 struct kvec *tail;
401 tail = buf->tail;
404 /* Shift the tail first */
405 if (tail->iov_len != 0) {
406 p = (char *)tail->iov_base + len;
407 if (tail->iov_len > len) {
408 copy = tail->iov_len - len;
409 memmove(p, tail->iov_base, copy);
412 /* Copy from the inlined pages into the tail */
414 if (copy > tail->iov_len)
415 copy = tail->iov_len;
416 _copy_from_pages((char *)tail->iov_base,
450 int scratch_len = buf->buflen - buf->page_len - buf->tail[0].iov_len;
510 struct kvec *iov = buf->tail;
582 * bytes is moved into the XDR tail[].
598 /* Truncate page data and move it into the tail */
602 xdr->iov = iov = buf->tail;
611 * Position current pointer at beginning of tail, and
626 * bytes is moved into the XDR tail[]. The current pointer is then
634 * Position current pointer at beginning of tail, and
650 buf->tail[0] = empty_iov;
687 if (base < buf->tail[0].iov_len) {
688 subbuf->tail[0].iov_base = buf->tail[0].iov_base + base;
689 subbuf->tail[0].iov_len = min_t(unsigned int, len,
690 buf->tail[0].iov_len - base);
691 len -= subbuf->tail[0].iov_len;
694 subbuf->tail[0].iov_base = NULL;
695 subbuf->tail[0].iov_len = 0;
696 base -= buf->tail[0].iov_len;
718 this_len = min_t(unsigned int, len, subbuf->tail[0].iov_len);
719 memcpy(obj, subbuf->tail[0].iov_base, this_len);
749 this_len = min_t(unsigned int, len, subbuf->tail[0].iov_len);
750 memcpy(subbuf->tail[0].iov_base, obj, this_len);
791 * entirely in the head or the tail, set object to point to it; otherwise
792 * try to find space for it at the end of the tail, copy it there, and
807 /* ..or is the obj contained entirely in the tail? */
808 obj->data = subbuf.tail[0].iov_base;
809 if (subbuf.tail[0].iov_len == obj->len)
812 /* use end of tail as storage for obj:
816 * tail.) */
819 if (buf->tail[0].iov_len != 0)
820 obj->data = buf->tail[0].iov_base + buf->tail[0].iov_len;
985 base = buf->page_len; /* align to start of tail */
988 /* process tail */
991 c = buf->tail->iov_base + base;
1039 buf->head->iov_len + buf->page_len + buf->tail->iov_len)
1098 if (offset < buf->tail[0].iov_len) {
1099 thislen = buf->tail[0].iov_len - offset;
1102 sg_set_buf(sg, buf->tail[0].iov_base + offset, thislen);