wendy writes: > You mean the free buffer routine of [b]desballoc[/b] is always called before > gld_recv( ) or mac_rx( ) exit? If something goes wrong, like the "Ping got > stuck" issue that we discussed last week happens and packets got buffered in > system until name service timeout, can the free buffer routine be called > before gld_recv( ) or mac_rx( ) exit? If so, then I think we do not need a > free rx buffer list since the rx buffer is always freed after sending > packet upstream and we can re-use it. > > But I see many network drivers still have free buffer list even if their rx > buffer were allocated using desballoc( ), why? I am very confused.
The buffers can sit for unbounded amounts of time anywhere, and your free routine can be called at any time. You need a free list. Drew _______________________________________________ networking-discuss mailing list [email protected]
