From patchwork Tue Sep 15 17:12:08 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yonggang Luo X-Patchwork-Id: 11777407 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 9061159D for ; Tue, 15 Sep 2020 17:32:57 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 42FF0208E4 for ; Tue, 15 Sep 2020 17:32:57 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="e7B8uy0d" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 42FF0208E4 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:59790 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kIEp6-0008Qs-15 for patchwork-qemu-devel@patchwork.kernel.org; Tue, 15 Sep 2020 13:32:56 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:44268) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kIEWz-0008Og-2q; Tue, 15 Sep 2020 13:14:13 -0400 Received: from mail-pg1-x541.google.com ([2607:f8b0:4864:20::541]:36946) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kIEVj-0002cK-QC; Tue, 15 Sep 2020 13:12:57 -0400 Received: by mail-pg1-x541.google.com with SMTP id z17so2332586pgc.4; Tue, 15 Sep 2020 10:12:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=uq19f9xUw48l5aXNxxsd8+DiZHX2ja2v+vKEiZxAu2E=; b=e7B8uy0dw+crxqUF38VkbKKY9MA1ud690/+tOccJTABxcq6dmNOLjiDhod8nAT4IJ+ JXsRX7ePWaQJFe5qAg00nCdEvFQqTscHhSDDJ4werhFjhAmXTZfbnllXHL2vB/AfsjKr Xxr4XZ1zAJx3jMekBumjRZG+OzX5qc+eArJL/wfvtwtuw2J3J2zhZPScidi+2QRwKoBB DdGGgvCG1WTHmGdUERWDlFHgCI1+dSlIIlOdIeDLFHxMi3lWKlL7f2LVumJIIILPiVx9 IHK2v4PGwEwGuVqGrDd0FrFtSEanPmuV3nvUbmYVPVLYieSl0Jd+FRcZTsGlMcICpX/6 6HyA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=uq19f9xUw48l5aXNxxsd8+DiZHX2ja2v+vKEiZxAu2E=; b=Xh/2spXJktU/mfGnn6qx0vK8ZI5H3NPDiyQAYUAj8D6pZzE1zGKgTnmXNR1YGD/3wX MmVItF+umI+cBCBNf7CDQgPx+xwnOjhE8TEMVX9aL8O+Hhrha5h6f2K78MJsRENB5GL0 XtQF+lOlup6xv7j+mTzY9Tb+5JVsKNkUhA+c7TMUNZobq/zxEkqdDJ0/yIVqMky0ByxP y/nfxzAAMKAA+a8q7Pgjmh6haMbB8o1NMMz5l/4u7NcWT8KSStkL6i4Fu1IzgDn/kiBI vt+rjcGyJRJ4NC1qZTPHBlyeOqaO0jy3uBpHwOK7DNCCMEYnuQmS69o6Nvv1G7a3880t dyvg== X-Gm-Message-State: AOAM532KryW7aopx9uTzt7A/iXQs19ZsCEq1id+l3m/xJevB9wLi5pZu fQPRD3qtgSwhMTxi7Xu50h+pQAvuhjM5uVg2p98= X-Google-Smtp-Source: ABdhPJx9H5cSUYhwOKMTdt1zNwd08euPKS2Fsvbr9Fm9cPPguJN6XVUgZQckLkfkA4vo7xUWvDKmOQ== X-Received: by 2002:a65:6412:: with SMTP id a18mr15737240pgv.215.1600189973055; Tue, 15 Sep 2020 10:12:53 -0700 (PDT) Received: from localhost.localdomain ([103.94.185.75]) by smtp.googlemail.com with ESMTPSA id j14sm124046pjz.21.2020.09.15.10.12.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 15 Sep 2020 10:12:52 -0700 (PDT) From: Yonggang Luo To: qemu-devel@nongnu.org Subject: [PATCH v10 00/26] W32, W64 msys2/mingw patches Date: Wed, 16 Sep 2020 01:12:08 +0800 Message-Id: <20200915171234.236-1-luoyonggang@gmail.com> X-Mailer: git-send-email 2.28.0.windows.1 MIME-Version: 1.0 Received-SPF: pass client-ip=2607:f8b0:4864:20::541; envelope-from=luoyonggang@gmail.com; helo=mail-pg1-x541.google.com X-detected-operating-system: by eggs.gnu.org: No matching host in p0f cache. That's all we know. X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Kevin Wolf , Ed Maste , Michael Roth , qemu-block@nongnu.org, Stefan Weil , Xie Changlong , Richard Henderson , Markus Armbruster , Max Reitz , Yonggang Luo , Gerd Hoffmann , Wen Congyang , Paolo Bonzini , Li-Wen Hsu , Peter Lieven Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" V9-V10 * gcrypt: test_tls_psk_init should write binary file instead text file. Split #include out, that line not belong this patch * tests: Enable crypto tests under msys2/mingw move qemu_socketpair into oslib-win32.c and rename to socketpair move qemu_link into osdep.c Fixes code style warning * tests: Fixes test-io-channel-file by mask only owner file state mask bits Update comment place * ci: Enable msys2 ci in cirrus Fixes misleading error message Fixes all checkpatch error messages V8-V9 * ci: Enable msys2 ci in cirrus do not install libnfs, libcapstone and jemalloc ident lines properly Do not install libnfs when the add the msys2 ci, * Revert "configure: add --ninja option" Skip this revision * block: Fixes nfs compiling error on msys2/mingw Use typedef long long blkcnt_t; for libnfs on msys2/mingw for futher implemenation, still disable nfs_get_allocated_file_size on win32 as it not working yet, but preserve the possibility implemenation it in futher * gcrypt: test_tls_psk_init should write binary file instead text file. only fixes the file open mode parameter * osdep: file locking functions are not available on Win32: Reword with "Do not declare the following locking functions on Win32:" * meson: Use -b to ignore CR vs. CR-LF issues on Windows Reword of commit message * tests: Enable crypto tests under msys2/mingw Reimplement qemu_socketpair in a simpler way. without thirdparty code * block: enable libnfs on msys2/mingw in cirrus.yml New commit * tests: disable /char/stdio/* tests in test-char.c on win32 Needs review * tests: fixes aio-win32 about aio_remove_fd_handler, get it consistence with= aio-posix.c Needs review * rcu: fixes test-logging.c by call drain_call_rcu before rmdir_full Needs review It first introduce msys2 CI on cirrus by fixes nfs, capstone, curses and disable partial test-char tests. And then fixes all unit tests failure on msys2/mingw This fixes the reviews suggested in the mailling list All cirrus CI are passed Maxim Levitsky (1): rcu: Implement drain_call_rcu Yonggang Luo (25): ci: fixes msys2 build by upgrading capstone to 4.0.2 configure: Fixes ncursesw detection under msys2/mingw and enable curses win32: Simplify gmtime_r detection direct base on _POSIX_THREAD_SAFE_FUNCTIONS. curses: Fixes curses compiling errors. tests: disable /char/stdio/* tests in test-char.c on win32 tests: Fixes test-replication.c on msys2/mingw. tests: test-replication disable /replication/secondary/* on msys2/mingw. osdep: file locking functions are not available on Win32 meson: Use -b to ignore CR vs. CR-LF issues on Windows gcrypt: test_tls_psk_init should write binary file instead text file. tests: Enable crypto tests under msys2/mingw meson: remove empty else and duplicated gio deps vmstate: Fixes test-vmstate.c on msys2/mingw cirrus: Building freebsd in a single short tests: Convert g_free to g_autofree macro in test-logging.c tests: Fixes test-io-channel-socket.c tests under msys2/mingw tests: fixes aio-win32 about aio_remove_fd_handler, get it consistence with aio-posix.c tests: Fixes test-io-channel-file by mask only owner file state mask bits tests: fix test-util-sockets.c tests: Fixes test-qdev-global-props.c rcu: fixes test-logging.c by call drain_call_rcu before rmdir_full meson: upgrade meson for execute custom ninjatool under msys2 properly ci: Enable msys2 ci in cirrus block: Fixes nfs compiling error on msys2/mingw block: enable libnfs on msys2/mingw in cirrus.yml .cirrus.yml | 97 +++++++++++++++++++++++--------- block/nfs.c | 37 +++++++++--- capstone | 2 +- configure | 61 ++++++-------------- include/qemu/osdep.h | 3 +- include/qemu/rcu.h | 1 + include/sysemu/os-win32.h | 9 ++- meson | 2 +- meson.build | 6 -- tests/crypto-tls-psk-helpers.c | 6 +- tests/crypto-tls-x509-helpers.c | 6 +- tests/crypto-tls-x509-helpers.h | 5 +- tests/qapi-schema/meson.build | 2 +- tests/test-char.c | 27 +++++---- tests/test-crypto-tlscredsx509.c | 47 ++++++++-------- tests/test-crypto-tlssession.c | 64 ++++++++++++--------- tests/test-io-channel-file.c | 12 +++- tests/test-io-channel-socket.c | 2 + tests/test-io-channel-tls.c | 49 +++++++++------- tests/test-logging.c | 6 +- tests/test-qdev-global-props.c | 9 ++- tests/test-replication.c | 22 ++++++-- tests/test-util-sockets.c | 6 +- tests/test-vmstate.c | 3 +- ui/curses.c | 14 ++--- util/aio-win32.c | 12 +++- util/osdep.c | 16 ++++++ util/oslib-win32.c | 78 ++++++++++++++++++++++++- util/rcu.c | 55 ++++++++++++++++++ 29 files changed, 459 insertions(+), 200 deletions(-) --=20 2.28.0.windows.1