{"push_id":655939028,"size":182,"distinct_size":182,"ref":"refs/heads/xilinx/master","head":"8ed0f7e31e5575ed3fe6cbcb5d26b324c002fbee","before":"2d6084130bfc05f4ca461f494692308389afa490","commits":[{"sha":"7057feebe117c64708aab054c5055e7a93341a0b","author":{"email":"cb880bd9232cc23a76ddb35f95d96ed0ad981f23@citrix.com","name":"Andrew Cooper"},"message":"tools/libxl: Introduce min and max macros\n\nThis is the same set used by libxc.\n\nSigned-off-by: Andrew Cooper <andrew.cooper3@citrix.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>\nCC: Ian Campbell <Ian.Campbell@citrix.com>\nCC: Ian Jackson <Ian.Jackson@eu.citrix.com>\nCC: Wei Liu <wei.liu2@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/7057feebe117c64708aab054c5055e7a93341a0b"},{"sha":"42ad92e656192a214888a9bd07125ded8b66bbc4","author":{"email":"59c7438a9275f5dd0b96a91958b493a9d005ad46@cn.fujitsu.com","name":"Wen Congyang"},"message":"tools/libxl: Update datacopier to support sending data only\n\nCurrently, starting a datacopier requires a valid read and write fd, but this\nis a problem when purely sending data from a local buffer to a writable fd.\n\nThe prefixdata mechanism already exists and works for inserting data from a\nlocal buffer ahead of reading from the read fd.\n\nMake the lack of a read fd non-fatal.  A datacopier with no read fd, but some\nprefixdata will write the prefixdata to the write fd and complete successfully.\n\nSigned-off-by: Wen Congyang <wency@cn.fujitsu.com>\n[Rewrite commit message]\nSigned-off-by: Andrew Cooper <andrew.cooper3@citrix.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>\nCC: Ian Campbell <Ian.Campbell@citrix.com>\nCC: Ian Jackson <Ian.Jackson@eu.citrix.com>\nCC: Wei Liu <wei.liu2@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/42ad92e656192a214888a9bd07125ded8b66bbc4"},{"sha":"8aaeef92c98e8c131b76e996dda7a456402c8a5a","author":{"email":"d769abb2ab51a4b3c6d56e5ec4ccdd860b82f07a@citrix.com","name":"Ross Lagerwall"},"message":"tools/libxl: Avoid overrunning static buffer with prefixdata\n\nAn individual datacopier_buf contains a static buffer of 1000 bytes.\nAttempting to add prefixdata of more than 1000 bytes would overrun the buffer\nand cause heap corruption.\n\nInstead, split the prefixdata and chain together multiple datacopier buffers.\nThis allows for an arbitrary quantity of prefixdata to be added to a\ndatacopier.\n\nSigned-off-by: Ross Lagerwall <ross.lagerwall@citrix.com>\nSigned-off-by: Andrew Cooper <andrew.cooper3@citrix.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>\nCC: Ian Campbell <Ian.Campbell@citrix.com>\nCC: Ian Jackson <Ian.Jackson@eu.citrix.com>\nCC: Wei Liu <wei.liu2@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/8aaeef92c98e8c131b76e996dda7a456402c8a5a"},{"sha":"c9f8db9b1653400d0d11f56bed750e210e8f2360","author":{"email":"d769abb2ab51a4b3c6d56e5ec4ccdd860b82f07a@citrix.com","name":"Ross Lagerwall"},"message":"tools/libxl: Allow limiting amount copied by datacopier\n\nCurrently, a datacopier will unconditionally read until EOF on its read fd.\n\nFor migration v2, libxl needs to read records of a specific length out of the\nmigration stream, without reading any further data.\n\nIntroduce a parameter, bytes_to_read, which may be used to stop the datacopier\nahead of reaching EOF. If bytes_to_read is set to -1, then the datacopier will\nread until EOF.\n\nSigned-off-by: Ross Lagerwall <ross.lagerwall@citrix.com>\n[Rewrite commit message]\nSigned-off-by: Andrew Cooper <andrew.cooper3@citrix.com>\nCC: Ian Campbell <Ian.Campbell@citrix.com>\nCC: Ian Jackson <Ian.Jackson@eu.citrix.com>\nCC: Wei Liu <wei.liu2@citrix.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/c9f8db9b1653400d0d11f56bed750e210e8f2360"},{"sha":"6d896e1357ff89d4e3f85e2ccba377eda302063d","author":{"email":"d769abb2ab51a4b3c6d56e5ec4ccdd860b82f07a@citrix.com","name":"Ross Lagerwall"},"message":"tools/libxl: Extend datacopier to support reading into a buffer\n\nCurrently a datacopier may source its data from an fd or local buffer, but its\ndestination must be an fd.  For migration v2, libxl needs to read from the\nmigration stream into a local buffer.\n\nImplement a \"read into local buffer\" mode, invoked when readbuf is set and\nwritefd is -1.  On success, the callback passes the number of bytes read.\n\nSigned-off-by: Ross Lagerwall <ross.lagerwall@citrix.com>\n[Rewrite commit message]\nSigned-off-by: Andrew Cooper <andrew.cooper3@citrix.com>\nCC: Ian Campbell <Ian.Campbell@citrix.com>\nCC: Ian Jackson <Ian.Jackson@eu.citrix.com>\nCC: Wei Liu <wei.liu2@citrix.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/6d896e1357ff89d4e3f85e2ccba377eda302063d"},{"sha":"7e9ec50b0535bf2630da9d279a060775817d136d","author":{"email":"cb880bd9232cc23a76ddb35f95d96ed0ad981f23@citrix.com","name":"Andrew Cooper"},"message":"tools/libxl: Adjust datacopiers POLLHUP handling when the fd is also readable\n\nPOLLHUP|POLLIN is a valid revent to receive when there is readable data in a\npipe, but the writable fd has been closed.  This occurs in migration v2 when\nthe legacy conversion process (which transforms the data inline) completes and\nexits successfully.\n\nIn the case that there is data to read, suppress the POLLHUP.  POSIX states\nthat the hangup state is latched[1], which means it will reoccur on subsequent\npoll() calls.  The datacopier is thus provided the opportunity to read until\nEOF, if possible.\n\nA POLLHUP on its own is treated exactly as before, indicating a different\nerror with the fd.\n\n[1] http://pubs.opengroup.org/onlinepubs/9699919799/functions/poll.html\n\nSigned-off-by: Andrew Cooper <andrew.cooper3@citrix.com>\nCC: Ian Campbell <Ian.Campbell@citrix.com>\nCC: Ian Jackson <Ian.Jackson@eu.citrix.com>\nCC: Wei Liu <wei.liu2@citrix.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/7e9ec50b0535bf2630da9d279a060775817d136d"},{"sha":"28b3ca49b0f1fbe945342973fbdc8c5e56481213","author":{"email":"cbad32f56b9e77efd1382b4e6112410337d4a7cf@intel.com","name":"Quan Xu"},"message":"stubdom: fix vtpm build failure due to duplicated typedefs.\n\nTypedefs are duplicated in stubdom/vtpmmgr/tcg.h and supported compilers\ndo not cope with current staging branch.\n\nSigned-off-by: Olaf Hering <olaf@aepfle.de>\nSigned-off-by: Quan Xu <quan.xu@intel.com>\nTested-by: Olaf Hering <olaf@aepfle.de>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>\n[ ijc -- reworded subject line ]","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/28b3ca49b0f1fbe945342973fbdc8c5e56481213"},{"sha":"61e8e8079a4e984600713b492944d6427b9f77cf","author":{"email":"a5240e9e4c4d742e3a4232ca749f78defd45d722@citrix.com","name":"Wei Liu"},"message":"libxc: duplicate snippet to allocate p2m_host array\n\nCurrently all in tree code doesn't set the superpage flag, I would just\nremove superpage support if I can, but Konrad wants it retained for the\nmoment.\n\nAs I'm going to change the p2m_host array allocation, duplicate the code\nsnippet to allocate p2m_host array in this patch, so that we retain the\nbehaviour in superpage case.\n\nThis patch introduces no functional change and it will make future patch\neasier to review. Also removed one stray tab while I was there.\n\nSigned-off-by: Wei Liu <wei.liu2@citrix.com>\nReviewed-by: Konrad Wilk <konrad.wilk@oracle.com>\nCc: Ian Campbell <ian.campbell@citrix.com>\nCc: Ian Jackson <ian.jackson@eu.citrix.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/61e8e8079a4e984600713b492944d6427b9f77cf"},{"sha":"840837907c6186307c19abbec926852ba448facd","author":{"email":"a5240e9e4c4d742e3a4232ca749f78defd45d722@citrix.com","name":"Wei Liu"},"message":"libxc: add p2m_size to xc_dom_image\n\nAdd a new field p2m_size to keep track of the number of pages covered by\np2m.  Change total_pages to p2m_size in functions which in fact need\nthe size of p2m.\n\nThis is needed because we are going to ditch the assumption that PV x86\nhas only one contiguous ram region. Originally the p2m size was always\nequal to total_pages, but we will soon change that in later patch.\n\nThis patch doesn't change the behaviour of libxc.\n\nSigned-off-by: Wei Liu <wei.liu2@citrix.com>\nReviewed-by: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Ian Campbell <ian.campbell@citrix.com>\nCc: Ian Jackson <ian.jackson@eu.citrix.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/840837907c6186307c19abbec926852ba448facd"},{"sha":"ba59e2ce935de7bd6a0cbe36488ca99b3489cf17","author":{"email":"a5240e9e4c4d742e3a4232ca749f78defd45d722@citrix.com","name":"Wei Liu"},"message":"libxc: allocate memory with vNUMA information for PV guest\n\nFrom libxc's point of view, it only needs to know vnode to pnode mapping\nand size of each vnode to allocate memory accordingly. Add these fields\nto xc_dom structure.\n\nThe caller might not pass in vNUMA information. In that case, a dummy\nlayout is generated for the convenience of libxc's allocation code. The\nupper layer (libxl etc) still sees the domain has no vNUMA\nconfiguration.\n\nNote that for this patch on PV x86 guest can have multiple regions of\nram allocated.\n\nSigned-off-by: Wei Liu <wei.liu2@citrix.com>\nCc: Ian Campbell <ian.campbell@citrix.com>\nCc: Ian Jackson <ian.jackson@eu.citrix.com>\nCc: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Elena Ufimtseva <ufimtseva@gmail.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/ba59e2ce935de7bd6a0cbe36488ca99b3489cf17"},{"sha":"362dfbfae474242de022ccecb1a6f87052cd1f55","author":{"email":"a5240e9e4c4d742e3a4232ca749f78defd45d722@citrix.com","name":"Wei Liu"},"message":"libxl: introduce vNUMA types\n\nA domain can contain several virtual NUMA nodes, hence we introduce an\narray in libxl_domain_build_info.\n\nlibxl_vnode_info contains the size of memory in that node, the distance\nfrom that node to every nodes, the underlying pnode and a bitmap of\nvcpus.\n\nSigned-off-by: Wei Liu <wei.liu2@citrix.com>\nReviewed-by: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Ian Campbell <ian.campbell@citrix.com>\nCc: Ian Jackson <ian.jackson@eu.citrix.com>\nCc: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Elena Ufimtseva <ufimtseva@gmail.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/362dfbfae474242de022ccecb1a6f87052cd1f55"},{"sha":"3357e27b5914ef555676a699e9faeaab61328aa6","author":{"email":"a5240e9e4c4d742e3a4232ca749f78defd45d722@citrix.com","name":"Wei Liu"},"message":"libxl: add vmemrange to libxl__domain_build_state\n\nA vnode consists of one or more vmemranges (virtual memory range).  One\nexample of multiple vmemranges is that there is a hole in one vnode.\n\nCurrently we haven't exported vmemrange interface to libxl user.\nVmemranges are generated during domain build, so we have relevant\nstructures in domain build state.\n\nLater if we discover we need to export the interface, those structures\ncan be moved to libxl_domain_build_info as well.\n\nThese new fields (along with other fields in that struct) are set to 0\nat start of day so we don't need to explicitly initialise them. A\nfollowing patch which introduces an independent checking function will\nneed to access these fields. I don't feel very comfortable squashing\nthis change into that one so I didn't use a single commit.\n\nSigned-off-by: Wei Liu <wei.liu2@citrix.com>\nReviewed-by: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Ian Campbell <ian.campbell@citrix.com>\nCc: Ian Jackson <ian.jackson@eu.citrix.com>\nCc: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Elena Ufimtseva <ufimtseva@gmail.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/3357e27b5914ef555676a699e9faeaab61328aa6"},{"sha":"93493a0817221276614072110de36dd0e7cc0e5a","author":{"email":"a5240e9e4c4d742e3a4232ca749f78defd45d722@citrix.com","name":"Wei Liu"},"message":"libxl: introduce libxl__vnuma_config_check\n\nThis function is used to check whether vNUMA configuration (be it\nauto-generated or supplied by user) is valid.\n\nDefine a new error code ERROR_VNUMA_CONFIG_INVALID.\n\nThe checks performed can be found in the comment of the function.\n\nThis vNUMA function (and future ones) is placed in a new file called\nlibxl_vnuma.c\n\nSigned-off-by: Wei Liu <wei.liu2@citrix.com>\nReviewed-by: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Ian Campbell <ian.campbell@citrix.com>\nCc: Ian Jackson <ian.jackson@eu.citrix.com>\nCc: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Elena Ufimtseva <ufimtseva@gmail.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/93493a0817221276614072110de36dd0e7cc0e5a"},{"sha":"dabacf96aa9828df592ddd9968560fa149b47534","author":{"email":"a5240e9e4c4d742e3a4232ca749f78defd45d722@citrix.com","name":"Wei Liu"},"message":"libxl: x86: factor out e820_host_sanitize\n\nThis function gets the machine E820 map and sanitize it according to PV\nguest configuration.\n\nThis will be used in later patch. No functional change introduced in\nthis patch.\n\nSigned-off-by: Wei Liu <wei.liu2@citrix.com>\nReviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>\nReviewed-by: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Ian Campbell <ian.campbell@citrix.com>\nCc: Ian Jackson <ian.jackson@eu.citrix.com>\nCc: Elena Ufimtseva <ufimtseva@gmail.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/dabacf96aa9828df592ddd9968560fa149b47534"},{"sha":"6525cd308d5c457c49cdd72af20da9f1912e0e24","author":{"email":"a5240e9e4c4d742e3a4232ca749f78defd45d722@citrix.com","name":"Wei Liu"},"message":"libxl: functions to build vmemranges for PV guest\n\nIntroduce a arch-independent routine to generate one vmemrange per\nvnode. Also introduce arch-dependent routines for different\narchitectures because part of the process is arch-specific -- ARM has\nyet have NUMA support and E820 is x86 only.\n\nFor those x86 guests who care about machine E820 map (i.e. with\ne820_host=1), vnode is further split into several vmemranges to\naccommodate memory holes.  A few stubs for libxl_arm.c are created.\n\nSigned-off-by: Wei Liu <wei.liu2@citrix.com>\nReviewed-by: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Ian Campbell <ian.campbell@citrix.com>\nCc: Ian Jackson <ian.jackson@eu.citrix.com>\nCc: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Elena Ufimtseva <ufimtseva@gmail.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/6525cd308d5c457c49cdd72af20da9f1912e0e24"},{"sha":"9c7e96c92ddeeb0af613c76191f3bbbcaf2d342d","author":{"email":"a5240e9e4c4d742e3a4232ca749f78defd45d722@citrix.com","name":"Wei Liu"},"message":"libxl: build, check and pass vNUMA info to Xen for PV guest\n\nTransform the user supplied vNUMA configuration into libxl internal\nrepresentations, and finally libxc representations. Check validity of\nthe configuration along the line.\n\nSigned-off-by: Wei Liu <wei.liu2@citrix.com>\nReviewed-by: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Ian Campbell <ian.campbell@citrix.com>\nCc: Ian Jackson <ian.jackson@eu.citrix.com>\nCc: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Elena Ufimtseva <ufimtseva@gmail.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/9c7e96c92ddeeb0af613c76191f3bbbcaf2d342d"},{"sha":"b5099f1f2115fa9d24918df12657e806f4fefff0","author":{"email":"a5240e9e4c4d742e3a4232ca749f78defd45d722@citrix.com","name":"Wei Liu"},"message":"libxc: indentation change to xc_hvm_build_x86.c\n\nMove a while loop in xc_hvm_build_x86 one block to the right. No\nfunctional change introduced.\n\nFunctional changes will be introduced in next patch.\n\nSigned-off-by: Wei Liu <wei.liu2@citrix.com>\nCc: Ian Campbell <ian.campbell@citrix.com>\nCc: Ian Jackson <ian.jackson@eu.citrix.com>\nCc: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Elena Ufimtseva <ufimtseva@gmail.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/b5099f1f2115fa9d24918df12657e806f4fefff0"},{"sha":"50619a4734185da6740650c5affbfaf5785b792c","author":{"email":"a5240e9e4c4d742e3a4232ca749f78defd45d722@citrix.com","name":"Wei Liu"},"message":"libxc: allocate memory with vNUMA information for HVM guest\n\nThe algorithm is more or less the same as the one used for PV guest.\nLibxc gets hold of the mapping of vnode to pnode and size of each vnode\nthen allocate memory accordingly.\n\nAnd then the function returns low memory end, high memory end and mmio\nstart to caller. Libxl needs those values to construct vmemranges for\nthat guest.\n\nSigned-off-by: Wei Liu <wei.liu2@citrix.com>\nCc: Ian Campbell <ian.campbell@citrix.com>\nCc: Ian Jackson <ian.jackson@eu.citrix.com>\nCc: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Elena Ufimtseva <ufimtseva@gmail.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/50619a4734185da6740650c5affbfaf5785b792c"},{"sha":"9b93317af2da195c57ca5aafe10b4edbe282ba6f","author":{"email":"a5240e9e4c4d742e3a4232ca749f78defd45d722@citrix.com","name":"Wei Liu"},"message":"libxl: build, check and pass vNUMA info to Xen for HVM guest\n\nTransform user supplied vNUMA configuration into libxl internal\nrepresentations then libxc representations. Check validity along the\nline.\n\nLibxc has more involvement in building vmemranges in HVM case compared\nto PV case. The building of vmemranges is placed after xc_hvm_build\nreturns, because it relies on memory hole information provided by\nxc_hvm_build.\n\nSigned-off-by: Wei Liu <wei.liu2@citrix.com>\nReviewed-by: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Ian Campbell <ian.campbell@citrix.com>\nCc: Ian Jackson <ian.jackson@eu.citrix.com>\nCc: Dario Faggioli <dario.faggioli@citrix.com>\nCc: Elena Ufimtseva <ufimtseva@gmail.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/9b93317af2da195c57ca5aafe10b4edbe282ba6f"},{"sha":"a2b82221dc2c3f996250f9e465a3ce39cd4233c9","author":{"email":"a5240e9e4c4d742e3a4232ca749f78defd45d722@citrix.com","name":"Wei Liu"},"message":"libxl: disallow memory relocation when vNUMA is enabled\n\nDisallow memory relocation when vNUMA is enabled, because relocated\nmemory ends up off node. Further more, even if we dynamically expand\nnode coverage in hvmloader, low memory and high memory may reside\nin different physical nodes, blindly relocating low memory to high\nmemory gives us a sub-optimal configuration.\n\nIntroduce a function called libxl__vnuma_configured and use it.\n\nSigned-off-by: Wei Liu <wei.liu2@citrix.com>\nCc: Ian Campbell <ian.campbell@citrix.com>\nCc: Ian Jackson <ian.jackson@eu.citrix.com>\nCc: Konrad Wilk <konrad.wilk@oracle.com>\nAcked-by: Ian Campbell <ian.campbell@citrix.com>","distinct":true,"url":"https://api.github.com/repos/Xilinx/xen/commits/a2b82221dc2c3f996250f9e465a3ce39cd4233c9"}]}