The chip I am working on has a design issue:always puts packet header in one buffer and data in another. One workaround is to allocate a big buffer to save both header and data, then send upstream.
It's probably not a design issue of the NIC, normally it's implemented by some h/w to split ethernet header on purpose.
I am thinking an alternative way, is it workable to use one mblk_t to save 
packet header and another to save packet data and the first mblk_t's 
[i]b_cont[/i] points to the second mblt_t.
Use b_cont will work since this is still a *single* message.
But I am not sure whether gld_recv can send chained packets.
The function gld_recv() doesn't accept chained *packets*. (chained through b_next)
Oh, can I call gld_recv twice to send packet header first then packet data?
No. You need to b_cont the header and the payload and send them up together.

Thanks,

Roamer
--

# telnet (650)-786-6759 (x86759)
Connected to Solaris.Sun.COM.
login: Lu, Yunsong
Last login: January 2, 2007 from beyond.sfbay
[EMAIL PROTECTED]    v1.03    Since Mon Dec. 22, 2003
[EMAIL PROTECTED] Networking]# cd ..
_______________________________________________
networking-discuss mailing list
[email protected]

Reply via email to