{"push_id":2736032423,"size":118,"distinct_size":20,"ref":"refs/heads/qgraph-v2","head":"c4222d319265e2bb62b5f2975dc1c858549b77a8","before":"9f12d1df48c299de4521bd12752a76c800123684","commits":[{"sha":"17f4566657df51c5e0cb40f30491e058d74d63c8","author":{"name":"Claudio Imbrenda","email":"51c65f9c70a73b9f6da44049ef9ec4899f0ac031@linux.vnet.ibm.com"},"message":"s390x/storage attributes: fix CMMA_BLOCK_SIZE usage\n\nThe macro CMMA_BLOCK_SIZE was defined but not used, and a hardcoded\nvalue was instead used in the code.\n\nThis patch fixes the value of CMMA_BLOCK_SIZE and uses it in the\nappropriate place in the code, and fixes another case of hardcoded\nvalue in the KVM backend, replacing it with the more appropriate\nconstant KVM_S390_CMMA_SIZE_MAX.\n\nSigned-off-by: Claudio Imbrenda <imbrenda@linux.vnet.ibm.com>\nMessage-Id: <1530787170-3101-1-git-send-email-imbrenda@linux.vnet.ibm.com>\nSigned-off-by: Cornelia Huck <cohuck@redhat.com>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/17f4566657df51c5e0cb40f30491e058d74d63c8"},{"sha":"78dcf512efe72e211e6ca7783069364b01a1c05b","author":{"name":"Philippe Mathieu-Daudé","email":"0a10dd014d87a5dcb12e2a00f76fe3469345692a@amsat.org"},"message":"error: Remove NULL checks on error_propagate() calls\n\nPatch created mechanically by rerunning:\n\n  $  spatch --sp-file scripts/coccinelle/error_propagate_null.cocci \\\n            --macro-file scripts/cocci-macro-file.h \\\n            --dir . --in-place\n\nSigned-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>\nReviewed-by: Markus Armbruster <armbru@redhat.com>\nReviewed-by: David Hildenbrand <david@redhat.com>\nAcked-by: Michael S. Tsirkin <mst@redhat.com>\nMessage-Id: <20180705155811.20366-3-f4bug@amsat.org>\nSigned-off-by: Cornelia Huck <cohuck@redhat.com>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/78dcf512efe72e211e6ca7783069364b01a1c05b"},{"sha":"42eab8dbec2f3fd4a14bd63ab01aa155ce5724a3","author":{"name":"Marc-André Lureau","email":"a6f2b960a4aca61381fc650a67901b2ac8e83e6d@redhat.com"},"message":"monitor: fix double-free of request error\n\nqmp_error_response() will free the given error. Fix double-free in\nlater qmp_request_free().\n\nSigned-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>\nMessage-Id: <20180705164201.9853-1-marcandre.lureau@redhat.com>\nReviewed-by: Markus Armbruster <armbru@redhat.com>\nFixes: 1cc37471525d03f963bc71d724f0dc9eab888fc1\nSigned-off-by: Markus Armbruster <armbru@redhat.com>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/42eab8dbec2f3fd4a14bd63ab01aa155ce5724a3"},{"sha":"26c0ae56386edacc8b0da40264748f59afedb1bb","author":{"name":"Cédric Le Goater","email":"2d8cace2254d4e43578d21933db015d84bcc468a@kaod.org"},"message":"vfio/pci: do not set the PCIDevice 'has_rom' attribute\n\nPCI devices needing a ROM allocate an optional MemoryRegion with\npci_add_option_rom(). pci_del_option_rom() does the cleanup when the\ndevice is destroyed. The only action taken by this routine is to call\nvmstate_unregister_ram() which clears the id string of the optional\nROM RAMBlock and now, also flags the RAMBlock as non-migratable. This\nwas recently added by commit b895de502717 (\"migration: discard\nnon-migratable RAMBlocks\"), .\n\nVFIO devices do their own loading of the PCI option ROM in\nvfio_pci_size_rom(). The memory region is switched to an I/O region\nand the PCI attribute 'has_rom' is set but the RAMBlock of the ROM\nregion is not allocated. When the associated PCI device is deleted,\npci_del_option_rom() calls vmstate_unregister_ram() which tries to\nflag a NULL RAMBlock, leading to a SEGV.\n\nIt seems that 'has_rom' was set to have memory_region_destroy()\ncalled, but since commit 469b046ead06 (\"memory: remove\nmemory_region_destroy\") this is not necessary anymore as the\nMemoryRegion is freed automagically.\n\nRemove the PCIDevice 'has_rom' attribute setting in vfio.\n\nFixes: b895de502717 (\"migration: discard non-migratable RAMBlocks\")\nSigned-off-by: Cédric Le Goater <clg@kaod.org>\nReviewed-by: Michael S. Tsirkin <mst@redhat.com>\nSigned-off-by: Alex Williamson <alex.williamson@redhat.com>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/26c0ae56386edacc8b0da40264748f59afedb1bb"},{"sha":"7411faed38a146a4331620747e278a9f55dbfbef","author":{"name":"Peter Maydell","email":"313afa09ce093b19ae1dd74f57c1ebd94508584c@linaro.org"},"message":"Merge remote-tracking branch 'remotes/armbru/tags/pull-monitor-2018-07-11' into staging\n\nMonitor patches for 2018-07-11\n\n# gpg: Signature made Wed 11 Jul 2018 20:12:31 BST\n# gpg:                using RSA key 3870B400EB918653\n# gpg: Good signature from \"Markus Armbruster <armbru@redhat.com>\"\n# gpg:                 aka \"Markus Armbruster <armbru@pond.sub.org>\"\n# Primary key fingerprint: 354B C8B3 D7EB 2A6B 6867  4E5F 3870 B400 EB91 8653\n\n* remotes/armbru/tags/pull-monitor-2018-07-11:\n  monitor: fix double-free of request error\n\nSigned-off-by: Peter Maydell <peter.maydell@linaro.org>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/7411faed38a146a4331620747e278a9f55dbfbef"},{"sha":"87130a0d43158f046873a7de7e1df45c45d6c8a8","author":{"name":"Peter Maydell","email":"313afa09ce093b19ae1dd74f57c1ebd94508584c@linaro.org"},"message":"Merge remote-tracking branch 'remotes/awilliam/tags/vfio-fixes-20180711.1' into staging\n\nVFIO fixes 2018-07-11\n\n - Avoid RAMBlock segfault in option ROM teardown for vfio-pci devices\n   (Cédric Le Goater)\n\n# gpg: Signature made Wed 11 Jul 2018 20:44:44 BST\n# gpg:                using RSA key 239B9B6E3BB08B22\n# gpg: Good signature from \"Alex Williamson <alex.williamson@redhat.com>\"\n# gpg:                 aka \"Alex Williamson <alex@shazbot.org>\"\n# gpg:                 aka \"Alex Williamson <alwillia@redhat.com>\"\n# gpg:                 aka \"Alex Williamson <alex.l.williamson@gmail.com>\"\n# Primary key fingerprint: 42F6 C04E 540B D1A9 9E7B  8A90 239B 9B6E 3BB0 8B22\n\n* remotes/awilliam/tags/vfio-fixes-20180711.1:\n  vfio/pci: do not set the PCIDevice 'has_rom' attribute\n\nSigned-off-by: Peter Maydell <peter.maydell@linaro.org>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/87130a0d43158f046873a7de7e1df45c45d6c8a8"},{"sha":"ff82d3c73ec20d6f40e8bbfafe8ed5110bba5049","author":{"name":"Peter Maydell","email":"313afa09ce093b19ae1dd74f57c1ebd94508584c@linaro.org"},"message":"Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20180712' into staging\n\n- fix confusion around sizes in storage attribute migration\n- remove NULL check on error_propagate() in virtio-ccw\n\n# gpg: Signature made Thu 12 Jul 2018 10:27:28 BST\n# gpg:                using RSA key DECF6B93C6F02FAF\n# gpg: Good signature from \"Cornelia Huck <conny@cornelia-huck.de>\"\n# gpg:                 aka \"Cornelia Huck <huckc@linux.vnet.ibm.com>\"\n# gpg:                 aka \"Cornelia Huck <cornelia.huck@de.ibm.com>\"\n# gpg:                 aka \"Cornelia Huck <cohuck@kernel.org>\"\n# gpg:                 aka \"Cornelia Huck <cohuck@redhat.com>\"\n# Primary key fingerprint: C3D0 D66D C362 4FF6 A8C0  18CE DECF 6B93 C6F0 2FAF\n\n* remotes/cohuck/tags/s390x-20180712:\n  error: Remove NULL checks on error_propagate() calls\n  s390x/storage attributes: fix CMMA_BLOCK_SIZE usage\n\nSigned-off-by: Peter Maydell <peter.maydell@linaro.org>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/ff82d3c73ec20d6f40e8bbfafe8ed5110bba5049"},{"sha":"056de1e894155fbb99e7b43c1c4382d4920cf437","author":{"name":"Marc-André Lureau","email":"a6f2b960a4aca61381fc650a67901b2ac8e83e6d@redhat.com"},"message":"seccomp: allow sched_setscheduler() with SCHED_IDLE policy\n\nCurrent and upcoming mesa releases rely on a shader disk cash. It uses\na thread job queue with low priority, set with\nsched_setscheduler(SCHED_IDLE). However, that syscall is rejected by\nthe \"resourcecontrol\" seccomp qemu filter.\n\nSince it should be safe to allow lowering thread priority, let's allow\nscheduling thread to idle policy.\n\nRelated to:\nhttps://bugzilla.redhat.com/show_bug.cgi?id=1594456\n\nSigned-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>\nAcked-by: Eduardo Otubo <otubo@redhat.com>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/056de1e894155fbb99e7b43c1c4382d4920cf437"},{"sha":"7fdf16e1148a6133c5dee38140d75b0c9b96fa00","author":{"name":"Peter Maydell","email":"313afa09ce093b19ae1dd74f57c1ebd94508584c@linaro.org"},"message":"Merge remote-tracking branch 'remotes/otubo/tags/pull-seccomp-20180712' into staging\n\npull-seccomp-20180712\n\n# gpg: Signature made Thu 12 Jul 2018 13:55:34 BST\n# gpg:                using RSA key DF32E7C0F0FFF9A2\n# gpg: Good signature from \"Eduardo Otubo (Senior Software Engineer) <otubo@redhat.com>\"\n# Primary key fingerprint: D67E 1B50 9374 86B4 0723  DBAB DF32 E7C0 F0FF F9A2\n\n* remotes/otubo/tags/pull-seccomp-20180712:\n  seccomp: allow sched_setscheduler() with SCHED_IDLE policy\n\nSigned-off-by: Peter Maydell <peter.maydell@linaro.org>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/7fdf16e1148a6133c5dee38140d75b0c9b96fa00"},{"sha":"dc3c89d612252fc461a65f54885a1fe108e9ec05","author":{"name":"John Arbuckle","email":"7bcd33b9cf1253cd25a04b0c2f11e2233ec0ddbd@gmail.com"},"message":"ui/cocoa.m: replace scrollingDeltaY with deltaY\n\nThe NSEvent class method scrollingDeltaY is available\nfor Mac OS 10.7 and newer. Since QEMU supports Mac OS\n10.5 and up, we need to be using a method that is\navailable on these version of Mac OS X. The deltaY\nmethod is a method that does almost the same thing as\nscrollingDeltaY and is available on Mac OS 10.5 and\nup. So we can replace scrollingDeltaY with deltaY.\n\nWe only check deltaY's value if it is not zero\nbecause zero means that the scrolling increment was\nsufficiently fine that it was only reported in scrollingDeltaY,\nor that the scrolling was horizontal.\n\nSigned-off-by: John Arbuckle <programmingkidx@gmail.com>\nMessage-id: 20180709150235.7573-1-programmingkidx@gmail.com\nReviewed-by: Peter Maydell <peter.maydell@linaro.org>\n[PMM: tweak commit message and comment a little]\nSigned-off-by: Peter Maydell <peter.maydell@linaro.org>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/dc3c89d612252fc461a65f54885a1fe108e9ec05"},{"sha":"0e1a582750269d3dde0481ca034b08a5784e430c","author":{"name":"Fam Zheng","email":"df9fd617995bad07eac70e27aa3fe5069270e3bd@redhat.com"},"message":"iotests: 153: Fix dead code\n\nThis step was left behind my mistake. As suggested by the echoed text,\nthe intention was to test two devices with the same image, with\ndifferent options. The behavior should be the same as two QEMU\nprocesses. Complete it.\n\nSigned-off-by: Fam Zheng <famz@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/0e1a582750269d3dde0481ca034b08a5784e430c"},{"sha":"2f9d4083f7fdafe82138e983a24ef30b81b029d7","author":{"name":"Fam Zheng","email":"df9fd617995bad07eac70e27aa3fe5069270e3bd@redhat.com"},"message":"iotests: nbd: Stop qemu-nbd before remaking image\n\n197 is one example where _make_test_img is used twice without stopping\nthe NBD server in between. An error will occur like this:\n\n    @@ -26,9 +26,13 @@\n\n     === Partial final cluster ===\n\n    +qemu-img: TEST_DIR/t.IMGFMT: Failed to get \"resize\" lock\n    +Is another process using the image?\n     Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=1024\n    +Failed to find an available port: Address already in use\n     read 1024/1024 bytes at offset 0\n\nPatch _make_test_img to stop the old qemu-nbd before starting a new one,\nwhich fixes this problem, and similarly 215.\n\nSigned-off-by: Fam Zheng <famz@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/2f9d4083f7fdafe82138e983a24ef30b81b029d7"},{"sha":"eb461485f4558e362fab905735b50987505bca44","author":{"name":"Fam Zheng","email":"df9fd617995bad07eac70e27aa3fe5069270e3bd@redhat.com"},"message":"qemu-img: Document copy offloading implications with -S and -c\n\nExplicitly enabling zero detection or compression suppresses copy\noffloading during convert. Document it.\n\nSuggested-by: Kevin Wolf <kwolf@redhat.com>\nSigned-off-by: Fam Zheng <famz@redhat.com>\nReviewed-by: Stefan Hajnoczi <stefanha@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/eb461485f4558e362fab905735b50987505bca44"},{"sha":"230ff73904e72dde2d7718c2da407786a1c72e57","author":{"name":"John Snow","email":"624c376396b1be97fa9f2557aab38fb7d8603d8b@redhat.com"},"message":"file-posix: specify expected filetypes\n\nAdjust each caller of raw_open_common to specify if they are expecting\nhost and character devices or not. Tighten expectations of file types upon\nopen in the common code and refuse types that are not expected.\n\nThis has two effects:\n\n(1) Character and block devices are now considered deprecated for the\n    'file' driver, which expects only S_IFREG, and\n(2) no file-posix driver (file, host_cdrom, or host_device) can open\n    directories now.\n\nI don't think there's a legitimate reason to open directories as if\nthey were files. This prevents QEMU from opening and attempting to probe\na directory inode, which can break in exciting ways. One of those ways\nis lseek on ext4/xfs, which will return 0x7fffffffffffffff as the file\nsize instead of EISDIR. This can coax QEMU into responding with a\nconfusing \"file too big\" instead of \"Hey, that's not a file\".\n\nSee: https://bugs.launchpad.net/qemu/+bug/1739304/\nSigned-off-by: John Snow <jsnow@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/230ff73904e72dde2d7718c2da407786a1c72e57"},{"sha":"2d4cb49ddaa219ed3f5a985ecf8b188aeb2b3d6b","author":{"name":"John Snow","email":"624c376396b1be97fa9f2557aab38fb7d8603d8b@redhat.com"},"message":"iotests: add test 226 for file driver types\n\nTest that we're rejecting what we ought to for file,\nhost_driver and host_cdrom drivers. Test that we're\nseeing the deprecated message for block and chardevs\non the file driver.\n\nSigned-off-by: John Snow <jsnow@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/2d4cb49ddaa219ed3f5a985ecf8b188aeb2b3d6b"},{"sha":"740842c9656cd5dbc9ccf2ea0c3a74f0ba35144a","author":{"name":"Daniel Henrique Barboza","email":"627b089ad62deae9aaf06ccfa2c9056df28927e0@gmail.com"},"message":"scsi-disk: Block Device Characteristics emulation fix\n\nThe current BDC VPD page (page 0xb1) is too short. This can be\nseen running sg_utils:\n\n$ sg_vpd --page=bdc /dev/sda\nBlock device characteristics VPD page (SBC):\nBlock device characteristics VPD page length too short=8\n\nBy the SCSI spec, the expected size of the SBC page is 0x40.\nThere is no telling how the guest will behave with a shorter\nmessage - it can ignore it, or worse, make (wrong)\nassumptions.\n\nThis patch fixes the emulation by setting the size to 0x40.\nThis is the output of the previous sg_vpd command after\napplying it:\n\n$ sg_vpd --page=bdc /dev/sda -v\n    inquiry cdb: 12 01 b1 00 fc 00\nBlock device characteristics VPD page (SBC):\n   [PQual=0  Peripheral device type: disk]\n  Medium rotation rate is not reported\n  Product type: Not specified\n  WABEREQ=0\n  WACEREQ=0\n  Nominal form factor not reported\n  FUAB=0\n  VBULS=0\n\nTo improve readability, this patch also adds the VBULS value\nexplictly and add comments on the existing fields we're\nsetting.\n\nSigned-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>\nAcked-by: Paolo Bonzini <pbonzini@redhat.com>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/740842c9656cd5dbc9ccf2ea0c3a74f0ba35144a"},{"sha":"8dcd3c9b91a300c86e315d7e5427dce1383f7387","author":{"name":"Peter Lieven","email":"f437cb078acc7c6d79873462334a355eddeb9459@kamp.de"},"message":"qemu-img: align result of is_allocated_sectors\n\nWe currently don't enforce that the sparse segments we detect during convert are\naligned. This leads to unnecessary and costly read-modify-write cycles either\ninternally in Qemu or in the background on the storage device as nearly all\nmodern filesystems or hardware have a 4k alignment internally.\n\nThis patch modifies is_allocated_sectors so that its *pnum result will always\nend at an alignment boundary. This way all requests will end at an alignment\nboundary. The start of all requests will also be aligned as long as the results\nof get_block_status do not lead to an unaligned offset.\n\nThe number of RMW cycles when converting an example image [1] to a raw device that\nhas 4k sector size is about 4600 4k read requests to perform a total of about 15000\nwrite requests. With this path the additional 4600 read requests are eliminated while\nthe number of total write requests stays constant.\n\n[1] https://cloud-images.ubuntu.com/releases/16.04/release/ubuntu-16.04-server-cloudimg-amd64-disk1.vmdk\n\nSigned-off-by: Peter Lieven <pl@kamp.de>\nSigned-off-by: Kevin Wolf <kwolf@redhat.com>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/8dcd3c9b91a300c86e315d7e5427dce1383f7387"},{"sha":"68f1b569dccdf1bf2935d4175fffe84dae6997fc","author":{"name":"Peter Maydell","email":"313afa09ce093b19ae1dd74f57c1ebd94508584c@linaro.org"},"message":"Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging\n\nBlock layer patches:\n\n- file-posix: Check correct file type (regular file for 'file',\n  character or block device for 'host_device'/'host_cdrom')\n- scsi-disk: Block Device Characteristics emulation fix\n- qemu-img: Consider required alignment for sparse area detection\n- Documentation and test improvements\n\n# gpg: Signature made Thu 12 Jul 2018 17:29:17 BST\n# gpg:                using RSA key 7F09B272C88F2FD6\n# gpg: Good signature from \"Kevin Wolf <kwolf@redhat.com>\"\n# Primary key fingerprint: DC3D EB15 9A9A F95D 3D74  56FE 7F09 B272 C88F 2FD6\n\n* remotes/kevin/tags/for-upstream:\n  qemu-img: align result of is_allocated_sectors\n  scsi-disk: Block Device Characteristics emulation fix\n  iotests: add test 226 for file driver types\n  file-posix: specify expected filetypes\n  qemu-img: Document copy offloading implications with -S and -c\n  iotests: nbd: Stop qemu-nbd before remaking image\n  iotests: 153: Fix dead code\n\nSigned-off-by: Peter Maydell <peter.maydell@linaro.org>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/68f1b569dccdf1bf2935d4175fffe84dae6997fc"},{"sha":"9277d81f5c2c6f4d0b5e47c8476eb7ee7e5c0beb","author":{"name":"Ville Skyttä","email":"638ed3ebd6f6b819eabe749cf729971e391a622c@iki.fi"},"message":"docs: Grammar and spelling fixes\n\nSigned-off-by: Ville Skyttä <ville.skytta@iki.fi>\nReviewed-by: Peter Maydell <peter.maydell@linaro.org>\nReviewed-by: Eric Blake <eblake@redhat.com>\nMessage-id: 20180612065150.21110-1-ville.skytta@iki.fi\nSigned-off-by: Peter Maydell <peter.maydell@linaro.org>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/9277d81f5c2c6f4d0b5e47c8476eb7ee7e5c0beb"},{"sha":"4a5457616d5b3116a8ae76748f9c493a4b9e07f0","author":{"name":"Shivaprasad G Bhat","email":"90f736271cc61454bf7410f17f3d154578105aa0@linux.vnet.ibm.com"},"message":"linux-user: ppc64: use the correct values for F_*LK64s\n\nQemu includes the glibc headers for the host defines and target headers are\npart of the qemu source themselves. The glibc has the F_GETLK64, F_SETLK64\nand F_SETLKW64 defined to 12, 13 and 14 for all archs in\nsysdeps/unix/sysv/linux/bits/fcntl-linux.h. The linux kernel generic\ndefinition for F_*LK is 5, 6 & 7 and F_*LK64* is 12,13, and 14 as seen in\ninclude/uapi/asm-generic/fcntl.h. On 64bit machine, by default the kernel\nassumes all F_*LK to 64bit calls and doesnt support use of F_*LK64* as\ncan be seen in include/linux/fcntl.h in linux source.\n\nOn x86_64 host, the values for F_*LK64* are set to 5, 6 and 7\nexplicitly in /usr/include/x86_64-linux-gnu/bits/fcntl.h by the glibc.\nWhereas, a PPC64 host doesn't have such a definition in\n/usr/include/powerpc64le-linux-gnu/bits/fcntl.h by the glibc. So,\nthe sources on PPC64 host sees the default value of F_*LK64*\nas 12, 13 & 14(fcntl-linux.h).\n\nSince the 64bit kernel doesnt support 12, 13 & 14; the glibc fcntl syscall\nimplementation(__libc_fcntl*(), __fcntl64_nocancel) does the F_*LK64* value\nconvertion back to F_*LK* values on PPC64 as seen in\nsysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h with FCNTL_ADJUST_CMD()\nmacro. Whereas on x86_64 host the values for F_*LK64* are set to 5, 6 and 7\nand no adjustments are needed.\n\nSince qemu doesnt use the glibc fcntl, but makes the safe_syscall* on its\nown, the PPC64 qemu is calling the syscall with 12, 13, and 14(without\nadjustment) and they all fail. The fcntl calls to F_GETLK/F_SETLK|W all\nfail by all pplications run on PPC64 host user emulation.\n\nThe fix here could be to see why on PPC64 the glibc is still keeping\nF_*LK64* different from F_*LK and why adjusting them to 5, 6 and 7 before\nthe syscall for PPC only. See if we can make the\n/usr/include/powerpc64le-linux-gnu/bits/fcntl.h to have the values\n5, 6 & 7 just like x86_64 and remove the adjustment code in glibc. That\nway, qemu sources see the kernel supported values in glibc headers.\n\nOR\n\nOn PPC64 host, qemu sources see both F_*LK & F_*LK64* as same and set to\n12, 13 and 14 because __USE_FILE_OFFSET64 is defined in qemu\nsources(also refer sysdeps/unix/sysv/linux/bits/fcntl-linux.h).\nDo the value adjustment just like it is done by glibc source by using\nF_GETLK value of 5. That way, we make the syscalls with the actual\nsupported values in Qemu. The patch is taking this approach.\n\nSigned-off-by: Shivaprasad G Bhat <sbhat@linux.vnet.ibm.com>\nReviewed-by: David Gibson <david@gibson.dropbear.id.au>\nReviewed-by: Laurent Vivier <laurent@vivier.eu>\nMessage-Id: <153148521235.87746.14142430397318741182.stgit@lep8c.aus.stglabs.ibm.com>\nSigned-off-by: Laurent Vivier <laurent@vivier.eu>","distinct":false,"url":"https://api.github.com/repos/esposem/qemu/commits/4a5457616d5b3116a8ae76748f9c493a4b9e07f0"}]}
{"actor":{"display_login":"esposem"}}