Commit b41a9a66 authored by Karsten Keil's avatar Karsten Keil Committed by David S. Miller

mISDN: Bugfix only few bytes are transfered on a connection

The test for the fillempty condition was wrong in one place.
Changed the variable to the right boolean type.
Signed-off-by: default avatarKarsten Keil <keil@b1-systems.de>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 17a2bf79
...@@ -449,7 +449,8 @@ hdlc_fill_fifo(struct bchannel *bch) ...@@ -449,7 +449,8 @@ hdlc_fill_fifo(struct bchannel *bch)
{ {
struct fritzcard *fc = bch->hw; struct fritzcard *fc = bch->hw;
struct hdlc_hw *hdlc; struct hdlc_hw *hdlc;
int count, fs, cnt = 0, idx, fillempty = 0; int count, fs, cnt = 0, idx;
bool fillempty = false;
u8 *p; u8 *p;
u32 *ptr, val, addr; u32 *ptr, val, addr;
...@@ -462,7 +463,7 @@ hdlc_fill_fifo(struct bchannel *bch) ...@@ -462,7 +463,7 @@ hdlc_fill_fifo(struct bchannel *bch)
return; return;
count = fs; count = fs;
p = bch->fill; p = bch->fill;
fillempty = 1; fillempty = true;
} else { } else {
count = bch->tx_skb->len - bch->tx_idx; count = bch->tx_skb->len - bch->tx_idx;
if (count <= 0) if (count <= 0)
...@@ -477,7 +478,7 @@ hdlc_fill_fifo(struct bchannel *bch) ...@@ -477,7 +478,7 @@ hdlc_fill_fifo(struct bchannel *bch)
hdlc->ctrl.sr.cmd |= HDLC_CMD_XME; hdlc->ctrl.sr.cmd |= HDLC_CMD_XME;
} }
ptr = (u32 *)p; ptr = (u32 *)p;
if (fillempty) { if (!fillempty) {
pr_debug("%s.B%d: %d/%d/%d", fc->name, bch->nr, count, pr_debug("%s.B%d: %d/%d/%d", fc->name, bch->nr, count,
bch->tx_idx, bch->tx_skb->len); bch->tx_idx, bch->tx_skb->len);
bch->tx_idx += count; bch->tx_idx += count;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment