Lines Matching refs:STbuffer
679 struct st_buffer *STbuffer; in write_behind_check() local
684 STbuffer = STp->buffer; in write_behind_check()
685 if (!STbuffer->writing) in write_behind_check()
696 SRpnt = STbuffer->last_SRpnt; in write_behind_check()
697 STbuffer->last_SRpnt = NULL; in write_behind_check()
703 STbuffer->buffer_bytes -= STbuffer->writing; in write_behind_check()
709 STps->drv_block += STbuffer->writing / STp->block_size; in write_behind_check()
712 cmdstatp = &STbuffer->cmdstat; in write_behind_check()
713 if (STbuffer->syscall_result) { in write_behind_check()
727 STbuffer->writing = 0; in write_behind_check()
732 STbuffer->cmdstat.midlevel_result, retval);) /* end DEB */ in write_behind_check()
3955 static int enlarge_buffer(struct st_buffer * STbuffer, int new_size) in enlarge_buffer() argument
3960 if (new_size <= STbuffer->buffer_size) in enlarge_buffer()
3963 if (STbuffer->buffer_size <= PAGE_SIZE) in enlarge_buffer()
3964 normalize_buffer(STbuffer); /* Avoid extra segment */ in enlarge_buffer()
3966 max_segs = STbuffer->use_sg; in enlarge_buffer()
3970 if (STbuffer->cleared) in enlarge_buffer()
3973 if (STbuffer->frp_segs) { in enlarge_buffer()
3974 order = STbuffer->reserved_page_order; in enlarge_buffer()
3982 STbuffer->reserved_page_order = order; in enlarge_buffer()
3987 normalize_buffer(STbuffer); in enlarge_buffer()
3988 return enlarge_buffer(STbuffer, new_size); in enlarge_buffer()
3991 for (segs = STbuffer->frp_segs, got = STbuffer->buffer_size; in enlarge_buffer()
3997 DEB(STbuffer->buffer_size = got); in enlarge_buffer()
3998 normalize_buffer(STbuffer); in enlarge_buffer()
4002 STbuffer->frp_segs += 1; in enlarge_buffer()
4004 STbuffer->buffer_size = got; in enlarge_buffer()
4005 STbuffer->reserved_pages[segs] = page; in enlarge_buffer()
4008 STbuffer->b_data = page_address(STbuffer->reserved_pages[0]); in enlarge_buffer()
4027 static void normalize_buffer(struct st_buffer * STbuffer) in normalize_buffer() argument
4029 int i, order = STbuffer->reserved_page_order; in normalize_buffer()
4031 for (i = 0; i < STbuffer->frp_segs; i++) { in normalize_buffer()
4032 __free_pages(STbuffer->reserved_pages[i], order); in normalize_buffer()
4033 STbuffer->buffer_size -= (PAGE_SIZE << order); in normalize_buffer()
4035 STbuffer->frp_segs = 0; in normalize_buffer()
4036 STbuffer->sg_segs = 0; in normalize_buffer()
4037 STbuffer->reserved_page_order = 0; in normalize_buffer()
4038 STbuffer->map_data.offset = 0; in normalize_buffer()