Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 6 Feb 2002 20:05:24 +0000
From:      Nuno Subtil <nsubtil@vega.dhis.co.it.pt>
To:        freebsd-hackers@freebsd.org, freebsd-stable@freebsd.org
Subject:   Re: Whats with this -> sendto: No buffer space available
Message-ID:  <20020206200524.A14992@vega.dhis.co.it.pt>

next in thread | raw e-mail | index | archive | help
Karl Dietz asked for this to be forwarded to the lists, so here it is.

----- Forwarded message from Karl Dietz <Karl.Dietz@TRIPLAN.com> -----

From: "Karl Dietz" <Karl.Dietz@TRIPLAN.com>
Date: Wed, 6 Feb 2002 19:02:51 +0100
To: "Jonathan Hanna" <jhanna@shaw.ca>, <nsubtil@vega.dhis.co.it.pt>
Subject: Re: Whats with this -> sendto: No buffer space available
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 5.50.4807.1700
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4910.0300

Meanwhile I have browsed through the code of ep and vx.

> 3) in ep_intr:
>
> rescan:
>
>     while ((status = inw(BASE + EP_STATUS)) & S_5_INTS) {
>
>         /* first acknowledge all interrupt sources */
>         outw(BASE + EP_COMMAND, ACK_INTR | (status & S_MASK));
>
>         if (status & (S_RX_COMPLETE | S_RX_EARLY)) {
>             old_status = status;
>             epread(sc);
>             continue;
>         }
>
> It seems that if an RX is done then any TX conditions are lost as an ack
of all
> sources has been done. I have verified that on the next look after the
epread
> TX conditions have disappeared without being handled. If OACTIVE is set,

the vx driver (which is to be folded back into ep) has a more verbose
comment on the code in question:

/*
 * Acknowledge any interrupts.  It's important that we do this
 * first, since there would otherwise be a race condition.
 * Due to the i386 interrupt queueing, we may get spurious
 * interrupts occasionally.
 */

But the handler is written in a way that tx interupts get lost only if
a card failure occurs.

Anyway the modified driver has transfered more than 4 million packets
already without a problem (two interfaces, some flood pings, and the
whole internet traffic)

Regards,
Karl

PS: Can one of you forward this to the list?


----- End forwarded message -----

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020206200524.A14992>