<div dir="ltr">Hi team,<div><br></div><div>Please could you pour in your suggestions on the mail?</div><div><br></div><div>I raised a blueprint in Nova for this <a href="https://blueprints.launchpad.net/nova/+spec/pci-passthorugh-for-ironic">https://blueprints.launchpad.net/nova/+spec/pci-passthorugh-for-ironic</a> and two RFEs at ironic side <a href="https://bugs.launchpad.net/ironic/+bug/1680780">https://bugs.launchpad.net/ironic/+bug/1680780</a> and <a href="https://bugs.launchpad.net/ironic/+bug/1681320">https://bugs.launchpad.net/ironic/+bug/1681320</a> for the discussion topic.</div><div><br></div><div>Regards</div><div>Nisha</div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Apr 5, 2017 at 11:03 PM, Nisha Agarwal <span dir="ltr"><<a href="mailto:agarwalnisha1980@gmail.com" target="_blank">agarwalnisha1980@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi,<div><br></div><div>I suggested to add few pci devices related attributes to ironic inspection(out-of-band as well inband). <a href="https://review.openstack.org/#/c/338138" target="_blank">https://review.<wbr>openstack.org/#/c/338138</a>.</div><div><br></div><div>I got the suggestion to convert them to standard pci device format which nova understands. For example( as given in Nova code):</div><div><div>[{"count": 5, "vendor_id": "8086", "product_id": "1520",  "extra_info":'{}'}],</div><div><br></div><div>For above to be supported for ironic scheduling, we will require changes at two places: </div><div>1. nova - This should require a small code changes as pci_passthrough filter already exists in nova. The ironic virt driver should be able to consume the pci_device structure from ironic node/database and pass it on to scheduler for scheduling and it should add pci_passthrough filter in ironic nodes filter list.</div><div>2. ironic - this definitely needs a spec which will suggest to add the pci_device data structure to ironic node.</div><div><br></div><div><br></div><div>The ironic side work may take some time but Nova side looks to be a small change. IMO we can have the nova side changes and ironic database changes (to add pci_device field) parallely. </div><div>Inspection can populate that new pci_device field for the node to get scheduled.</div><div><br></div><div>AFAIK, ironic-inspector already has the plugin to discover pci devices in the format nova has it today. If we get the scheduling enabled based on pci_devices for ironic nodes, then inspector can write this data to ironic node object by default.</div><div><br></div><div>What do you people think on this idea? Does it make sense? If its worth to do this way i can own up this work.</div><div><br></div><div>Regards</div><span class="HOEnZb"><font color="#888888"><div>Nisha</div><div><br></div>-- <br><div class="m_4366669848292803229gmail_signature">The Secret Of Success is learning how to use pain and pleasure, instead<br>of having pain and pleasure use you. If You do that you are in control<br>of your life. If you don't life controls you.</div>
</font></span></div></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature">The Secret Of Success is learning how to use pain and pleasure, instead<br>of having pain and pleasure use you. If You do that you are in control<br>of your life. If you don't life controls you.</div>
</div></div>