Re: [PATCH net-next v2 8/9] net: filter: rework/optimize internal BPF interpreter's instruction set

From: H. Peter Anvin
Date: Tue Mar 25 2014 - 20:24:38 EST


On 03/25/2014 05:17 PM, David Miller wrote:
> From: Daniel Borkmann <dborkman@xxxxxxxxxx>
> Date: Tue, 25 Mar 2014 13:10:56 +0100
>
>> - Conditional jt/jf targets replaced with jt/fall-through,
>> and forward/backward jumps now possible as well
>
> Ummm... does anyone even remember why backwards jumps were not allowed
> in the original BPF?
>
> It's to guarentee forward progress in the filter.
>
> Allowing branching backward would allow endless loops.
>
> Please remove this feature.
>

If you allow loops, it greatly increases the expressibility of the
language, but we would really need another control to limit CPU usage.

-hpa

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/