[Intel-gfx] [PATCH] drm/i915: Use hash tables for the command parser

Damien Lespiau damien.lespiau at intel.com
Thu May 8 13:44:57 CEST 2014


On Thu, May 08, 2014 at 10:56:05AM +0100, Tvrtko Ursulin wrote:
> 
> Hi Brad,
> 
> On 04/28/2014 04:22 PM, bradley.d.volkin at intel.com wrote:
> [snip]
> >-	BUG_ON(!validate_cmds_sorted(ring));
> >+	BUG_ON(!validate_cmds_sorted(ring, cmd_tables, cmd_table_count));
> >  	BUG_ON(!validate_regs_sorted(ring));
> >+
> >+	BUG_ON(init_hash_table(ring, cmd_tables, cmd_table_count));
> 
> Is a BUG_ON a bit harsh since the above fails only on ENOMEM condition?
> 
> If the concern is not allowing any command execution if parser setup
> has failed, it would be nicer to the system as whole to just keep
> rejecting everything, but let the rest of the kernel live to enable
> debug or whatever?

Those number_of_cmds allocations are a bit awkward though, couldn't we
just embed the hlist_node into the desciptor struct?

I was hoping we could compute a (near) minimal perfect hash function
though. Let me try to dig a bit.

-- 
Damien



More information about the Intel-gfx mailing list