Yes, that's bug this patch is fixing too. The current implementation does not replenish the gl_skb after the initial allocation. I am working on an update which utilizing a pool of skbs, and those skbs would be used not only for the ddp setups (like the current gl_skb) but also for the connection management like the rx credit returns. So this skb pool will not reside in cxgbi_ddp_info, so still need to get rid of gl_skb. I guess this patch can be viewed as an interim fix. -----Original Message----- From: Mike Christie [mailto:michaelc@xxxxxxxxxxx] Sent: Monday, January 10, 2011 11:57 AM To: Karen Xie Cc: open-iscsi@xxxxxxxxxxxxxxxx; linux-scsi@xxxxxxxxxxxxxxx; James.Bottomley@xxxxxxxxxxxxxxxxxxxxx Subject: Re: [PATCH 2/2] cxgbi: get rid of gl_skb in cxgbi_ddp_info On 01/10/2011 11:52 AM, Karen Xie wrote: > Hi, Mike, > > What I mean is even if cxgb3i maintains a pool of skbs (equivalent of > gl_skbs). Once they are handed down to the network layer cxgb3 they will > still be freed by the network driver (on the tx path). > So hows does it work now? It seems ddp_alloc_gl_skb is called at device setup time, then when IO is queued/xmited we run ddp_set_map which allocates from gl_skbs. If when you transmit the IO, the driver frees the skb, how does gl_skb get replenished? -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html