Lines Matching defs:strm
22 struct z_erofs_deflate *strm;
25 strm = z_erofs_deflate_head;
26 if (!strm) {
33 while (strm) {
34 struct z_erofs_deflate *n = strm->next;
36 vfree(strm->z.workspace);
37 kfree(strm);
39 strm = n;
52 struct z_erofs_deflate *strm;
54 strm = kzalloc(sizeof(*strm), GFP_KERNEL);
55 if (!strm)
59 strm->z.workspace = vmalloc(zlib_inflate_workspacesize());
60 if (!strm->z.workspace) {
61 kfree(strm);
66 strm->next = z_erofs_deflate_head;
67 z_erofs_deflate_head = strm;
106 struct z_erofs_deflate *strm;
124 strm = z_erofs_deflate_head;
125 if (!strm) {
130 z_erofs_deflate_head = strm->next;
136 zerr = zlib_inflateInit2(&strm->z, -MAX_WBITS);
143 strm->z.avail_in = min_t(u32, insz, PAGE_SIZE - rq->pageofs_in);
144 insz -= strm->z.avail_in;
145 strm->z.next_in = kin + rq->pageofs_in;
146 strm->z.avail_out = 0;
149 if (!strm->z.avail_out) {
158 strm->z.avail_out = min_t(u32, outsz, PAGE_SIZE - pofs);
159 outsz -= strm->z.avail_out;
171 strm->z.next_out = kout + pofs;
175 if (!strm->z.avail_in && insz) {
183 j = strm->z.next_out - kout;
187 strm->z.avail_in = min_t(u32, insz, PAGE_SIZE);
188 insz -= strm->z.avail_in;
190 strm->z.next_in = kin;
194 strm->z.next_out = kout + j;
205 memcpy(strm->bounce, strm->z.next_in, strm->z.avail_in);
206 strm->z.next_in = strm->bounce;
225 zerr = zlib_inflate(&strm->z, Z_SYNC_FLUSH);
226 if (zerr != Z_OK || !(outsz + strm->z.avail_out)) {
238 if (zlib_inflateEnd(&strm->z) != Z_OK && !err)
246 strm->next = z_erofs_deflate_head;
247 z_erofs_deflate_head = strm;