On Thu, Jun 12, 2008 at 8:03 PM, Johannes Berg <johannes@xxxxxxxxxxxxxxxx> wrote: > >> > Try the patch below. It should improve code generation too. >> > >> > I discussed this with Tomas previously and he says the hw is capable of >> > doing 20 fragments per frame (wonder why, Broadcom can do an unlimited >> > number...) but he complained about the networking stack not being able >> > to. >> >> This is scatter gather buffers that can be kicked in one DMA transaction. >> >> Well, the hardware needs to support IP checksumming for that, hence, >> > afaik, only two fragments can ever be used (one for hw header, one for >> > frame) >> This I still don't understand why but everybody is already tired to >> explaining me why.. :) Just need to find time to dig into it. > > And you can safely decrease the allocation to 10% as I do in my patch > because once you understand you'll see that you cannot possibly use > more. Hence, you can ack this patch ;) > >> > This cuts the allocation to 10%, or (under) a page in all cases. >> >> Probably. it would be safe to use vmalloc for allocating txb anyway. >> I'll give it a try. > > Yeah, but why bother if we can just allocate 10% of the size, waste a > lot less memory etc. mac80211 isn't going to pass in a scatter/gather > frame anyway. Hope never dies. I actually have seen this speed up the throughput so I will dig into it anyway. >> There was already discussion on LKML about memory allocation problems >> on X86_64, which might explain this regression. This didn't happen >> before. > > Doesn't really matter, iwlwifi is _wasting_ this allocation, it cannot > possibly use all those buffers anyway. This matter actually for consistent allocation. > The more interesting thing is the pci_alloc_consistent allocation right > below that is also _huge_, but that's because of the stupid hardware > design, or can the hardware cope with having the descriptors non-linear > in memory? We talk after your next HW design. How will configure 265 * 16 descriptors separately. Tomas -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html