]> www.infradead.org Git - users/jedix/linux-maple.git/commit
xsigo: Fix race in freeing aged Forwarding table entry
authorPradeep Gopanapalli <pradeep.gopanapalli@oracle.com>
Mon, 21 Nov 2016 20:06:01 +0000 (20:06 +0000)
committerChuck Anderson <chuck.anderson@oracle.com>
Fri, 20 Jan 2017 04:52:11 +0000 (20:52 -0800)
commit1c50f4facd91b88c227df44471a3e89711e3878f
tree786b85debac90d2b1528cd55e3d14bfec03a6942
parente8a4334179d00322cb541a7fb124bdef1f3171c9
xsigo: Fix race in freeing aged Forwarding table entry

Orabug: 25129729

Fixed a race in case of freeing an Aged Forwarding entry
When there  is no path associated with a Forwarding entry and
if it ages out uVNIC driver starts aging it ,if a new path with
different Forwarding entry (different mac but same remote guid
and qpn) creates a path present code ends up deleting
that newly created path.

Added a variable del_in_progress to detect and avoid race if
forwarding table is accessed during deletion.

Added protection in one case, while accessing forwarding table entry.
Cleaned up unwanted messages

Reported-by: Pradeep Gopanapalli <pradeep.gopanapalli@oracle.com>
Signed-off-by: Pradeep Gopanapalli <pradeep.gopanapalli@oracle.com>
Reviewed-by: sajid zia <szia@oracle.com>
drivers/infiniband/ulp/xsigo/xscore/Makefile
drivers/infiniband/ulp/xsigo/xsvhba/Makefile
drivers/infiniband/ulp/xsigo/xsvnic/Makefile
drivers/infiniband/ulp/xsigo/xve/Makefile
drivers/infiniband/ulp/xsigo/xve/xve.h
drivers/infiniband/ulp/xsigo/xve/xve_cm.c
drivers/infiniband/ulp/xsigo/xve/xve_ib.c
drivers/infiniband/ulp/xsigo/xve/xve_main.c
drivers/infiniband/ulp/xsigo/xve/xve_tables.c