)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1a11d229058c5853a8b49e00da65477c527e0966","unresolved":true,"context_lines":[{"line_number":12,"context_line":"in switchdev mode [1] also has a value in sriov_totalvfs,"},{"line_number":13,"context_line":"just like PF."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"For example, if Mellanox Out-of-Box driver (OFED 5.4+) is"},{"line_number":16,"context_line":"used, the values under /sys/class/net are as follows."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"For PF:"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"8aaaa2bc_7f097923","line":15,"updated":"2022-08-04 10:30:38.000000000","message":"im not sure what our official policy is on out of tree kernel drivers.\n\nfor qemu and libvirt for example if the feature is not upstream in qemu and Libvirt then it is not supported in nova.\n\nwe have some support for dpdk but we do not generally add support of rout of tree intel driver feature if that is not supported in the in kernel driver.\nthat has come up in the past so im not sure we should do this for mellanox or other out of tree vender drivers.","commit_id":"a01bd5d7ef74284f655e5c3b00651142021b07a8"},{"author":{"_account_id":31652,"name":"Nobuhiro MIKI","email":"nmiki@lycorp.co.jp","username":"nmiki"},"change_message_id":"c3e3108755448e8a3ee575727c09b3f9276ae2e1","unresolved":true,"context_lines":[{"line_number":12,"context_line":"in switchdev mode [1] also has a value in sriov_totalvfs,"},{"line_number":13,"context_line":"just like PF."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"For example, if Mellanox Out-of-Box driver (OFED 5.4+) is"},{"line_number":16,"context_line":"used, the values under /sys/class/net are as follows."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"For PF:"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"239b2010_16465f6e","line":15,"in_reply_to":"8aaaa2bc_7f097923","updated":"2022-08-05 02:35:39.000000000","message":"I\u0027ll also check whether to reproduce a bug on latest upstream Linux.","commit_id":"a01bd5d7ef74284f655e5c3b00651142021b07a8"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1a11d229058c5853a8b49e00da65477c527e0966","unresolved":true,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"For reference, libvirt already contains a similar logic to determine"},{"line_number":31,"context_line":"PF based on phys_port_name [2]. The regex to match PF is also"},{"line_number":32,"context_line":"discussed and is used in this patch."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"\u003e All PF devices have a phys_port_name matching a particular regex"},{"line_number":35,"context_line":"\u003e (p[0-9]+$)|(p[0-9]+s[0-9]+$)"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"d5df0d32_5d9c1a33","line":32,"updated":"2022-08-04 10:30:38.000000000","message":"we should not use this to determine if its a vf or not.\n\nthat is determined by the pci capabilities.","commit_id":"a01bd5d7ef74284f655e5c3b00651142021b07a8"},{"author":{"_account_id":31652,"name":"Nobuhiro MIKI","email":"nmiki@lycorp.co.jp","username":"nmiki"},"change_message_id":"c3e3108755448e8a3ee575727c09b3f9276ae2e1","unresolved":true,"context_lines":[{"line_number":29,"context_line":""},{"line_number":30,"context_line":"For reference, libvirt already contains a similar logic to determine"},{"line_number":31,"context_line":"PF based on phys_port_name [2]. The regex to match PF is also"},{"line_number":32,"context_line":"discussed and is used in this patch."},{"line_number":33,"context_line":""},{"line_number":34,"context_line":"\u003e All PF devices have a phys_port_name matching a particular regex"},{"line_number":35,"context_line":"\u003e (p[0-9]+$)|(p[0-9]+s[0-9]+$)"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"ff6cfb8e_b548dd5a","line":32,"in_reply_to":"d5df0d32_5d9c1a33","updated":"2022-08-05 02:35:39.000000000","message":"Thanks. Hmm, I\u0027ll look at PCI Configuration Sapce Header.\nI think we need a stable way to distinguish between PFs, VFs, and VF representors.","commit_id":"a01bd5d7ef74284f655e5c3b00651142021b07a8"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1a11d229058c5853a8b49e00da65477c527e0966","unresolved":true,"context_lines":[{"line_number":38,"context_line":"[2] https://gitlab.com/libvirt/libvirt/-/commit/5b1c525b1f3608156884aed0dc5e925306c1e260"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"Change-Id: I73b5cabdd7579b072a59ae8ab09d1efef2ec4f01"},{"line_number":41,"context_line":"Signed-off-by: Nobuhiro MIKI \u003cnmiki@yahoo-corp.jp\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"d96f381e_7f44eba4","line":41,"updated":"2022-08-04 10:30:38.000000000","message":"please at a minimum file a bug for this.","commit_id":"a01bd5d7ef74284f655e5c3b00651142021b07a8"},{"author":{"_account_id":31652,"name":"Nobuhiro MIKI","email":"nmiki@lycorp.co.jp","username":"nmiki"},"change_message_id":"c3e3108755448e8a3ee575727c09b3f9276ae2e1","unresolved":true,"context_lines":[{"line_number":38,"context_line":"[2] https://gitlab.com/libvirt/libvirt/-/commit/5b1c525b1f3608156884aed0dc5e925306c1e260"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"Change-Id: I73b5cabdd7579b072a59ae8ab09d1efef2ec4f01"},{"line_number":41,"context_line":"Signed-off-by: Nobuhiro MIKI \u003cnmiki@yahoo-corp.jp\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"81b34002_40432180","line":41,"in_reply_to":"d96f381e_7f44eba4","updated":"2022-08-05 02:35:39.000000000","message":"OK. I found a bug that causes a failure of creating a new instance on a past release, and it was due to this physical function detection logic.\nI\u0027ll send a bug report after completing https://review.opendev.org/c/openstack/nova/+/845775 and accompanying tasks if needed.","commit_id":"a01bd5d7ef74284f655e5c3b00651142021b07a8"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":31652,"name":"Nobuhiro MIKI","email":"nmiki@lycorp.co.jp","username":"nmiki"},"change_message_id":"8745b67149c4df9011ce699f8ff45bf652b838a5","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"9d96e4bf_d4cc8fab","updated":"2022-08-10 03:39:59.000000000","message":"Yesterday, I re-tested in Ubuntu 22.04 (Kernel 5.15.0-43-generic). On this kernel, the behavior was the same (PFs and VF Representors both have sriov_totalvfs) as the out-of-box driver (Mellanox OFED).\n\nHowever, when I used devstack on master branch in this environment, PFs were correctly determined as expected. Further investigation revealed that a bug [1] corresponding to this case had already been reported and was resolved by a patch [2] that determines PF based on phys_port_name.\n\nI apologize for my lack of research. This patch is closed.\n\n[1] https://launchpad.net/bugs/1892132\n[2] https://review.opendev.org/c/openstack/os-vif/+/745895/","commit_id":"a01bd5d7ef74284f655e5c3b00651142021b07a8"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"c3aa3319d0a96af39ab641c9e84a620a05acd90a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"c3d16fcb_f8e4fa7d","updated":"2022-08-04 10:31:37.000000000","message":"this change will not be required when https://review.opendev.org/c/openstack/nova/+/845775 is merged which should happen soon.","commit_id":"a01bd5d7ef74284f655e5c3b00651142021b07a8"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1a11d229058c5853a8b49e00da65477c527e0966","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"c1bc7eae_1161c596","updated":"2022-08-04 10:30:38.000000000","message":"we are removing this physical function detection logic as part of the pci in placement series.","commit_id":"a01bd5d7ef74284f655e5c3b00651142021b07a8"},{"author":{"_account_id":31652,"name":"Nobuhiro MIKI","email":"nmiki@lycorp.co.jp","username":"nmiki"},"change_message_id":"c3e3108755448e8a3ee575727c09b3f9276ae2e1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"338994d6_f89e5c6c","in_reply_to":"c1bc7eae_1161c596","updated":"2022-08-05 02:35:39.000000000","message":"Thank you for the quick review. I found that the same detection logic is used in other codes as below:\n\n- (nova repository) is_physical_function in nova/pci/utils.py\n- (os-vif repository) get_function_by_ifname in os-vif/vif_plug_ovs/linux_net.py\n\nWill you remove this detection logic in all of these codes?","commit_id":"a01bd5d7ef74284f655e5c3b00651142021b07a8"},{"author":{"_account_id":31652,"name":"Nobuhiro MIKI","email":"nmiki@lycorp.co.jp","username":"nmiki"},"change_message_id":"c3e3108755448e8a3ee575727c09b3f9276ae2e1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"55e7d360_cfd674bd","in_reply_to":"c3d16fcb_f8e4fa7d","updated":"2022-08-05 02:35:39.000000000","message":"I\u0027ll wait for these tasks to be completed.","commit_id":"a01bd5d7ef74284f655e5c3b00651142021b07a8"}],"nova/pci/utils.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"1a11d229058c5853a8b49e00da65477c527e0966","unresolved":true,"context_lines":[{"line_number":144,"context_line":"        return pci_addr, False"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"    return (pci_addr,"},{"line_number":147,"context_line":"            sriov_totalvfs \u003e 0 and bool(_PF_NAME_REGEX.match(phys_port_name)))"},{"line_number":148,"context_line":""},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"def is_physical_function("}],"source_content_type":"text/x-python","patch_set":1,"id":"00497602_82117ece","line":147,"updated":"2022-08-04 10:30:38.000000000","message":"we are planning to remove this detection logic so this likely should be removed.","commit_id":"a01bd5d7ef74284f655e5c3b00651142021b07a8"}]}
