[openib-general] [PATCH] IB/ipoib: NAPI

Eli cohen eli at dev.mellanox.co.il
Mon Sep 25 05:58:30 PDT 2006


I experimented with your patch and could not find any noticeable 
change in BW or interrupt rate so I guess we can use your ideas.

Still, note that NAPI_howto.txt does not read *budget to limit the 
number of polls and the code bellow from kernel 2.6.17.7 takes into 
account that budget can become negative.

static void net_rx_action(struct softirq_action *h)
{
	struct softnet_data *queue = &__get_cpu_var(softnet_data);
	unsigned long start_time = jiffies;
	int budget = netdev_budget;
	void *have;

	local_irq_disable();

	while (!list_empty(&queue->poll_list)) {
		struct net_device *dev;

		if (budget <= 0 || jiffies - start_time > 1)
			goto softnet_break;
	...
}



>I took a stab at implementing this myself, and it
>
> You might want to respin your patch against my for-2.6.19 branch 

Do you think I should work on this or you plan to push your code?


>> The biggest problem I have with this is that I don't know what to
call
>> the feature bit.  Any suggestions?

>Maybe set bit for the lack of the feature? REQUIRES_POLL_AFTER_ARM?

We can take Michael's suggestion or use NOT_REQUIRES_POLL_AFTER_ARM so
we can implement this for mthca without touching ipath or ehca at the
first step.







More information about the general mailing list