{"push_id":859979822,"size":84,"distinct_size":84,"ref":"refs/heads/block","head":"7651e1c68acdaf60954668540c9df778397631d6","before":"c59f3f7e3931bd3c2b082498a9014b50fe1d2625","commits":[{"sha":"8ad4f639dc51649c051da3f579b78722cb8115a2","author":{"email":"e9db499e13ac90573163837d2fb1fc9f85402d6d@igalia.com","name":"Alberto Garcia"},"message":"block: Don't call blk_bs() twice in bdrv_lookup_bs()\n\nSigned-off-by: Alberto Garcia <berto@igalia.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/8ad4f639dc51649c051da3f579b78722cb8115a2"},{"sha":"21a5be8f70002746c6a18072a353d1c7d77f76d8","author":{"email":"6779b6f8ab957befe3afd965a2c13eebbdd5a946@redhat.com","name":"Max Reitz"},"message":"block: Add blk_remove_bs()\n\nThis function removes the BlockDriverState associated with the given\nBlockBackend from that BB and sets the BDS pointer in the BB to NULL.\n\nSigned-off-by: Max Reitz <mreitz@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/21a5be8f70002746c6a18072a353d1c7d77f76d8"},{"sha":"5059146f06322dc89df0fdd3a2f0c127447c38c1","author":{"email":"6779b6f8ab957befe3afd965a2c13eebbdd5a946@redhat.com","name":"Max Reitz"},"message":"block: Make bdrv_states public\n\nWhen inserting a BDS tree into a BB, we will need to add the root BDS to\nthis list. Since we will want to do that in the blockdev-insert-medium\nimplementation in blockdev.c, we will need access to it there.\n\nThis patch is not exactly elegant, but bdrv_states will be removed in\nthe future anyway because we no longer need it since we have BBs.\n\nSigned-off-by: Max Reitz <mreitz@redhat.com>\nReviewed-by: Alberto Garcia <berto@igalia.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/5059146f06322dc89df0fdd3a2f0c127447c38c1"},{"sha":"526c0fe9a8d9b7aa4a9f72205a092e51a6392722","author":{"email":"6779b6f8ab957befe3afd965a2c13eebbdd5a946@redhat.com","name":"Max Reitz"},"message":"block: Add functions for inheriting a BBRS\n\nIn order to open a BDS which inherits a BB's root state,\nblk_get_open_flags_from_root_state() is used to inquire the flags to be\npassed to bdrv_open(), and blk_apply_root_state() is used to apply the\nremaining state after the BDS has been opened.\n\nSigned-off-by: Max Reitz <mreitz@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/526c0fe9a8d9b7aa4a9f72205a092e51a6392722"},{"sha":"9d46d2042c922c43e9b78ff691f964efeabe0448","author":{"email":"6779b6f8ab957befe3afd965a2c13eebbdd5a946@redhat.com","name":"Max Reitz"},"message":"blockdev: Add blockdev-open-tray\n\nSigned-off-by: Max Reitz <mreitz@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/9d46d2042c922c43e9b78ff691f964efeabe0448"},{"sha":"5f8b9041b5222d82e25be084a034f8c585884e17","author":{"email":"6779b6f8ab957befe3afd965a2c13eebbdd5a946@redhat.com","name":"Max Reitz"},"message":"blockdev: Add blockdev-close-tray\n\nSigned-off-by: Max Reitz <mreitz@redhat.com>\nReviewed-by: Kevin Wolf <kwolf@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/5f8b9041b5222d82e25be084a034f8c585884e17"},{"sha":"108a85b1ca2be139af27b5828c02a94225dfce4f","author":{"email":"6779b6f8ab957befe3afd965a2c13eebbdd5a946@redhat.com","name":"Max Reitz"},"message":"blockdev: Add blockdev-remove-medium\n\nSigned-off-by: Max Reitz <mreitz@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/108a85b1ca2be139af27b5828c02a94225dfce4f"},{"sha":"85faa58de75dba51477a61590885153f1d6dd862","author":{"email":"6779b6f8ab957befe3afd965a2c13eebbdd5a946@redhat.com","name":"Max Reitz"},"message":"blockdev: Add blockdev-insert-medium\n\nAnd a helper function for that, which directly takes a pointer to the\nBDS to be inserted instead of its node-name (which will be used for\nimplementing 'change' using blockdev-insert-medium).\n\nSigned-off-by: Max Reitz <mreitz@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/85faa58de75dba51477a61590885153f1d6dd862"},{"sha":"eb12f6d05a169444fdee57e59b0e79c0d9091811","author":{"email":"6779b6f8ab957befe3afd965a2c13eebbdd5a946@redhat.com","name":"Max Reitz"},"message":"blockdev: Implement eject with basic operations\n\nImplement 'eject' by calling blockdev-open-tray and\nblockdev-remove-medium.\n\nSigned-off-by: Max Reitz <mreitz@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/eb12f6d05a169444fdee57e59b0e79c0d9091811"},{"sha":"f7e91b1712e1d0489c6e2a01ef77bd78657a33d8","author":{"email":"6779b6f8ab957befe3afd965a2c13eebbdd5a946@redhat.com","name":"Max Reitz"},"message":"blockdev: Implement change with basic operations\n\nImplement 'change' on block devices by calling blockdev-open-tray,\nblockdev-remove-medium, blockdev-insert-medium (a variation of that\nwhich does not need a node-name) and blockdev-close-tray.\n\nSigned-off-by: Max Reitz <mreitz@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/f7e91b1712e1d0489c6e2a01ef77bd78657a33d8"},{"sha":"31dba547d4dd3c5ab8707ffa2f7d8933f26c8643","author":{"email":"6779b6f8ab957befe3afd965a2c13eebbdd5a946@redhat.com","name":"Max Reitz"},"message":"block: Inquire tray state before tray-moved events\n\nblk_dev_change_media_cb() is called for all potential tray movements;\nhowever, it is possible to request closing the tray but nothing actually\nhappening (on a floppy disk drive without a medium).\n\nThus, the actual tray status should be inquired before sending a\ntray-moved event (and an event should be sent whenever the status\nchanged).\n\nChecking @load is now superfluous; it was necessary because it was\npossible to change a medium without having explicitly opened the tray\nand closed it again (or it might have been possible, at least). This is\nno longer possible, though.\n\nSigned-off-by: Max Reitz <mreitz@redhat.com>\nReviewed-by: Eric Blake <eblake@redhat.com>\nReviewed-by: Kevin Wolf <kwolf@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/31dba547d4dd3c5ab8707ffa2f7d8933f26c8643"},{"sha":"647c3caff81df9bf9de9e2f7be6fdf6df5d539d0","author":{"email":"6779b6f8ab957befe3afd965a2c13eebbdd5a946@redhat.com","name":"Max Reitz"},"message":"qmp: Introduce blockdev-change-medium\n\nIntroduce a new QMP command 'blockdev-change-medium' which is intended\nto replace the 'change' command for block devices. The existing function\nqmp_change_blockdev() is accordingly renamed to\nqmp_blockdev_change_medium().\n\nSigned-off-by: Max Reitz <mreitz@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/647c3caff81df9bf9de9e2f7be6fdf6df5d539d0"},{"sha":"328cae10d8e393ff9839464c71299d033c44a0d7","author":{"email":"6779b6f8ab957befe3afd965a2c13eebbdd5a946@redhat.com","name":"Max Reitz"},"message":"hmp: Use blockdev-change-medium for change command\n\nUse separate code paths for the two overloaded functions of the 'change'\nHMP command, and invoke the 'blockdev-change-medium' QMP command if used\non a block device (by calling qmp_blockdev_change_medium()).\n\nSigned-off-by: Max Reitz <mreitz@redhat.com>\nReviewed-by: Eric Blake <eblake@redhat.com>\nReviewed-by: Kevin Wolf <kwolf@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/328cae10d8e393ff9839464c71299d033c44a0d7"},{"sha":"53b3428e3af66c08bb0becd5e9dc25af8e60dc46","author":{"email":"6779b6f8ab957befe3afd965a2c13eebbdd5a946@redhat.com","name":"Max Reitz"},"message":"blockdev: read-only-mode for blockdev-change-medium\n\nAdd an option to qmp_blockdev_change_medium() which allows changing the\nread-only status of the block device whose medium is changed.\n\nSome drives do not have a inherently fixed read-only status; for\ninstance, floppy disks can be set read-only or writable independently of\nthe drive. Some users may find it useful to be able to therefore change\nthe read-only status of a block device when changing the medium.\n\nSigned-off-by: Max Reitz <mreitz@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/53b3428e3af66c08bb0becd5e9dc25af8e60dc46"},{"sha":"23c5a3e1aaefd1d7b22e3971319ddaed7bb99de8","author":{"email":"6779b6f8ab957befe3afd965a2c13eebbdd5a946@redhat.com","name":"Max Reitz"},"message":"hmp: Add read-only-mode option to change command\n\nExpose the new read-only-mode option of 'blockdev-change-medium' for the\n'change' HMP command.\n\nSigned-off-by: Max Reitz <mreitz@redhat.com>\nReviewed-by: Kevin Wolf <kwolf@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/23c5a3e1aaefd1d7b22e3971319ddaed7bb99de8"},{"sha":"69c1585105afd760f4a4e216873e675cc0cdf98b","author":{"email":"6779b6f8ab957befe3afd965a2c13eebbdd5a946@redhat.com","name":"Max Reitz"},"message":"iotests: Add test for change-related QMP commands\n\nSigned-off-by: Max Reitz <mreitz@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/69c1585105afd760f4a4e216873e675cc0cdf98b"},{"sha":"b0a1e3d7e0fff2f7c6bb0aae5ce4adf0773abc02","author":{"email":"e9db499e13ac90573163837d2fb1fc9f85402d6d@igalia.com","name":"Alberto Garcia"},"message":"block: check for existing device IDs in external_snapshot_prepare()\n\nThe 'snapshot-node-name' parameter of blockdev-snapshot-sync allows\nsetting the node name of the image that is going to be created.\n\nBefore creating the image, external_snapshot_prepare() checks that the\nname is not already being used. The check is however incomplete since\nit only considers existing node names, but node names must not clash\nwith device IDs either because they share the same namespace.\n\nIf the user attempts to create a snapshot using the name of an\nexisting device for the 'snapshot-node-name' parameter the operation\nwill eventually fail, but only after the new image has been created.\n\nThis patch replaces bdrv_find_node() with bdrv_lookup_bs() to extend\nthe check to existing device IDs, and thus detect possible name\nclashes before the new image is created.\n\nSigned-off-by: Alberto Garcia <berto@igalia.com>\nReviewed-by: Max Reitz <mreitz@redhat.com>\nReviewed-by: Jeff Cody <jcody@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/b0a1e3d7e0fff2f7c6bb0aae5ce4adf0773abc02"},{"sha":"860e95b51b1c1289474d3c7a693e6bb224654489","author":{"email":"e9db499e13ac90573163837d2fb1fc9f85402d6d@igalia.com","name":"Alberto Garcia"},"message":"block: rename BlockdevSnapshot to BlockdevSnapshotSync\n\nWe will introduce the 'blockdev-snapshot' command that will require\nits own struct for the parameters, so we need to rename this one in\norder to avoid name clashes.\n\nSigned-off-by: Alberto Garcia <berto@igalia.com>\nReviewed-by: Eric Blake <eblake@redhat.com>\nReviewed-by: Max Reitz <mreitz@redhat.com>\nReviewed-by: Kevin Wolf <kwolf@redhat.com>\nReviewed-by: Jeff Cody <jcody@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/860e95b51b1c1289474d3c7a693e6bb224654489"},{"sha":"e82bb3ec44f23c4295ad82fece73554d2dfddf79","author":{"email":"e9db499e13ac90573163837d2fb1fc9f85402d6d@igalia.com","name":"Alberto Garcia"},"message":"block: support passing 'backing': '' to 'blockdev-add'\n\nPassing an empty string allows opening an image but not its backing\nfile. This was already described in the API documentation, only the\nimplementation was missing.\n\nThis is useful for creating snapshots using images opened with\nblockdev-add, since they are not supposed to have a backing image\nbefore the operation.\n\nSigned-off-by: Alberto Garcia <berto@igalia.com>\nReviewed-by: Max Reitz <mreitz@redhat.com>\nReviewed-by: Eric Blake <eblake@redhat.com>\nReviewed-by: Kevin Wolf <kwolf@redhat.com>\nReviewed-by: Jeff Cody <jcody@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/e82bb3ec44f23c4295ad82fece73554d2dfddf79"},{"sha":"751cefedf777df50db8a303b3325aeb622264ec9","author":{"email":"e9db499e13ac90573163837d2fb1fc9f85402d6d@igalia.com","name":"Alberto Garcia"},"message":"block: add a 'blockdev-snapshot' QMP command\n\nOne of the limitations of the 'blockdev-snapshot-sync' command is that\nit does not allow passing BlockdevOptions to the newly created\nsnapshots, so they are always opened using the default values.\n\nExtending the command to allow passing options is not a practical\nsolution because there is overlap between those options and some of\nthe existing parameters of the command.\n\nThis patch introduces a new 'blockdev-snapshot' command with a simpler\ninterface: it just takes two references to existing block devices that\nwill be used as the source and target for the snapshot.\n\nSince the main difference between the two commands is that one of them\ncreates and opens the target image, while the other uses an already\nopened one, the bulk of the implementation is shared.\n\nSigned-off-by: Alberto Garcia <berto@igalia.com>\nReviewed-by: Max Reitz <mreitz@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":true,"url":"https://api.github.com/repos/stefanha/qemu/commits/751cefedf777df50db8a303b3325aeb622264ec9"}]}