<dec f='src/src/sys/dev/pci/ixgbe/ixgbe_api.h' l='161' type='void ixgbe_atr_compute_perfect_hash_82599(union ixgbe_atr_input * input, union ixgbe_atr_input * mask)'/>
<def f='src/src/sys/dev/pci/ixgbe/ixgbe_82599.c' l='1691' ll='1764' type='void ixgbe_atr_compute_perfect_hash_82599(union ixgbe_atr_input * input, union ixgbe_atr_input * input_mask)'/>
<use f='src/src/sys/dev/pci/ixgbe/ixgbe_82599.c' l='2056' u='c' c='ixgbe_fdir_add_perfect_filter_82599'/>
<doc f='src/src/sys/dev/pci/ixgbe/ixgbe_82599.c' l='1680'>/**
 *  ixgbe_atr_compute_perfect_hash_82599 - Compute the perfect filter hash
 *  @atr_input: input bitstream to compute the hash on
 *  @input_mask: mask for the input bitstream
 *
 *  This function serves two main purposes.  First it applys the input_mask
 *  to the atr_input resulting in a cleaned up atr_input data stream.
 *  Secondly it computes the hash and stores it in the bkt_hash field at
 *  the end of the input byte stream.  This way it will be available for
 *  future use without needing to recompute the hash.
 **/</doc>
