Hi, I post a patch set of UDP memory accounting and limitation.
This patch set is for kernel 2.6.23-rc9. The differences from take 3 are * fixing double accounting bug of ip_send_page() * adding UDP memory limitation. How to use UDP memory limitation: This patch set add /proc/sys/net/ipv4/udp_mem as a tuning parameter. When you give the number that is greater than 4096, UDP memory limitation will work. The number of pages for socket buffer is limited up to udp_mem[pages]. Currently this function drops the packet when it is sent or received and the number of pages for socket buffer is beyond the limit. It won't collect the buffer that is already allocated. On the other hand, udp_mem is specified as 4096 or smaller, UDP memory limitaion will not work. The deafult number is 0. Comment, review and test are welcome. By the way, David pointed out that we should have the better solution such as memory reclaiming by callback from vmm. I seriously consider it. But As Herbert pointed out, it is very difficult to apply it to TCP because some of the buffer is already acked. I couldn't find the good solution that is applicable for TCP, UDP, route cache and so on. Let me know, if you find the good way to solve this problem. Thanks, Satoshi Oshima - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html