pci: Convert msix_init() to Error and fix callers
msix_init() reports errors with error_report(), which is wrong when
it's used in realize(). The same issue was fixed for msi_init() in
commit
1108b2f. In order to make the API change as small as possible,
leave the return value check to later patch.
For some devices(like e1000e, vmxnet3, nvme) who won't fail because of
msix_init's failure, suppress the error report by passing NULL error
object.
Bonus: add comment for msix_init.
CC: Jiri Pirko <[email protected]>
CC: Gerd Hoffmann <[email protected]>
CC: Dmitry Fleytman <[email protected]>
CC: Jason Wang <[email protected]>
CC: Michael S. Tsirkin <[email protected]>
CC: Hannes Reinecke <[email protected]>
CC: Paolo Bonzini <[email protected]>
CC: Alex Williamson <[email protected]>
CC: Markus Armbruster <[email protected]>
CC: Marcel Apfelbaum <[email protected]>
Signed-off-by: Cao jin <[email protected]>
Reviewed-by: Michael S. Tsirkin <[email protected]>
Signed-off-by: Michael S. Tsirkin <[email protected]>