STRUCT NE_PCI_DEV(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct ne_pci_dev(9) πŸ’–

okay bestie, welcome to the Kernel API Manual, section 9 β€” specifically the <hotpink>struct ne_pci_dev(9)</hotpink> page. This is the Nitro Enclaves (NE) PCI device struct, and we’re gonna read it with full group-chat energy while keeping every single fact intact. no cap. obsessed. 🫢


πŸŽ€ NAME πŸŽ€

struct ne_pci_dev β€” the Nitro Enclaves (NE) PCI device. periodt. πŸ’…

✨ SYNOPSIS ✨

okay so here’s the exact struct shape, character-for-character vibes:

       struct ne_pci_dev {
           atomic_t cmd_reply_avail;
           wait_queue_head_t cmd_reply_wait_q;
           struct list_head        enclaves_list;
           struct mutex            enclaves_list_mutex;
           struct workqueue_struct *event_wq;
           void __iomem            *iomem_base;
           struct work_struct      notify_work;
           struct mutex            pci_dev_mutex;
           struct pci_dev          *pdev;
        };

vibe check: passed. this struct ate and left no crumbs. πŸ”₯

🌸 Members 🌸

  • cmd_reply_avail β€” a variable that’s set if a reply has been sent by the PCI device. lowkey the β€œdid the device answer?” flag. βœ…
  • cmd_reply_wait_q β€” wait queue for handling command reply from the PCI device. it’s where you wait for the tea. β˜•
  • enclaves_list β€” list of the enclaves managed by the PCI device. the whole roster, bestie. πŸ“‹
  • enclaves_list_mutex β€” mutex for accessing the list of enclaves. one at a time, please, no shoving. πŸ”’
  • event_wq β€” work queue for handling out-of-band events triggered by the Nitro Hypervisor which require enclave state scanning and propagation to the enclave process. highkey busy energy. ⚑
  • iomem_base β€” MMIO region of the PCI device. that’s the memory-mapped I/O spot. πŸ—ΊοΈ
  • notify_work β€” work item for every received out-of-band event. one lil work item per event, slay. πŸ› οΈ
  • pci_dev_mutex β€” mutex for accessing the PCI device MMIO space. protect the MMIO, queen. πŸ›‘οΈ
  • pdev β€” PCI device data structure. the device’s own data, main character energy. πŸ‘‘

πŸ¦‹ SEE ALSO πŸ¦‹

okay so the whole linked squad is right here β€” every reference, no skips, iykyk:


mwah πŸ’‹ β€” this page came from the ./drivers/virt/nitro_enclaves source, dated October 2026, and it’s the struct ne_pci_dev(9) manual page. byeee, go be iconic with your kernel structs 🫢✨

πŸ“¦ where this page comes from