The 08/13/2019 02:12, Y.b. Lu wrote: > > -----Original Message----- > > From: Allan W. Nielsen <allan.niel...@microchip.com> > > Sent: Monday, August 12, 2019 8:32 PM > > To: Y.b. Lu <yangbo...@nxp.com> > > Cc: netdev@vger.kernel.org; David S . Miller <da...@davemloft.net>; > > Alexandre Belloni <alexandre.bell...@bootlin.com>; Microchip Linux Driver > > Support <unglinuxdri...@microchip.com> > > Subject: Re: [PATCH 3/3] ocelot_ace: fix action of trap > > > > The 08/12/2019 18:48, Yangbo Lu wrote: > > > The trap action should be copying the frame to CPU and dropping it for > > > forwarding, but current setting was just copying frame to CPU. > > > > Are there any actions which do a "copy-to-cpu" and still forward the frame > > in > > HW? > > [Y.b. Lu] We're using Felix switch whose code hadn't been accepted by > upstream. > https://patchwork.ozlabs.org/project/netdev/list/?series=115399&state=* > > I'd like to trap all IEEE 1588 PTP Ethernet frames to CPU through etype > 0x88f7. > When I used current TRAP option, I found the frames were not only copied to > CPU, but also forwarded to other ports. > So I just made the TRAP option same with DROP option except enabling > CPU_COPY_ENA in the patch. This is still wrong to do - and it will not work for Ocelot (and I doubt it will work for your Felix target).
The policer setting in the drop action ensure that the frame is dropped even if other pipe-line steps in the switch has set the copy-to-cpu flag. I think you can fix this patch my just clearing the port mask, and not set the policer. /Allan