Lines Matching refs:stream
84 struct squashfs_xz *stream;
87 stream = kmalloc(sizeof(*stream), GFP_KERNEL);
88 if (stream == NULL) {
93 stream->state = xz_dec_init(XZ_PREALLOC, comp_opts->dict_size);
94 if (stream->state == NULL) {
95 kfree(stream);
100 return stream;
110 struct squashfs_xz *stream = strm;
112 if (stream) {
113 xz_dec_end(stream->state);
114 kfree(stream);
126 struct squashfs_xz *stream = strm;
128 xz_dec_reset(stream->state);
129 stream->buf.in_pos = 0;
130 stream->buf.in_size = 0;
131 stream->buf.out_pos = 0;
132 stream->buf.out_size = PAGE_SIZE;
133 stream->buf.out = squashfs_first_page(output);
134 if (IS_ERR(stream->buf.out)) {
135 error = PTR_ERR(stream->buf.out);
142 if (stream->buf.in_pos == stream->buf.in_size) {
155 stream->buf.in = data + offset;
156 stream->buf.in_size = avail;
157 stream->buf.in_pos = 0;
161 if (stream->buf.out_pos == stream->buf.out_size) {
162 stream->buf.out = squashfs_next_page(output);
163 if (IS_ERR(stream->buf.out)) {
164 error = PTR_ERR(stream->buf.out);
166 } else if (stream->buf.out != NULL) {
167 stream->buf.out_pos = 0;
172 xz_err = xz_dec_run(stream->state, &stream->buf);
184 return error ? error : total + stream->buf.out_pos;