{"push_id":1319612319,"size":55,"distinct_size":48,"ref":"refs/heads/sparse_iohelper1","head":"0a0687e3b2ff8cf288202978f697651444320e4a","before":"2ae50177b384ed0df4aaf9d18633cf26260b4d7c","commits":[{"sha":"4ab456806f5d2d5a5dd22b368e69340f9f8ea379","author":{"name":"Nitesh Konkar","email":"cff0b6424c1ce5c53282a8fca6f894a859c45ab3@gmail.com"},"message":"Fix coding style issues.\n\nSigned-off-by: Nitesh Konkar <nitkon12@linux.vnet.ibm.com>","distinct":false,"url":"https://api.github.com/repos/zippy2/libvirt/commits/4ab456806f5d2d5a5dd22b368e69340f9f8ea379"},{"sha":"1d4634dbeef7ffd961ead490183190c864da5132","author":{"name":"Daniel P. Berrange","email":"5d1320ff3c85681bb6d7ea4b0b2f371698325ec8@redhat.com"},"message":"qemu: make qemuGetCompressionProgram return int not an enum\n\nenum types are unsigned and the qemuGetCompressionProgram\nfunction can return -1 on error. It is therefore inappropriate\nto return an enum type. This fixes a build error where the\ninternal 'ret' variable was used in a comparison with -1\n\n../../src/qemu/qemu_driver.c: In function 'qemuGetCompressionProgram':\n../../src/qemu/qemu_driver.c:3280:5: error: comparison of unsigned expression < 0 is always false [-Werror=type-limits]\n../../src/qemu/qemu_driver.c:3289:5: error: comparison of unsigned expression < 0 is always false [-Werror=type-limits]\ncc1: all warnings being treated as errors\n\nSigned-off-by: Daniel P. Berrange <berrange@redhat.com>","distinct":false,"url":"https://api.github.com/repos/zippy2/libvirt/commits/1d4634dbeef7ffd961ead490183190c864da5132"},{"sha":"1ee7efef6fe3192fac40eab79320577133361949","author":{"name":"Jiri Denemark","email":"0b6e66718f66b2a8c4b2dc6a6a42b8beb145fd62@redhat.com"},"message":"spec: Package cputypes.rng\n\nSigned-off-by: Jiri Denemark <jdenemar@redhat.com>","distinct":false,"url":"https://api.github.com/repos/zippy2/libvirt/commits/1ee7efef6fe3192fac40eab79320577133361949"},{"sha":"e377ebee82266078ef449ac15534a5747a7aee75","author":{"name":"Jiri Denemark","email":"0b6e66718f66b2a8c4b2dc6a6a42b8beb145fd62@redhat.com"},"message":"mingw: Package cputypes.rng\n\nSigned-off-by: Jiri Denemark <jdenemar@redhat.com>","distinct":false,"url":"https://api.github.com/repos/zippy2/libvirt/commits/e377ebee82266078ef449ac15534a5747a7aee75"},{"sha":"934c4dbea85e8eac5dfd50b51283d34dbaa6e476","author":{"name":"Jiri Denemark","email":"0b6e66718f66b2a8c4b2dc6a6a42b8beb145fd62@redhat.com"},"message":"mingw: Package cputypes.rng for mingw32 too\n\nSigned-off-by: Jiri Denemark <jdenemar@redhat.com>","distinct":false,"url":"https://api.github.com/repos/zippy2/libvirt/commits/934c4dbea85e8eac5dfd50b51283d34dbaa6e476"},{"sha":"7b3cf84bbb4d54c519ab1fae8f711105f60d61bd","author":{"name":"Jim Fehlig","email":"2bb3e1c08de882740bb0c11807b789849eab19b7@suse.com"},"message":"libxl: find virDomainObj in libxlDomainShutdownThread\n\nlibxl events are delivered to libvirt via the libxlDomainEventHandler\ncallback registered with libxl. Documenation in\n$xensrc/tools/libxl/libxl_event.h states that the callback \"may occur\non any thread in which the application calls libxl\". This can result\nin deadlock since many of the libvirt callees of libxl hold a lock on\nthe virDomainObj they are working on. When the callback is invoked, it\nattempts to find a virDomainObj corresponding to the domain ID provided\nby libxl. Searching the domain obj list results in locking each obj\nbefore checking if it is active, and its ID equals the requested ID.\nDeadlock is possible when attempting to lock an obj that is already\nlocked further up the call stack. Indeed, Max Ustermann reported an\ninstance of this deadlock\n\nhttps://www.redhat.com/archives/libvir-list/2015-November/msg00130.html\n\nGuido Rossmueller also recently stumbled across it\n\nhttps://www.redhat.com/archives/libvir-list/2016-September/msg00287.html\n\nFix the deadlock by moving the lookup of virDomainObj to the\nlibxlDomainShutdownThread. After this patch, libxl events are\nenqueued on the libvirt side and processed by dedicated thread,\navoiding the described deadlock.\n\nReported-by: Max Ustermann <ustermann78@web.de>\nReported-by: Guido Rossmueller <Guido.Rossmueller@gdata.de>","distinct":false,"url":"https://api.github.com/repos/zippy2/libvirt/commits/7b3cf84bbb4d54c519ab1fae8f711105f60d61bd"},{"sha":"3193a594475f1565e03ddec22fd72af08e95adb2","author":{"name":"Michal Privoznik","email":"ff52d8b477e4489d0b3b856d550bc61214c6ad4b@redhat.com"},"message":"qemuDomainUpdateDeviceConfig: Allow full disk update\n\nhttps://bugzilla.redhat.com/show_bug.cgi?id=1368417\n\nSo far, when it comes to 'virsh update-device --config' of disks\nwe are limiting ourselves for just the disk source update and\njust for CDROMs and floppies. This makes no sense. Especially if\nyou look around and see that we already allow full update to\ngraphics and net devices. So let's just take whatever XML user\nwants to have there and replace our internal definition with it.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":false,"url":"https://api.github.com/repos/zippy2/libvirt/commits/3193a594475f1565e03ddec22fd72af08e95adb2"},{"sha":"9bafc49fa09a7bdb7f18dc64411cffd69d09aa82","author":{"name":"Michal Privoznik","email":"ff52d8b477e4489d0b3b856d550bc61214c6ad4b@redhat.com"},"message":"Introduce virStreamRecvFlags\n\nAlthough we already have virStreamRecv, just like some other\nolder APIs it is missing @flags argument. This means, the\nfunction is not that flexible and therefore we need\nvirStreamRecvFlags. The latter is going to be needed when we will\nwant it to stop at a hole in stream.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/9bafc49fa09a7bdb7f18dc64411cffd69d09aa82"},{"sha":"8c6633b7f03c2976460a7f057366d872aa93202d","author":{"name":"Michal Privoznik","email":"ff52d8b477e4489d0b3b856d550bc61214c6ad4b@redhat.com"},"message":"Implement virStreamRecvFlags to some drivers\n\nWe have three virStreamDriver-s currently in our tree.\nvirFDStream, remote driver and ESX driver.f or now, support for\nremote driver and ESX driver is sufficient, because\nimplementation for virFDStream is going to be supplied later as\nit needs to be slightly different.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/8c6633b7f03c2976460a7f057366d872aa93202d"},{"sha":"3124673128f203a80f85ebe7b6873ceb215e9388","author":{"name":"Michal Privoznik","email":"ff52d8b477e4489d0b3b856d550bc61214c6ad4b@redhat.com"},"message":"Introduce virStreamSkip\n\nThis API can be used to tell the other side of the stream to skip\nsome bytes in the stream. This can be used to create a sparse\nfile on the receiving side of a stream.\n\nIt takes just one argument @length, which says how big the hole\nis. Since our streams are not rewindable like regular files, we\ndon't need @whence argument like seek(2) has.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/3124673128f203a80f85ebe7b6873ceb215e9388"},{"sha":"1cd21df87e166e371d605a35ca98fec17635125e","author":{"name":"Michal Privoznik","email":"ff52d8b477e4489d0b3b856d550bc61214c6ad4b@redhat.com"},"message":"Introduce virStreamHoleSize\n\nThis function is basically a counterpart for virStreamSkip. If\none side of a stream called virStreamSkip() the other should call\nvirStreamHoleSize() to get the size of the hole.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/1cd21df87e166e371d605a35ca98fec17635125e"},{"sha":"e41edf08a6da026e3b22d5e2a4078201de00faf7","author":{"name":"Michal Privoznik","email":"ff52d8b477e4489d0b3b856d550bc61214c6ad4b@redhat.com"},"message":"Introduce VIR_STREAM_RECV_STOP_AT_HOLE flag\n\nThis flag is for virStreamRecvFlags API. Its purpose is to stop\nreading from the stream if a hole occurred as holes are to be\nthreated separately.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/e41edf08a6da026e3b22d5e2a4078201de00faf7"},{"sha":"c845c4cb73c640b13d79df383fa393877eb50ca3","author":{"name":"Michal Privoznik","email":"ff52d8b477e4489d0b3b856d550bc61214c6ad4b@redhat.com"},"message":"Introduce virStreamSparseRecvAll\n\nThis is just a wrapper over new functions that have been just\nintroduced: virStreamRecvFlags(), virStreamHoleSize(). It's very\nsimilar to virStreamRecvAll() except it handles sparse streams\nwell.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/c845c4cb73c640b13d79df383fa393877eb50ca3"},{"sha":"ecec49a8b0854e6f19aa958b7257c52c6a0ba927","author":{"name":"Michal Privoznik","email":"ff52d8b477e4489d0b3b856d550bc61214c6ad4b@redhat.com"},"message":"Introduce virStreamSparseSendAll\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/ecec49a8b0854e6f19aa958b7257c52c6a0ba927"},{"sha":"651ede282c912012f85e3a6a3a5d3af82ae51fcb","author":{"name":"Michal Privoznik","email":"ff52d8b477e4489d0b3b856d550bc61214c6ad4b@redhat.com"},"message":"Introduce virStreamInData\n\nThis is just an internal API, that calls corresponding function\nin stream driver. This function will set @data=1 if the\nunderlying file is in data section, or @data=0 if it is in a\nhole. At any rate, @length is set to number of bytes remaining in\nthe section the file currently is.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/651ede282c912012f85e3a6a3a5d3af82ae51fcb"},{"sha":"9199eb454ca0104f72b89eb11586c2755a987777","author":{"name":"Michal Privoznik","email":"ff52d8b477e4489d0b3b856d550bc61214c6ad4b@redhat.com"},"message":"virNetClientStreamNew: Track origin stream\n\nThis has no real added value right now,\nbut is going to be very helpful later.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/9199eb454ca0104f72b89eb11586c2755a987777"},{"sha":"4326f3e2d612a7d66cd585efac223a0e1b12f253","author":{"name":"Michal Privoznik","email":"ff52d8b477e4489d0b3b856d550bc61214c6ad4b@redhat.com"},"message":"Track if stream is skippable\n\nEven though there's no way to make stream skippable right now,\nit is going to be soon. We need to track this info so that we\ndon't send virStreamSkip to a client that did not want it or vice\nversa.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/4326f3e2d612a7d66cd585efac223a0e1b12f253"},{"sha":"00dcb8d49d72fa49fd60fc07c44579162c0933ee","author":{"name":"Michal Privoznik","email":"ff52d8b477e4489d0b3b856d550bc61214c6ad4b@redhat.com"},"message":"RPC: Introduce virNetStreamSkip\n\nThis is going to be RPC representation for virStreamSkip.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/00dcb8d49d72fa49fd60fc07c44579162c0933ee"},{"sha":"7c2f81296546dd0c14e6ae270049999b84a6fd4a","author":{"name":"Michal Privoznik","email":"ff52d8b477e4489d0b3b856d550bc61214c6ad4b@redhat.com"},"message":"Introduce VIR_NET_STREAM_SKIP message type\n\nThis is a special type of stream packet, that is bidirectional\nand will contain information on how much bytes are both sides\nskipping in the stream.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/7c2f81296546dd0c14e6ae270049999b84a6fd4a"},{"sha":"65903c2a413caefb8e6b5a9b4353f3d44afc4058","author":{"name":"Michal Privoznik","email":"ff52d8b477e4489d0b3b856d550bc61214c6ad4b@redhat.com"},"message":"Teach wireshark plugin about VIR_NET_STREAM_SKIP\n\nIdeally, this would be generated, but to achieve that\ncorresponding XDR definitions needed to go into a different .x\nfile. But they belong just to the one that they are right now.\n\nSigned-off-by: Michal Privoznik <mprivozn@redhat.com>","distinct":true,"url":"https://api.github.com/repos/zippy2/libvirt/commits/65903c2a413caefb8e6b5a9b4353f3d44afc4058"}]}
{"actor":{"display_login":"zippy2"}}