struct sk_buff_head recvqueue;
wait_queue_head_t recvwait;
- /* Statistic */
- unsigned long nrecvctlpkt;
- unsigned long nrecvdatapkt;
- unsigned long nsentctlpkt;
- unsigned long nsentdatapkt;
-
struct capincci *nccis;
};
}
copied = skb->len;
- if (CAPIMSG_CMD(skb->data) == CAPI_DATA_B3_IND) {
- cdev->nrecvdatapkt++;
- } else {
- cdev->nrecvctlpkt++;
- }
-
kfree_skb(skb);
return copied;
kfree_skb(skb);
return -EIO;
}
- if (CAPIMSG_CMD(skb->data) == CAPI_DATA_B3_REQ) {
- cdev->nsentdatapkt++;
- } else {
- cdev->nsentctlpkt++;
- }
return count;
}
cdev = list_entry(l, struct capidev, list);
len += sprintf(page+len, "0 %d %lu %lu %lu %lu\n",
cdev->ap.applid,
- cdev->nrecvctlpkt,
- cdev->nrecvdatapkt,
- cdev->nsentctlpkt,
- cdev->nsentdatapkt);
+ cdev->ap.nrecvctlpkt,
+ cdev->ap.nrecvdatapkt,
+ cdev->ap.nsentctlpkt,
+ cdev->ap.nsentdatapkt);
if (len <= off) {
off -= len;
len = 0;
struct capi20_appl ap;
int ncontr;
struct capidrv_contr *contr_list;
-
- /* statistic */
- unsigned long nrecvctlpkt;
- unsigned long nrecvdatapkt;
- unsigned long nsentctlpkt;
- unsigned long nsentdatapkt;
};
typedef struct capidrv_plci capidrv_plci;
skb = alloc_skb(len, GFP_ATOMIC);
memcpy(skb_put(skb, len), cmsg->buf, len);
capi20_put_message(&global.ap, skb);
- global.nsentctlpkt++;
}
/* -------- state machine -------------------------------------------- */
if (s_cmsg.Command == CAPI_DATA_B3
&& s_cmsg.Subcommand == CAPI_IND) {
handle_data(&s_cmsg, skb);
- global.nrecvdatapkt++;
return;
}
if ((s_cmsg.adr.adrController & 0xffffff00) == 0)
* thanks to Lars Heete <hel@admin.de>
*/
kfree_skb(skb);
- global.nrecvctlpkt++;
}
/* ------------------------------------------------------------------- */
if (errcode == CAPI_NOERROR) {
dev_kfree_skb(skb);
nccip->datahandle++;
- global.nsentdatapkt++;
return len;
}
(void)capidrv_del_ack(nccip, datahandle);
errcode = capi20_put_message(&global.ap, skb);
if (errcode == CAPI_NOERROR) {
nccip->datahandle++;
- global.nsentdatapkt++;
return len;
}
skb_pull(skb, msglen);
int len = 0;
len += sprintf(page+len, "%lu %lu %lu %lu\n",
- global.nrecvctlpkt,
- global.nrecvdatapkt,
- global.nsentctlpkt,
- global.nsentdatapkt);
+ global.ap.nrecvctlpkt,
+ global.ap.nrecvdatapkt,
+ global.ap.nsentctlpkt,
+ global.ap.nsentdatapkt);
if (off+count >= len)
*eof = 1;
if (len < off)