RE: [PATCH v2 1/4] net: ethernet: ti: davinci_cpdma: split descs num between all channels
From: Yuval Mintz <hidden>
Date: 2016-08-15 17:40:34
Also in:
linux-omap, lkml
From: Yuval Mintz <hidden>
Date: 2016-08-15 17:40:34
Also in:
linux-omap, lkml
Currently the tx channels share same pool of descriptors. Thus one channel can block another if pool is emptied by one. But, the shaper should decide which channel is allowed to send packets. To avoid such impact of one channel on another, let every channel to have its own peace of pool.
Piece.
+/** + * cpdma_chan_split_pool - Splits ctrl pool between all channels. + * Has to be called under ctlr lock + * + */
No need for the extra empty comment line.
+ /* calculate average size of pool slice */
+ ch_desc_num = pool->num_desc / ctlr->chan_num;
+
+ /* split ctlr pool */
+ for (i = 0; i < ARRAY_SIZE(ctlr->channels); i++) {
+ chan = ctlr->channels[i];
+ if (chan)
+ chan->desc_num = ch_desc_num;Is this 'if' needed? If there's some route where the channel can be NULL, You're splitting the value incorrectly.