Lines Matching refs:len
56 size_t rb_write(struct ring_buffer *rb, void *data, size_t len)
63 towrite = MIN(len, towrite);
66 len = rb->size - index;
67 len = MIN(len, towrite);
68 memcpy(((char *)rb->data)+index, data, len);
69 rb->avail += len;
70 written = len;
71 if (len < towrite) {
72 towrite -= len;
73 len = MIN(towrite, rb_can_write(rb));
75 memcpy(((char *)rb->data)+index, ((char *)data)+written, len);
76 rb->avail += len;
77 written += len;
83 size_t rb_read(struct ring_buffer *rb, void *data, size_t len)
90 toread = MIN(len, toread);
93 len = rb->size - index;
94 len = MIN(len, toread);
95 memcpy(data, ((char *)rb->data)+index, len);
96 rb->avail -= len;
97 rb->current += len;
98 got = len;
99 if (len < toread) {
100 toread -= len;
101 len = MIN(toread, rb_can_read(rb));
103 memcpy(((char *)data)+got, ((char *)rb->data)+index, len);
104 rb->current = len;
105 rb->avail -= len;
106 got += len;
124 int len, olen;
125 len = rb_write(&myrb.rb, buffer, got);