From: Alexander Duyck <alexander.h.duyck@xxxxxxxxxx> Date: Mon, 04 May 2015 16:14:42 -0700 > This patch set cleans up some of the handling of page frags used in the skb > allocation. The issue was we were having to use a number of calls to > virt_to_head_page in a number of places and then following that up with > put_page. Both calls end up being expensive, the first due to size, and > the second due to the fact that we end up having to call a number of other > functions before we finally see the page freed in the case of compound > pages. > > The skb_free_frag function is meant to resolve that by providing a > centralized location for the virt_to_head_page call and by coalesing > several checks such as the check for PageHead into a single check so that > we can keep the instruction cound minimal when freeing the page frag. > > With this change I am seeing an improvement of about 5% in a simple > receive/drop test. I'm going to need to see some buyin from the mm folks on this series. -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>