alistair23-linux/net/openvswitch
Daniel Borkmann 87545899b5 net: replace remaining users of arch_fast_hash with jhash
This patch effectively reverts commit 500f808726 ("net: ovs: use CRC32
accelerated flow hash if available"), and other remaining arch_fast_hash()
users such as from nfsd via commit 6282cd5655 ("NFSD: Don't hand out
delegations for 30 seconds after recalling them.") where it has been used
as a hash function for bloom filtering.

While we think that these users are actually not much of concern, it has
been requested to remove the arch_fast_hash() library bits that arose
from [1] entirely as per recent discussion [2]. The main argument is that
using it as a hash may introduce bias due to its linearity (see avalanche
criterion) and thus makes it less clear (though we tried to document that)
when this security/performance trade-off is actually acceptable for a
general purpose library function.

Lets therefore avoid any further confusion on this matter and remove it to
prevent any future accidental misuse of it. For the time being, this is
going to make hashing of flow keys a bit more expensive in the ovs case,
but future work could reevaluate a different hashing discipline.

  [1] https://patchwork.ozlabs.org/patch/299369/
  [2] https://patchwork.ozlabs.org/patch/418756/

Cc: Neil Brown <neilb@suse.de>
Cc: Francesco Fusco <fusco@ntop.org>
Cc: Jesse Gross <jesse@nicira.com>
Cc: Thomas Graf <tgraf@suug.ch>
Signed-off-by: Daniel Borkmann <dborkman@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-12-10 15:17:45 -05:00
..
actions.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-11-21 22:28:24 -05:00
datapath.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-11-21 22:28:24 -05:00
datapath.h openvswitch: Add support for OVS_FLOW_ATTR_PROBE. 2014-11-09 18:58:44 -08:00
dp_notify.c genetlink: make multicast groups const, prevent abuse 2013-11-19 16:39:06 -05:00
flow.c openvswitch: Add support for OVS_FLOW_ATTR_PROBE. 2014-11-09 18:58:44 -08:00
flow.h openvswitch: Add support for OVS_FLOW_ATTR_PROBE. 2014-11-09 18:58:44 -08:00
flow_netlink.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-11-21 22:28:24 -05:00
flow_netlink.h openvswitch: Add support for OVS_FLOW_ATTR_PROBE. 2014-11-09 18:58:44 -08:00
flow_table.c net: replace remaining users of arch_fast_hash with jhash 2014-12-10 15:17:45 -05:00
flow_table.h openvswitch: Constify various function arguments 2014-11-09 18:58:44 -08:00
Kconfig openvswitch: Fix build failure. 2014-11-14 01:24:27 -05:00
Makefile ovs: Turn vports with dependencies into separate modules 2014-10-28 14:43:18 -04:00
vport-geneve.c openvswitch: Constify various function arguments 2014-11-09 18:58:44 -08:00
vport-gre.c vlan: introduce *vlan_hwaccel_push_inside helpers 2014-11-21 14:20:17 -05:00
vport-internal_dev.c openvswitch: Drop packets when interdev is not up 2014-11-05 23:52:35 -08:00
vport-internal_dev.h openvswitch: introduce rtnl ops stub 2014-07-01 14:40:17 -07:00
vport-netdev.c openvswitch: Constify various function arguments 2014-11-09 18:58:44 -08:00
vport-netdev.h ovs: Turn vports with dependencies into separate modules 2014-10-28 14:43:18 -04:00
vport-vxlan.c openvswitch: Extend packet attribute for egress tunnel info 2014-11-09 18:58:44 -08:00
vport.c openvswitch: set correct protocol on route lookup 2014-12-09 16:01:21 -05:00
vport.h openvswitch: Constify various function arguments 2014-11-09 18:58:44 -08:00