[lkml]   [2020]   [Mar]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH] soc: qcom: ipa: kill IPA_RX_BUFFER_ORDER
From: Alex Elder <>
Date: Fri, 20 Mar 2020 11:02:20 -0500

> Don't assume the receive buffer size is a power-of-2 number of pages.
> Instead, define the receive buffer size independently, and then
> compute the page order from that size when needed.
> This fixes a build problem that arises when the ARM64_PAGE_SHIFT
> config option is set to have a page size greater than 4KB. The
> problem was identified by Linux Kernel Functional Testing.
> The IPA code basically assumed the page size to be 4KB. A larger page
> size caused the receive buffer size to become correspondingly larger
> (32KB or 128KB for ARM64_16K_PAGES and ARM64_64K_PAGES, respectively).
> The receive buffer size is used to compute an "aggregation byte limit"
> value that gets programmed into the hardware, and the large page sizes
> caused that limit value to be too big to fit in a 5 bit field. This
> triggered a BUILD_BUG_ON() call in ipa_endpoint_validate_build().
> This fix causes a lot of receive buffer memory to be wasted if
> system is configured for page size greater than 4KB. But such a
> misguided configuration will now build successfully.
> Reported-by: Naresh Kamboju <>
> Signed-off-by: Alex Elder <>
> ---
> Dave, I *hope* this is it for IPA for this release. -Alex

Applied to net-next, thanks.

 \ /
  Last update: 2020-03-22 03:47    [W:0.040 / U:4.556 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site