Lines Matching defs:sge
35 struct scatterlist *sge;
53 sge = &msg->sg.data[i];
56 sg_page(sge) == pfrag->page &&
57 sge->offset + sge->length == orig_offset) {
58 sge->length += use;
65 sge = &msg->sg.data[msg->sg.end];
66 sg_unmark_end(sge);
67 sg_set_page(sge, pfrag->page, use, orig_offset);
90 struct scatterlist *sge = sk_msg_elem(src, i);
95 if (sge->length > off)
97 off -= sge->length;
101 sge = sk_msg_elem(src, i);
105 sge_len = sge->length - off;
113 (sg_page(sge) == sg_page(sgd)) &&
114 (sg_virt(sge) + off == sg_virt(sgd) + sgd->length)) {
118 sge_off = sge->offset + off;
119 sk_msg_page_add(dst, sg_page(sge), sge_len, sge_off);
130 sge = sk_msg_elem(src, i);
142 struct scatterlist *sge = sk_msg_elem(msg, i);
144 if (bytes < sge->length) {
145 sge->length -= bytes;
146 sge->offset += bytes;
151 sk_mem_uncharge(sk, sge->length);
152 bytes -= sge->length;
153 sge->length = 0;
154 sge->offset = 0;
166 struct scatterlist *sge = &msg->sg.data[i];
167 int uncharge = (bytes < sge->length) ? bytes : sge->length;
179 struct scatterlist *sge = sk_msg_elem(msg, i);
180 u32 len = sge->length;
186 put_page(sg_page(sge));
188 memset(sge, 0, sizeof(*sge));
195 struct scatterlist *sge = sk_msg_elem(msg, i);
199 msg->sg.size -= sge->length;
203 sge = sk_msg_elem(msg, i);
225 struct scatterlist *sge;
229 sge = sk_msg_elem(msg, i);
230 if (!sge->length)
232 if (bytes < sge->length) {
235 sge->length -= bytes;
236 sge->offset += bytes;
241 msg->sg.size -= sge->length;
242 bytes -= sge->length;
372 struct scatterlist *sge;
377 sge = sk_msg_elem(msg, i);
379 if (msg->sg.copybreak >= sge->length) {
384 sge = sk_msg_elem(msg, i);
387 buf_size = sge->length - msg->sg.copybreak;
389 to = sg_virt(sge) + msg->sg.copybreak;