Dear Mr. Greenman,
Thank you very much. I've made the change and everything is ok now.
Best Regards,
Marcus.
David Greenman wrote:
> > if (txp != NULL) {
> >
> > /* BEGIN OF ADDED CODE */
> >
> > int i;
> > char b [20];
> > struct fxp_cb_tx *p;
> > printf ("\nTX_QUEUED: %d", sc->tx_queued);
> > for (i = 0, p = sc->cbl_first; i < sc->tx_queued; i++, p = p->next)
> > {
> > int j;
> > u_int32_t size, addr;
> > printf ("\n\tQUEUE [%d] * TBD_NUMBER: %d", i,
>p->tbd_number);
> > /*
> > m_copydata (p->mb_head, 0, 6, b);
> > printf ("\n\t.%d.%d.%d.%d.%d.%d.", b[0], b[1], b[2],
>b[3], b[4], b[5]);
> > */
> > for (j = 0; j < p->tbd_number; j++)
> > {
> > size = p->tbd [j].tb_size;
> > addr = p->tbd [j].tb_addr;
> > printf ("\n\t\t TBD [%d] * SIZE %d & ADDRESS %d", j,
>size, addr);
> > }
> > }
> >
> > /* END OF ADDED CODE */
> >
> > fxp_scb_wait(sc);
> > CSR_WRITE_1(sc, FXP_CSR_SCB_COMMAND, FXP_SCB_COMMAND_CU_RESUME);
> > }
>
> There are cases where a non-transmit command is queued to the cb list, and
> in those cases an mbuf header is not attached. For this reason you need to
> check for mb_head != NULL before calling m_copydata().
>
> -DG
>
> David Greenman
> Co-founder, The FreeBSD Project - http://www.freebsd.org
> President, TeraSolutions, Inc. - http://www.terasolutions.com
> Pave the road of life with opportunities.
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-net" in the body of the message