Lines Matching refs:zstrm
28 struct zcomp_strm *zstrm; member
65 static void zcomp_strm_free(struct zcomp *comp, struct zcomp_strm *zstrm) in zcomp_strm_free() argument
67 if (zstrm->private) in zcomp_strm_free()
68 comp->backend->destroy(zstrm->private); in zcomp_strm_free()
69 free_pages((unsigned long)zstrm->buffer, 1); in zcomp_strm_free()
70 kfree(zstrm); in zcomp_strm_free()
79 struct zcomp_strm *zstrm = kmalloc(sizeof(*zstrm), GFP_NOIO); in zcomp_strm_alloc() local
80 if (!zstrm) in zcomp_strm_alloc()
83 zstrm->private = comp->backend->create(); in zcomp_strm_alloc()
88 zstrm->buffer = (void *)__get_free_pages(GFP_NOIO | __GFP_ZERO, 1); in zcomp_strm_alloc()
89 if (!zstrm->private || !zstrm->buffer) { in zcomp_strm_alloc()
90 zcomp_strm_free(comp, zstrm); in zcomp_strm_alloc()
91 zstrm = NULL; in zcomp_strm_alloc()
93 return zstrm; in zcomp_strm_alloc()
103 struct zcomp_strm *zstrm; in zcomp_strm_multi_find() local
108 zstrm = list_entry(zs->idle_strm.next, in zcomp_strm_multi_find()
110 list_del(&zstrm->list); in zcomp_strm_multi_find()
112 return zstrm; in zcomp_strm_multi_find()
124 zstrm = zcomp_strm_alloc(comp); in zcomp_strm_multi_find()
125 if (!zstrm) { in zcomp_strm_multi_find()
134 return zstrm; in zcomp_strm_multi_find()
138 static void zcomp_strm_multi_release(struct zcomp *comp, struct zcomp_strm *zstrm) in zcomp_strm_multi_release() argument
144 list_add(&zstrm->list, &zs->idle_strm); in zcomp_strm_multi_release()
152 zcomp_strm_free(comp, zstrm); in zcomp_strm_multi_release()
159 struct zcomp_strm *zstrm; in zcomp_strm_multi_set_max_streams() local
168 zstrm = list_entry(zs->idle_strm.next, in zcomp_strm_multi_set_max_streams()
170 list_del(&zstrm->list); in zcomp_strm_multi_set_max_streams()
171 zcomp_strm_free(comp, zstrm); in zcomp_strm_multi_set_max_streams()
181 struct zcomp_strm *zstrm; in zcomp_strm_multi_destroy() local
184 zstrm = list_entry(zs->idle_strm.next, in zcomp_strm_multi_destroy()
186 list_del(&zstrm->list); in zcomp_strm_multi_destroy()
187 zcomp_strm_free(comp, zstrm); in zcomp_strm_multi_destroy()
194 struct zcomp_strm *zstrm; in zcomp_strm_multi_create() local
212 zstrm = zcomp_strm_alloc(comp); in zcomp_strm_multi_create()
213 if (!zstrm) { in zcomp_strm_multi_create()
217 list_add(&zstrm->list, &zs->idle_strm); in zcomp_strm_multi_create()
225 return zs->zstrm; in zcomp_strm_single_find()
229 struct zcomp_strm *zstrm) in zcomp_strm_single_release() argument
244 zcomp_strm_free(comp, zs->zstrm); in zcomp_strm_single_destroy()
262 zs->zstrm = zcomp_strm_alloc(comp); in zcomp_strm_single_create()
263 if (!zs->zstrm) { in zcomp_strm_single_create()
299 void zcomp_strm_release(struct zcomp *comp, struct zcomp_strm *zstrm) in zcomp_strm_release() argument
301 comp->strm_release(comp, zstrm); in zcomp_strm_release()
304 int zcomp_compress(struct zcomp *comp, struct zcomp_strm *zstrm, in zcomp_compress() argument
307 return comp->backend->compress(src, zstrm->buffer, dst_len, in zcomp_compress()
308 zstrm->private); in zcomp_compress()