> > Lorenzo Bianconi <lorenzo@xxxxxxxxxx> writes: > [...] > > - buf->xdpf = xdpf; > > - tx_desc->command = MVNETA_TXD_FLZ_DESC; > > - tx_desc->buf_phys_addr = dma_addr; > > - tx_desc->data_size = xdpf->len; > > + /*last descriptor */ > > + if (tx_desc) > > + tx_desc->command |= MVNETA_TXD_L_DESC | MVNETA_TXD_Z_PAD; > > When is this condition not taken ? You initialize tx_desc to > NULL, but it seems to me like you always set it inside the for loop > to the output of mvneta_txq_next_desc_get() which doesn't look like > it returns NULL. The for loop runs 1 iteration or `sinfo->nr_frage + 1` > iterations (which also equals or larger than 1). ack, right. I will fix it in v3. Regards, Lorenzo > > > - mvneta_txq_inc_put(txq); > > - txq->pending++; > > - txq->count++; > > + txq->pending += num_frames; > > + txq->count += num_frames; > > return MVNETA_XDP_TX; > > } >
Attachment:
signature.asc
Description: PGP signature