ch_bufhead
if (ch_bufhead != END_OF_CHAIN) {
bp = bufnode_buf(ch_bufhead);
if (ch_bufhead != bn) {
firstbn = ch_bufhead;
while (ch_bufhead != END_OF_CHAIN) {
bn = ch_bufhead;
for ((bn) = ch_bufhead; (bn) != END_OF_CHAIN; (bn) = (bn)->next)
(bn)->next = ch_bufhead; \
ch_bufhead->prev = (bn); \
ch_bufhead = (bn);