From 2f59069dbb48ee86bee42bf36a4dfafe64028344 Mon Sep 17 00:00:00 2001 From: Calvin Johnson Date: Thu, 8 Mar 2018 13:58:38 +0530 Subject: [PATCH] staging: fsl_ppfe/eth: calculate PFE_PKT_SIZE with SKB_DATA_ALIGN pfe packet size was calculated without considering skb data alignment and this resulted in jumbo frames crashing kernel when the cacheline size increased from 64 to 128 bytes with commit 97303480753e ("arm64: Increase the max granular size"). Modify pfe packet size caclulation to include skb data alignment of sizeof(struct skb_shared_info). Signed-off-by: Calvin Johnson --- drivers/staging/fsl_ppfe/pfe_hif_lib.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- a/drivers/staging/fsl_ppfe/pfe_hif_lib.h +++ b/drivers/staging/fsl_ppfe/pfe_hif_lib.h @@ -146,7 +146,7 @@ struct tx_queue_desc { #define PFE_BUF_SIZE 2048 #define PFE_PKT_HEADROOM 128 -#define SKB_SHARED_INFO_SIZE (sizeof(struct skb_shared_info)) +#define SKB_SHARED_INFO_SIZE SKB_DATA_ALIGN(sizeof(struct skb_shared_info)) #define PFE_PKT_SIZE (PFE_BUF_SIZE - PFE_PKT_HEADROOM \ - SKB_SHARED_INFO_SIZE) #define MAX_L2_HDR_SIZE 14 /* Not correct for VLAN/PPPoE */