From: Alexander Couzens Date: Sat, 28 Jan 2017 16:23:16 +0000 (+0100) Subject: lantiq: fix unaligned access in xrx200_poll_rx() X-Git-Tag: v17.01.0-rc2~89 X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fopenwrt.git;a=commitdiff_plain;h=31b06409067a7d1cb6005ed24b97a56009276aaa lantiq: fix unaligned access in xrx200_poll_rx() Signed-off-by: Alexander Couzens --- diff --git a/target/linux/lantiq/patches-4.4/0025-NET-MIPS-lantiq-adds-xrx200-net.patch b/target/linux/lantiq/patches-4.4/0025-NET-MIPS-lantiq-adds-xrx200-net.patch index 4e60f30302..acaadba984 100644 --- a/target/linux/lantiq/patches-4.4/0025-NET-MIPS-lantiq-adds-xrx200-net.patch +++ b/target/linux/lantiq/patches-4.4/0025-NET-MIPS-lantiq-adds-xrx200-net.patch @@ -1190,8 +1190,8 @@ Subject: [PATCH 25/36] NET: MIPS: lantiq: adds xrx200-net + if ((desc->ctl & (LTQ_DMA_OWN | LTQ_DMA_C)) == LTQ_DMA_C) { +#ifdef SW_ROUTING + struct sk_buff *skb = ch->skb[ch->dma.desc]; -+ u32 *special_tag = (u32*)skb->data; -+ int port = (special_tag[1] >> SPPID_SHIFT) & SPPID_MASK; ++ u8 *special_tag = (u8*)skb->data; ++ int port = (special_tag[7] >> SPPID_SHIFT) & SPPID_MASK; + xrx200_hw_receive(ch, priv->hw->port_map[port]); +#else + xrx200_hw_receive(ch, 0);