[PATCH 3.16 294/294] net/xen-netback: disable on 64KB page granularity

From: Ben Hutchings
Date: Mon Nov 06 2017 - 19:59:26 EST


3.16.50-rc1 review patch. If anyone has any objections, please let me know.

------------------

From: Arnd Bergmann <arnd@xxxxxxxx>

Building the linux-3.16 stable branch, I ran into this warning that
shows a serious problem in the xen-netback driver:

drivers/net/xen-netback/netback.c: In function 'xenvif_dealloc_kthread':
drivers/net/xen-netback/netback.c:2002:1: error: the frame size of 16384 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]

The bug was fixed in linux-4.4, but for any older stable kernel we
either need to backport that fix, or not use the driver when the page
size is set to 64KB. As the proper fix is way bigger than the usual limit
for stable backport patches, this adds a Kconfig dependency.

Fixes: d0089e8a0e4c ("net/xen-netback: Make it running on 64KB page granularity")
Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
Signed-off-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
---
drivers/net/Kconfig | 3 +++
1 file changed, 3 insertions(+)

--- a/drivers/net/Kconfig
+++ b/drivers/net/Kconfig
@@ -331,6 +331,9 @@ config XEN_NETDEV_FRONTEND
config XEN_NETDEV_BACKEND
tristate "Xen backend network device"
depends on XEN_BACKEND
+ depends on !(PAGE_SIZE_64KB || ARM64_64K_PAGES || \
+ IA64_PAGE_SIZE_64KB || MICROBLAZE_64K_PAGES || \
+ PARISC_PAGE_SIZE_64KB || PPC_64K_PAGES)
help
This driver allows the kernel to act as a Xen network driver
domain which exports paravirtual network devices to other