{"push_id":2499268541,"size":18,"distinct_size":14,"ref":"refs/heads/pr_v4","head":"9ab6a783c3234a2ba77b8833bd8d24041a1a225d","before":"aa09d72d57906e6598b3f60ef49895670cb1a895","commits":[{"sha":"4fe4ffdbdf67161cb570b8378e03b8af2855028e","author":{"name":"Andrea Bolognani","email":"3ada0bee826c753786fdbba72243dfba997094cf@redhat.com"},"message":"tests: Create full host NUMA topology in more cases\n\nvircapstest has code to add a full host NUMA topology, that\nis, one that includes all information about nodes and CPUs\nincluding IDs; testQemuCapsInit(), which is used to create a\nmock virCapsPtr for QEMU tests, however, just fakes it by\nsetting nnumaCell_max to some number.\n\nWhile the latter approach has served us well so far, we're\ngoing to need all the information to be filled in soon. In\norder to do that, we can just move the existing code from\nvircapstest to testutils and, with some renaming and\ntrivial tweaking, use it as-is.\n\nInterestingly, the NUMA topology generated by the function\nis rigged up so that the NUMA nodes aren't (necessarily)\nnumbered starting from 0, which is a nice way to spot\nmistaken assumptions in our codebase.\n\nSigned-off-by: Andrea Bolognani <abologna@redhat.com>\nReviewed-by: Ján Tomko <jtomko@redhat.com>","distinct":false,"url":"https://api.github.com/repos/zippy2/libvirt/commits/4fe4ffdbdf67161cb570b8378e03b8af2855028e"},{"sha":"931144858f7f6f7b82f343c8dc7e4db5d8570d0f","author":{"name":"Andrea Bolognani","email":"3ada0bee826c753786fdbba72243dfba997094cf@redhat.com"},"message":"qemu: Figure out nodeset bitmap size correctly\n\nThe current private XML parsing code relies on the assumption\nthat NUMA node IDs start from 0 and are densely allocated,\nneither of which is necessarily the case.\n\nChange it so that the bitmap size is dynamically calculated by\nlooking at NUMA node IDs instead, which ensures all nodes will\nbe able to fit and thus the bitmap will be parsed successfully.\n\nUpdate one of the test cases so that it would fail with the\nprevious approach, but passes with the new one.\n\nResolves: https://bugzilla.redhat.com/show_bug.cgi?id=1490158\n\nSigned-off-by: Andrea Bolognani <abologna@redhat.com>\nReviewed-by: Ján Tomko <jtomko@redhat.com>","distinct":false,"url":"https://api.github.com/repos/zippy2/libvirt/commits/931144858f7f6f7b82f343c8dc7e4db5d8570d0f"},{"sha":"c2047c5c9fd920030f761410480ea78ecff97fa8","author":{"name":"Michal Privoznik","email":"83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com"},"message":"qemu_capabilities: s/ObjectProps/DeviceProps/g\n\nSo far all the properties we are trying to fetch are device\nproperties, i.e. -device $dev on qemu command line. Change\nmisleading variable names to express what's queried for better.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>\nReviewed-by: Ján Tomko <jtomko@redhat.com>","distinct":false,"url":"https://api.github.com/repos/zippy2/libvirt/commits/c2047c5c9fd920030f761410480ea78ecff97fa8"},{"sha":"fb1fae94a1061a8d0358c4ba51ac5b23d1d0cc52","author":{"name":"Michal Privoznik","email":"83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com"},"message":"qemu_capabilities: Separate out device props fetching\n\nThe code is generic enough to be reused. Move it into a\nseparate function.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>\nReviewed-by: Ján Tomko <jtomko@redhat.com>","distinct":false,"url":"https://api.github.com/repos/zippy2/libvirt/commits/fb1fae94a1061a8d0358c4ba51ac5b23d1d0cc52"},{"sha":"47f311d0d64c7f15d04d3a0c129961a8dd28902a","author":{"name":"Michal Privoznik","email":"83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com"},"message":"virstoragefile: Introduce virStoragePRDef\n\nThis is a definition that holds information on SCSI persistent\nreservation settings. The XML part looks like this:\n\n  <reservations enabled='yes' managed='no'>\n    <source type='unix' path='/path/to/qemu-pr-helper.sock' mode='client'/>\n  </reservations>\n\nIf @managed is set to 'yes' then the <source/> is not parsed.\nThis design was agreed on here:\n\nhttps://www.redhat.com/archives/libvir-list/2017-November/msg01005.html\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>\nReviewed-by: John Ferlan <jferlan@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/47f311d0d64c7f15d04d3a0c129961a8dd28902a"},{"sha":"099b2b9b8d0cf01b49d34a5aad832a7822bf9bdd","author":{"name":"Michal Privoznik","email":"83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com"},"message":"qemuDomainDiskChangeSupported: Deny changing reservations\n\nCouple of reasons for that:\n\na) there's no monitor command to change path where the pr-helper\nconnects to, or\nb) there's no monitor command to introduce a new pr-helper for a\ndisk that already exists.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>\nReviewed-by: John Ferlan <jferlan@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/099b2b9b8d0cf01b49d34a5aad832a7822bf9bdd"},{"sha":"01ddd85117b28cc304a3a76916f9ef610cc31ae8","author":{"name":"Michal Privoznik","email":"83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com"},"message":"qemu: Introduce pr-manager-helper capability\n\nThe capability tracks if qemu has pr-manager-helper object. At\nthis time don't actually detect if qemu has the capability. Not\njust yet. Only after the code is written the feature will be\nenabled.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>\nReviewed-by: John Ferlan <jferlan@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/01ddd85117b28cc304a3a76916f9ef610cc31ae8"},{"sha":"1de1c4eb0385fd8ff8735f53a777bec04fe600a1","author":{"name":"Michal Privoznik","email":"83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com"},"message":"qemu: Generate alias and socket path for pr-helper\n\nWhile we're not generating the command line just yet (look for\nthe next commits), we can generate the alias for pr-manager.\nA domain can have up to one managed pr-manager (in which case\nsocket path is decided by libvirt and pr-helper is spawned by\nlibvirt too), but up to ndisks of unmanaged ones (one per disk\nbasically). In case of the former we can generate a simple alias\nand be sure it'll not conflict. But in case of the latter to\navoid any conflicts let's generate alias that's based on\nsomething unique - like disk target.\n\nWhile at it, store these runtime information (alias and socket\npath) in a struct private to disk. The reason is that runtime\ninformation (qemuDomainDiskPRD) should not be mixed with static\ninformation (virStoragePRDef).\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/1de1c4eb0385fd8ff8735f53a777bec04fe600a1"},{"sha":"b937a1d026a10b8c6039f19199af118509a8617b","author":{"name":"Michal Privoznik","email":"83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com"},"message":"qemu: Store pr runtime data in status XML\n\nNow that we generate pr-manager alias and socket path store them\nin status XML so that they are preserved across daemon restarts.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/b937a1d026a10b8c6039f19199af118509a8617b"},{"sha":"01bac9853f0acbe5ed47c1b6d1c6616f1656be04","author":{"name":"Michal Privoznik","email":"83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com"},"message":"qemu_ns: Allow /dev/mapper/control for PR\n\nIf qemu-pr-helper is compiled with multipath support the first\nthing it does is open /dev/mapper/control. Since we're going\nto be running it inside qemu namespace we need to create it\nthere. Unfortunately, we don't know if it was compiled with or\nwithout multipath so we have to create it anyway.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/01bac9853f0acbe5ed47c1b6d1c6616f1656be04"},{"sha":"58184a7ae04d23713f9311f1c79f58c142a41da0","author":{"name":"Michal Privoznik","email":"83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com"},"message":"qemu_cgroup: Allow /dev/mapper/control for PR\n\nJust like in previous commit, qemu-pr-helper might want to open\n/dev/mapper/control under certain circumstances. Therefore we\nhave to allow it in cgroups.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/58184a7ae04d23713f9311f1c79f58c142a41da0"},{"sha":"5e8338f4d2c65689d96277955b26d3f4471ec607","author":{"name":"Michal Privoznik","email":"83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com"},"message":"qemu: Generate cmd line at startup\n\nThis is the easier part. All we need to do here is put -object\npr-manager-helper,id=$alias,path=$socketPath and then just\nreference the object in -drive file.pr-manager=$alias.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/5e8338f4d2c65689d96277955b26d3f4471ec607"},{"sha":"a76564894e013df026d86a3c2739c3d3958d80d6","author":{"name":"Michal Privoznik","email":"83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com"},"message":"qemu: Introduce pr_helper to qemu.conf\n\nJust like we allow users overriding path to bridge-helper\ndetected at compile time we can allow them to override path to\nqemu-pr-helper.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>\nReviewed-by: John Ferlan <jferlan@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/a76564894e013df026d86a3c2739c3d3958d80d6"},{"sha":"aed02f210a5137ec001629b4da9b36510fa15205","author":{"name":"Michal Privoznik","email":"83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com"},"message":"qemu: Start PR daemon on domain startup\n\nBefore we exec() qemu we have to spawn pr-helper processes for\nall managed reservations (well, technically there can only one).\nThe only caveat there is that we should place the process into\nthe same namespace and cgroup as qemu (so that it shares the same\nview of the system). But we can do that only after we've forked.\nThat means calling the setup function between fork() and exec().\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/aed02f210a5137ec001629b4da9b36510fa15205"},{"sha":"20d7d7afbb3531a1a048fbbf40a8d7484acad218","author":{"name":"Michal Privoznik","email":"83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com"},"message":"qemu: Start PR daemon on disk hotplug\n\nWhen plugging a disk into domain we need to start qemu-pr-helper\nprocess iff this is the first disk with PR enabled for the\ndomain. Otherwise the helper is already running (or not needed).\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/20d7d7afbb3531a1a048fbbf40a8d7484acad218"},{"sha":"682b3d40e6c4b43a1030d43de7c0473eb356f50c","author":{"name":"Michal Privoznik","email":"83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com"},"message":"qemu_hotplug: Hotplug of reservations\n\nWhen attaching a disk that requires pr-manager we might need to\nplug the pr-manager object too.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/682b3d40e6c4b43a1030d43de7c0473eb356f50c"},{"sha":"671aabdabf30ed320f27cc4523e39434eef22e0a","author":{"name":"Michal Privoznik","email":"83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com"},"message":"qemu_hotplug: Hotunplug of reservations\n\nIf we are the last one to use pr-manager object we need to remove\nit and also kill the qemu-pr-helper process.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/671aabdabf30ed320f27cc4523e39434eef22e0a"},{"sha":"9ab6a783c3234a2ba77b8833bd8d24041a1a225d","author":{"name":"Michal Privoznik","email":"83d82aaba2eed257f4814b0c239c260c4caaadf0@redhat.com"},"message":"qemu: Detect pr-manager-helper capability\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>\nReviewed-by: John Ferlan <jferlan@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/9ab6a783c3234a2ba77b8833bd8d24041a1a225d"}]}
{"actor":{"display_login":"zippy2"}}