Skip to contentSkip to conversation

problem with TCP zero copy (sendpage)

DISCUSSION [email protected] 1 participant 1 message Aug 14, 2001

lore
Share & tools
lore
#0 lore raw

Hi,

I have been running a module that gets free pages from the kernel, fills it with data and then sends the page to another machine using TCP/IP. Everything works fine for the past month when I was using sock_sendmsg and scatter-gather to send the iovec of pages in one go with MSG_DONTWAIT flag set.
However, since the last week, I've tried using sock->ops->sendpage for each of the page(with the MSG_MORE flag set except for the last page which is sent with the MSG_DONTWAIT flag set). I also send the header with the sock_sendmsg() function with MSG_MORE set. However, after making these changes, the module crashes after a while(about 5-20 minutes) that gives me: KERNEL bug at Page_alloc.c 191, which corresponds to the following in the source code within the rmqueue() function:
if (BAD_RANGE(zone, page)) {
BUG();
}

Does anyone know where the problem is? Any hint would be greatly appreciated. Thanks a lot.

__________________________________________________________________
Your favorite stores, helpful shopping tools and great gift ideas. Experience the convenience of buying online with Shop@Netscape! http://shopnow.netscape.com/

Get your own FREE, personal Netscape Mail account today at http://webmail.netscape.com/