Jeff, Peter, I've detected a regression in ixgbe MSI-X initialization when running on a ppc64 machine with 2 cpu cores/threads.
This was the patch that introduced the regression: http://git.kernel.org/?p=linux/kernel/git/davem/net-2.6.git;a=commitdiff;h=342bde1b70c79bfc8509b017b3987f3c7541ff8e With the current code, MSI-X initialization fails. The reason is that the firmware in power machines only allocate a number of queues that is a power of 2. When a request is made for a number of queues that is not a power of 2, the value is rounded down. So, after the patch, a typical v_budget value on a system with num_online_cpus==2 is 3. The ppc FW gets this request and allocates only 2 queues (nearest power of 2 less than 3), which is less than the minimum accepted inside the driver (MIN_MSIX_COUNT == 3), causing the MSI-X initialization to fail. Is there some acceptable way to avoid this problem? A lower limit of 4 would have to be imposed to v_budget somehow. On a side note, it seems that, after the patch, MSI-X will never succeed on any machine with only 1 cpu core/thread, since v_budget will be no more than 2 (which is less than MIN_MSIX_COUNT). Is this intentional? Cheers, -- AndrĂ© Detsch Kernel Software Engineer - Network Device Drivers Linux Technology Center Brazil ------------------------------------------------------------------------------ ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo _______________________________________________ E1000-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/e1000-devel To learn more about Intel® Ethernet, visit http://communities.intel.com/community/wired
