net: rtl8139: limit processing of ring descriptors
RTL8139 ethernet controller in C+ mode supports multiple descriptor rings, each with maximum of 64 descriptors. While processing transmit descriptor ring in 'rtl8139_cplus_transmit', it does not limit the descriptor count and runs forever. Add check to avoid it. Reported-by: Andrew Henderson <hendersa@icculus.org> Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org> Signed-off-by: Jason Wang <jasowang@redhat.com>
This commit is contained in:
parent
fdda170e50
commit
c7c3591669
@ -2350,7 +2350,7 @@ static void rtl8139_cplus_transmit(RTL8139State *s)
|
|||||||
{
|
{
|
||||||
int txcount = 0;
|
int txcount = 0;
|
||||||
|
|
||||||
while (rtl8139_cplus_transmit_one(s))
|
while (txcount < 64 && rtl8139_cplus_transmit_one(s))
|
||||||
{
|
{
|
||||||
++txcount;
|
++txcount;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user