| plan 9 kernel history: overview | file list | diff list |
1992/0205/port/sturp.c (diff list | history)
| 1992/0114/sys/src/9/port/sturp.c:169,175 – 1992/0205/sys/src/9/port/sturp.c:169,178 (short | long | prev | next) | ||
| 1990/0717 | WR(q)->ptr = 0; | |
| 1992/0114 | exhausted("urp structures"); | |
| 1990/0717 | } | |
| 1990/0227 | ||
| 1992/0205 | /* q->flag |= QDEBUG; q->other->flag |= QDEBUG; */ | |
| 1990/0312 | q->ptr = q->other->ptr = up; | |
| 1990/1212 | q->rp = &urpkr; | |
| 1990/0227 | up->rq = q; | |
| 1992/0114/sys/src/9/port/sturp.c:298,303 – 1992/0205/sys/src/9/port/sturp.c:301,307 | ||
| 1990/0227 | case 0: break; case ENQ: | |
| 1992/0205 | DPRINT("rENQ(c)\n"); | |
| 1990/0227 | urpstat.enqsr++; | |
| 1990/0312 | sendctl(up, up->lastecho); sendctl(up, ACK+up->iseq); | |
| 1992/0114/sys/src/9/port/sturp.c:304,313 – 1992/0205/sys/src/9/port/sturp.c:308,319 | ||
| 1990/0227 | break; case CHECK: | |
| 1992/0205 | DPRINT("rCHECK(c)\n"); | |
| 1990/0312 | sendctl(up, ACK+up->iseq); | |
| 1990/0227 | break; case AINIT: | |
| 1992/0205 | DPRINT("rAINIT(c)\n"); | |
| 1990/0227 | up->state &= ~INITING; flushinput(up); | |
| 1990/1206 | wakeup(&urpkr); | |
| 1992/0114/sys/src/9/port/sturp.c:315,320 – 1992/0205/sys/src/9/port/sturp.c:321,327 | ||
| 1990/0227 | case INIT0: case INIT1: | |
| 1992/0205 | DPRINT("rINIT%d(c)\n", ctl-INIT0); | |
| 1990/0312 | sendctl(up, AINIT); if(ctl == INIT1) q->put = urpiput; | |
| 1992/0114/sys/src/9/port/sturp.c:322,327 – 1992/0205/sys/src/9/port/sturp.c:329,335 | ||
| 1990/0227 | break; case INITREQ: | |
| 1992/0205 | DPRINT("rINITREQ(c)\n"); | |
| 1990/0227 | initoutput(up, 0); break; | |
| 1992/0114/sys/src/9/port/sturp.c:330,335 – 1992/0205/sys/src/9/port/sturp.c:338,344 | ||
| 1990/0227 | ||
| 1990/0312 | case REJ+0: case REJ+1: case REJ+2: case REJ+3: case REJ+4: case REJ+5: case REJ+6: case REJ+7: | |
| 1992/0205 | DPRINT("rREJ%d(c)\n", ctl-REJ); | |
| 1990/0312 | rcvack(up, ctl); break; | |
| 1992/0114/sys/src/9/port/sturp.c:337,347 – 1992/0205/sys/src/9/port/sturp.c:346,358 | ||
| 1990/0227 | case ACK+4: case ACK+5: case ACK+6: case ACK+7: case ECHO+0: case ECHO+1: case ECHO+2: case ECHO+3: case ECHO+4: case ECHO+5: case ECHO+6: case ECHO+7: | |
| 1992/0205 | DPRINT("%s%d(c)\n", (ctl&ECHO)?"rECHO":"rACK", ctl&7); | |
| 1990/0227 | rcvack(up, ctl); break; case SEQ+0: case SEQ+1: case SEQ+2: case SEQ+3: case SEQ+4: case SEQ+5: case SEQ+6: case SEQ+7: | |
| 1992/0205 | DPRINT("rSEQ%d(c)\n", ctl-SEQ); | |
| 1990/0321 | qlock(&up->ack); | |
| 1990/0312 | i = ctl & Nmask; | |
| 1990/0403 | if(!QFULL(q->next)) | |
| 1992/0114/sys/src/9/port/sturp.c:427,436 – 1992/0205/sys/src/9/port/sturp.c:438,449 | ||
| 1990/0227 | break; case CHECK: | |
| 1992/0205 | DPRINT("rCHECK\n"); | |
| 1990/0312 | sendctl(up, ACK+up->iseq); | |
| 1990/0227 | break; case AINIT: | |
| 1992/0205 | DPRINT("rAINIT\n"); | |
| 1990/0227 | up->state &= ~INITING; flushinput(up); | |
| 1990/1206 | wakeup(&urpkr); | |
| 1992/0114/sys/src/9/port/sturp.c:438,443 – 1992/0205/sys/src/9/port/sturp.c:451,457 | ||
| 1990/0227 | case INIT0: case INIT1: | |
| 1992/0205 | DPRINT("rINIT%d\n", ctl-INIT0); | |
| 1990/0312 | sendctl(up, AINIT); if(ctl == INIT0) | |
| 1990/0227 | q->put = urpciput; | |
| 1992/0114/sys/src/9/port/sturp.c:445,450 – 1992/0205/sys/src/9/port/sturp.c:459,465 | ||
| 1990/0227 | break; case INITREQ: | |
| 1992/0205 | DPRINT("rINITREQ\n"); | |
| 1990/0227 | initoutput(up, 0); break; | |
| 1992/0114/sys/src/9/port/sturp.c:454,460 – 1992/0205/sys/src/9/port/sturp.c:469,475 | ||
| 1990/0227 | case BOT: case BOTM: | |
| 1990/0721 | case BOTS: | |
| 1992/0205 | DPRINT("rBOT%c...", " MS"[ctl-BOT]); | |
| 1990/0227 | up->trx = 1; up->trbuf[0] = ctl; break; | |
| 1992/0114/sys/src/9/port/sturp.c:461,467 – 1992/0205/sys/src/9/port/sturp.c:476,482 | ||
| 1990/0227 | case REJ+0: case REJ+1: case REJ+2: case REJ+3: case REJ+4: case REJ+5: case REJ+6: case REJ+7: | |
| 1990/0321 |
| |
| 1992/0205 | DPRINT("rREJ%d\n", ctl-REJ); | |
| 1990/0227 | rcvack(up, ctl); break; | |
| 1992/0114/sys/src/9/port/sturp.c:469,475 – 1992/0205/sys/src/9/port/sturp.c:484,490 | ||
| 1990/0227 | case ACK+4: case ACK+5: case ACK+6: case ACK+7: case ECHO+0: case ECHO+1: case ECHO+2: case ECHO+3: case ECHO+4: case ECHO+5: case ECHO+6: case ECHO+7: | |
| 1990/1004 |
| |
| 1992/0205 | DPRINT("%s%d\n", (ctl&ECHO)?"rECHO":"rACK", ctl&7); | |
| 1990/0227 | rcvack(up, ctl); break; | |
| 1992/0114/sys/src/9/port/sturp.c:481,486 – 1992/0205/sys/src/9/port/sturp.c:496,502 | ||
| 1990/0227 | */ case SEQ+0: case SEQ+1: case SEQ+2: case SEQ+3: case SEQ+4: case SEQ+5: case SEQ+6: case SEQ+7: | |
| 1992/0205 | DPRINT("rSEQ%d...", ctl-SEQ); | |
| 1990/0312 | i = ctl & Nmask; | |
| 1990/0227 | if(up->trx != 3){ urpstat.rjtrs++; | |
| 1992/0114/sys/src/9/port/sturp.c:499,505 – 1992/0205/sys/src/9/port/sturp.c:515,521 | ||
| 1990/0511 | flushinput(up); break; | |
| 1990/0227 | } | |
| 1990/0721 |
| |
| 1992/0205 | DPRINT("accept %d\n", q->len); | |
| 1990/0227 | /* * send data upstream | |
| 1992/0114/sys/src/9/port/sturp.c:622,627 – 1992/0205/sys/src/9/port/sturp.c:638,645 | ||
| 1990/0312 | now = NOW; if(up->state & INITING){ if(now > up->timer){ | |
| 1992/0205 | q = up->wq; DPRINT("INITING timer (%d, %d): ", now, up->timer); | |
| 1990/0312 | sendctl(up, INIT1); up->timer = now + MSrexmit; | |
| 1990/0227 | } | |
| 1992/0114/sys/src/9/port/sturp.c:667,672 – 1992/0205/sys/src/9/port/sturp.c:685,691 | ||
| 1990/0629 | * if a retransmit time has elapsed since a transmit, * send an ENQ */ | |
| 1992/0205 | DPRINT("OUTPUT timer (%d, %d): ", NOW, up->timer); | |
| 1990/0312 | up->timer = NOW + MSrexmit; up->state &= ~REJECTING; | |
| 1991/1122 | urpstat.enqsx++; | |
| 1992/0114/sys/src/9/port/sturp.c:715,722 – 1992/0205/sys/src/9/port/sturp.c:734,741 | ||
| 1990/0312 | bp->rptr = bp->lim-1; *bp->rptr = ctl; bp->flags |= S_DELIM; | |
| 1990/1004 |
| |
| 1992/0205 | PUTNEXT(q, bp); | |
| 1990/0227 | } | |
| 1990/0312 | /* | |
| 1992/0114/sys/src/9/port/sturp.c:763,768 – 1992/0205/sys/src/9/port/sturp.c:782,788 | ||
| 1990/0321 | /* * send the ack */ | |
| 1992/0205 | { Queue *q = up->wq; DPRINT("sendack: "); } | |
| 1990/0321 | sendctl(up, up->lastecho = ECHO|up->iseq); qunlock(&up->ack); } | |
| 1992/0114/sys/src/9/port/sturp.c:810,816 – 1992/0205/sys/src/9/port/sturp.c:830,836 | ||
| 1990/0312 | m->rptr[2] = n<<8; m->flags |= S_DELIM; | |
| 1990/1004 | PUTNEXT(q, m); | |
| 1992/0205 | DPRINT("sb %d (%d)\n", bn, up->timer); | |
| 1990/0227 | } /* | |
| 1992/0114/sys/src/9/port/sturp.c:930,935 – 1992/0205/sys/src/9/port/sturp.c:950,956 | ||
| 1990/0227 | */ | |
| 1990/0312 | up->state |= INITING; up->timer = NOW + MSrexmit; | |
| 1992/0205 | { Queue *q = up->wq; DPRINT("initoutput (%d): ", up->timer); } | |
| 1990/0312 | sendctl(up, INIT1); | |
| 1990/0227 | } | |
| 1992/0114/sys/src/9/port/sturp.c:1021,1026 – 1992/0205/sys/src/9/port/sturp.c:1042,1047 | ||
| 1991/1122 | USED(c); sprint(b, "in: %d\nout: %d\nrexmit: %d\nrjtrs: %d\nrjpks: %d\nrjseq: %d\nenqsx: %d\nenqsr: %d\n", urpstat.input, urpstat.output, urpstat.rexmit, urpstat.rjtrs, | |
| 1992/0205 | urpstat.rjpks, urpstat.rjseq, urpstat.enqsx, urpstat.enqsr); | |
| 1991/1122 | strncpy(buf, b, len); | |
| 1990/0227 | } | |