Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MSI-X function masking is not respected #807

Open
jlevon opened this issue Oct 24, 2024 · 0 comments
Open

MSI-X function masking is not respected #807

jlevon opened this issue Oct 24, 2024 · 0 comments

Comments

@jlevon
Copy link
Collaborator

jlevon commented Oct 24, 2024

We accept writes to mask the function as per MSI-X spec:

  246     if (msix->mxc.fm != new_msix.mxc.fm) {                                       
  247         msix->mxc.fm = new_msix.mxc.fm;                                          
  248         if (msix->mxc.fm) {                                                      
  249             vfu_log(vfu_ctx, LOG_DEBUG, "all MSI-X vectors masked");             
  250         } else {                                                                 
  251             vfu_log(vfu_ctx, LOG_DEBUG,                                          
  252                    "vector's mask bit determines whether vector is masked");     
  253         }                                                                        
  254     }                                                                            

However, that's all we ever do. While in theory, library users could check this field themselves prior to vfu_irq_trigger(), we should probably do this in the library, along with correctly handling PBA (as per #806).

SPDK at least doesn't respect this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant