IB/ehca: Reject dynamic memory add/remove when ehca adapter is present
authorStefan Roscher <ossrosch@linux.vnet.ibm.com>
Wed, 22 Oct 2008 22:54:38 +0000 (15:54 -0700)
committerRoland Dreier <rolandd@cisco.com>
Wed, 22 Oct 2008 22:54:38 +0000 (15:54 -0700)
commit263c24a2bbbaca75805ed231e8346d86410af9d0
treea4de046c1f94f381d1ab241b4a719a25ea58ec66
parent19f4282149147b4a3e8c670373dc73ddd5d5facc
IB/ehca: Reject dynamic memory add/remove when ehca adapter is present

Since the ehca device driver does not support dynamic memory add and
remove operations, the driver must explicitly reject such requests in
order to prevent unpredictable behaviors related to existing memory
regions that cover all of memory being used by InfiniBand protocols in
the kernel.

The solution (for now at least) is to add a memory notifier to the
ehca device driver and if a request for dynamic memory add or remove
comes in, ehca will always reject it.  The user can add or remove
memory by hot-removing the ehca adapter, performing the memory
operation, and then hot-adding the ehca adapter back.

Signed-off-by: Stefan Roscher <stefan.roscher@de.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
drivers/infiniband/hw/ehca/ehca_main.c