Add support for device surprise removal and other PCI errors.
- When device disappears from PCI indicate error device state and:
- Trigger command completion for all pending commands
- Prevent new commands from executing and return:
- success for modify and remove/cleanup commands
- failure for create/query commands
- When reclaiming pages for a device in error state don't ask FW to return all given pages, just release the allocated memory
MFC after: 1 week
Sponsored by: Mellanox Technologies