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

From: "H. Peter Anvin" <[email-masked]>
Date: Tue, 25 Mar 2014 17:24:27 -0700

On 03/25/2014 05:17 PM, David Miller wrote:
> From: Daniel Borkmann <[email-masked]>
> 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