[ovs-git] [openvswitch/ovs] 7530fe: cmap: ovsrcu postpone the cmap destroy.

GitHub noreply at github.com
Wed Oct 1 20:03:01 UTC 2014


  Branch: refs/heads/master
  Home:   https://github.com/openvswitch/ovs
  Commit: 7530fe0d8a69b0f9477f94f9883e9e31ad3630b1
      https://github.com/openvswitch/ovs/commit/7530fe0d8a69b0f9477f94f9883e9e31ad3630b1
  Author: Alex Wang <alexw at nicira.com>
  Date:   2014-10-01 (Wed, 01 Oct 2014)

  Changed paths:
    M lib/cmap.c

  Log Message:
  -----------
  cmap: ovsrcu postpone the cmap destroy.

Currently, the cmap_destroy() directly frees the cmap memory.
Some callers of cmap_destroy() (e.g. destroy_subtable()) still
allows other threads (e.g. pmd threads) accessing the cmap at
the same time (e.g. via classifier_lookup_miniflow_batch()),
which could cause segfault.

To fix the above issue, this commit use ovsrcu to postpone
the free of cmap memory.

Reported-by: Ethan Jackson <ethan at nicira.com>
Signed-off-by: Alex Wang <alexw at nicira.com>
Acked-by: Ben Pfaff <blp at nicira.com>




More information about the git mailing list