]> www.infradead.org Git - users/jedix/linux-maple.git/commit
sif: pd: Implement Oracle ib_core compliance shared pd
authorWei Lin Guay <wei.lin.guay@oracle.com>
Tue, 4 Oct 2016 10:41:32 +0000 (12:41 +0200)
committerSantosh Shilimkar <santosh.shilimkar@oracle.com>
Mon, 24 Oct 2016 16:06:01 +0000 (09:06 -0700)
commit0f6b2f84565f5a4bf52d1e81d5214a090f941bfe
treeca054b6d2863dc3bfba6bba0563047aaa90a85f6
parent9cd264272eeacf83fc22ed6b59e0e563ce8c8298
sif: pd: Implement Oracle ib_core compliance shared pd

Orabug: 24713410

shared pd is not an IBTA defined feature, but an Oracle
Linux extension. Even though PSIF can share a pd easily,
it must comply with the Oracle ib_core implementation which
requires a new pd "object" when reusing a pd (via share_pd
verbs).

Without a new pd "object", it causes a NULL pointer deference
during pd clean-up phase. Thus, this patch creates a new pd
"object" when reusing a pd, and this pd "object" is pointing
to the original pd index.

Signed-off-by: Wei Lin Guay <wei.lin.guay@oracle.com>
Reviewed-by: HÃ¥kon Bugge <haakon.bugge@oracle.com>
drivers/infiniband/hw/sif/sif_hwi.c
drivers/infiniband/hw/sif/sif_ireg.c
drivers/infiniband/hw/sif/sif_pd.c
drivers/infiniband/hw/sif/sif_pd.h
drivers/infiniband/hw/sif/sif_xrc.c