33 rc = ngx_event_pipe_write_to_downstream(p);
49 if (ngx_event_pipe_read_upstream(p) ==
NGX_ABORT) {
131 "pipe preread: %z", n);
139 #if (NGX_HAVE_KQUEUE)
162 "kevent() reported that upstream "
163 "closed connection");
214 "pipe downstream ready");
227 rc = ngx_event_pipe_write_chain_to_temp_file(p);
266 "no pipe bufs to read in");
274 "pipe recv chain: %z", n);
288 ngx_event_pipe_remove_shadow_links(chain->
buf);
306 while (cl && n > 0) {
308 ngx_event_pipe_remove_shadow_links(cl->
buf);
333 for (ln = cl; ln->
next; ln = ln->
next) { }
342 for (cl = p->
busy; cl; cl = cl->
next) {
344 "pipe buf busy s:%d t:%d f:%d "
345 "%p, pos %p, size: %z "
346 "file: %O, size: %z",
355 for (cl = p->
out; cl; cl = cl->
next) {
357 "pipe buf out s:%d t:%d f:%d "
358 "%p, pos %p, size: %z "
359 "file: %O, size: %z",
368 for (cl = p->
in; cl; cl = cl->
next) {
370 "pipe buf in s:%d t:%d f:%d "
371 "%p, pos %p, size: %z "
372 "file: %O, size: %z",
383 "pipe buf free s:%d t:%d f:%d "
384 "%p, pos %p, size: %z "
385 "file: %O, size: %z",
395 "pipe length: %O", p->
length);
441 if (ngx_event_pipe_write_chain_to_temp_file(p) ==
NGX_ABORT) {
463 "pipe write downstream: %d", downstream->
write->
ready);
469 return ngx_event_pipe_drain_chains(p);
476 for (cl = p->
busy; cl; cl = cl->
next) {
482 "pipe write downstream flush out");
484 for (cl = p->
out; cl; cl = cl->
next) {
492 return ngx_event_pipe_drain_chains(p);
500 "pipe write downstream flush in");
502 for (cl = p->
in; cl; cl = cl->
next) {
510 return ngx_event_pipe_drain_chains(p);
529 "pipe write downstream done");
549 for (cl = p->
busy; cl; cl = cl->
next) {
562 "pipe write busy: %uz", bsize);
573 prev_last_shadow = 1;
581 "recycled buffer in pipe out chain");
590 "pipe write buf ls:%d %p %z",
625 "pipe write: out:%p, f:%d", out, flush);
634 if (flushed++ > 10) {
645 return ngx_event_pipe_drain_chains(p);
648 for (cl = p->
free; cl; cl = cl->
next) {
685 ssize_t size, bsize, n;
688 ngx_chain_t *cl, *tl, *next, *out, **ll, **last_out, **last_free, fl;
704 prev_last_shadow = 1;
713 "pipe buf ls:%d %p, pos %p, size: %z",
780 last_out = &cl->
next;
812 last_free = &(*last_free)->
next)
817 for (cl = out; cl; cl = next) {
836 last_free = &tl->
next;
841 ngx_event_pipe_remove_shadow_links(b->
shadow);
909 ngx_event_pipe_remove_shadow_links(
ngx_buf_t *buf)