Message ID | 20220920103159.1865256-2-bmeng.cn@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | tests/qtest: Enable running qtest on Windows | expand |
Hi On Tue, Sep 20, 2022 at 1:48 PM Bin Meng <bmeng.cn@gmail.com> wrote: > From: Bin Meng <bin.meng@windriver.com> > > Commit 413bebc04603 ("tests: Use g_mkdir_with_parents()") replaces > the mkdir() call in the test codes with glib's g_mkdir_with_parents(), > but the exact portable replacement for mkdir() should be g_mkdir(). > > I probably was misled by the GTK glib doc [1] before, thinking that > g_mkdir() is not a supported API from glib. But the glib sources do > not support this statement. It is probably that the GTK documentation > was not built to include all APIs. > > [1] https://docs.gtk.org/glib/?q=mkdir > > Fixes: 413bebc04603 ("tests: Use g_mkdir_with_parents()") > Signed-off-by: Bin Meng <bin.meng@windriver.com> > I wouldn't bother anymore, I'd keep mkdir_with_parents for now. YMMV --- > > Changes in v2: > - new patch: "tests: Change to use g_mkdir()" > > tests/migration/stress.c | 3 ++- > tests/qtest/migration-test.c | 7 ++++--- > tests/unit/test-crypto-tlscredsx509.c | 5 +++-- > tests/unit/test-crypto-tlssession.c | 7 ++++--- > tests/unit/test-io-channel-tls.c | 7 ++++--- > 5 files changed, 17 insertions(+), 12 deletions(-) > > diff --git a/tests/migration/stress.c b/tests/migration/stress.c > index 88acf8dc25..76b91851ad 100644 > --- a/tests/migration/stress.c > +++ b/tests/migration/stress.c > @@ -19,6 +19,7 @@ > > #include "qemu/osdep.h" > #include <getopt.h> > +#include <glib/gstdio.h> > #include <sys/reboot.h> > #include <sys/syscall.h> > #include <linux/random.h> > @@ -232,7 +233,7 @@ static void stress(unsigned long long ramsizeGB, int > ncpus) > > static int mount_misc(const char *fstype, const char *dir) > { > - if (g_mkdir_with_parents(dir, 0755) < 0 && errno != EEXIST) { > + if (g_mkdir(dir, 0755) < 0 && errno != EEXIST) { > fprintf(stderr, "%s (%05d): ERROR: cannot create %s: %s\n", > argv0, gettid(), dir, strerror(errno)); > return -1; > diff --git a/tests/qtest/migration-test.c b/tests/qtest/migration-test.c > index 4728d528bb..55892b3798 100644 > --- a/tests/qtest/migration-test.c > +++ b/tests/qtest/migration-test.c > @@ -11,6 +11,7 @@ > */ > > #include "qemu/osdep.h" > +#include <glib/gstdio.h> > > #include "libqtest.h" > #include "qapi/error.h" > @@ -761,14 +762,14 @@ test_migrate_tls_psk_start_common(QTestState *from, > data->workdir = g_strdup_printf("%s/tlscredspsk0", tmpfs); > data->pskfile = g_strdup_printf("%s/%s", data->workdir, > QCRYPTO_TLS_CREDS_PSKFILE); > - g_mkdir_with_parents(data->workdir, 0700); > + g_mkdir(data->workdir, 0700); > test_tls_psk_init(data->pskfile); > > if (mismatch) { > data->workdiralt = g_strdup_printf("%s/tlscredspskalt0", tmpfs); > data->pskfilealt = g_strdup_printf("%s/%s", data->workdiralt, > QCRYPTO_TLS_CREDS_PSKFILE); > - g_mkdir_with_parents(data->workdiralt, 0700); > + g_mkdir(data->workdiralt, 0700); > test_tls_psk_init_alt(data->pskfilealt); > } > > @@ -873,7 +874,7 @@ test_migrate_tls_x509_start_common(QTestState *from, > data->clientcert = g_strdup_printf("%s/client-cert.pem", > data->workdir); > } > > - g_mkdir_with_parents(data->workdir, 0700); > + g_mkdir(data->workdir, 0700); > > test_tls_init(data->keyfile); > #ifndef _WIN32 > diff --git a/tests/unit/test-crypto-tlscredsx509.c > b/tests/unit/test-crypto-tlscredsx509.c > index 3c25d75ca1..03fa48a3c5 100644 > --- a/tests/unit/test-crypto-tlscredsx509.c > +++ b/tests/unit/test-crypto-tlscredsx509.c > @@ -19,6 +19,7 @@ > */ > > #include "qemu/osdep.h" > +#include <glib/gstdio.h> > > #include "crypto-tls-x509-helpers.h" > #include "crypto/tlscredsx509.h" > @@ -75,7 +76,7 @@ static void test_tls_creds(const void *opaque) > QCryptoTLSCreds *creds; > > #define CERT_DIR "tests/test-crypto-tlscredsx509-certs/" > - g_mkdir_with_parents(CERT_DIR, 0700); > + g_mkdir(CERT_DIR, 0700); > > unlink(CERT_DIR QCRYPTO_TLS_CREDS_X509_CA_CERT); > if (data->isServer) { > @@ -141,7 +142,7 @@ int main(int argc, char **argv) > g_test_init(&argc, &argv, NULL); > g_setenv("GNUTLS_FORCE_FIPS_MODE", "2", 1); > > - g_mkdir_with_parents(WORKDIR, 0700); > + g_mkdir(WORKDIR, 0700); > > test_tls_init(KEYFILE); > > diff --git a/tests/unit/test-crypto-tlssession.c > b/tests/unit/test-crypto-tlssession.c > index 615a1344b4..356afbadfb 100644 > --- a/tests/unit/test-crypto-tlssession.c > +++ b/tests/unit/test-crypto-tlssession.c > @@ -19,6 +19,7 @@ > */ > > #include "qemu/osdep.h" > +#include <glib/gstdio.h> > > #include "crypto-tls-x509-helpers.h" > #include "crypto-tls-psk-helpers.h" > @@ -249,8 +250,8 @@ static void test_crypto_tls_session_x509(const void > *opaque) > > #define CLIENT_CERT_DIR "tests/test-crypto-tlssession-client/" > #define SERVER_CERT_DIR "tests/test-crypto-tlssession-server/" > - g_mkdir_with_parents(CLIENT_CERT_DIR, 0700); > - g_mkdir_with_parents(SERVER_CERT_DIR, 0700); > + g_mkdir(CLIENT_CERT_DIR, 0700); > + g_mkdir(SERVER_CERT_DIR, 0700); > > unlink(SERVER_CERT_DIR QCRYPTO_TLS_CREDS_X509_CA_CERT); > unlink(SERVER_CERT_DIR QCRYPTO_TLS_CREDS_X509_SERVER_CERT); > @@ -398,7 +399,7 @@ int main(int argc, char **argv) > g_test_init(&argc, &argv, NULL); > g_setenv("GNUTLS_FORCE_FIPS_MODE", "2", 1); > > - g_mkdir_with_parents(WORKDIR, 0700); > + g_mkdir(WORKDIR, 0700); > > test_tls_init(KEYFILE); > test_tls_psk_init(PSKFILE); > diff --git a/tests/unit/test-io-channel-tls.c > b/tests/unit/test-io-channel-tls.c > index cc39247556..1d95c9f61d 100644 > --- a/tests/unit/test-io-channel-tls.c > +++ b/tests/unit/test-io-channel-tls.c > @@ -22,6 +22,7 @@ > > > #include "qemu/osdep.h" > +#include <glib/gstdio.h> > > #include "crypto-tls-x509-helpers.h" > #include "io/channel-tls.h" > @@ -125,8 +126,8 @@ static void test_io_channel_tls(const void *opaque) > > #define CLIENT_CERT_DIR "tests/test-io-channel-tls-client/" > #define SERVER_CERT_DIR "tests/test-io-channel-tls-server/" > - g_mkdir_with_parents(CLIENT_CERT_DIR, 0700); > - g_mkdir_with_parents(SERVER_CERT_DIR, 0700); > + g_mkdir(CLIENT_CERT_DIR, 0700); > + g_mkdir(SERVER_CERT_DIR, 0700); > > unlink(SERVER_CERT_DIR QCRYPTO_TLS_CREDS_X509_CA_CERT); > unlink(SERVER_CERT_DIR QCRYPTO_TLS_CREDS_X509_SERVER_CERT); > @@ -273,7 +274,7 @@ int main(int argc, char **argv) > g_test_init(&argc, &argv, NULL); > g_setenv("GNUTLS_FORCE_FIPS_MODE", "2", 1); > > - g_mkdir_with_parents(WORKDIR, 0700); > + g_mkdir(WORKDIR, 0700); > > test_tls_init(KEYFILE); > > -- > 2.34.1 > > >
On Fri, Sep 23, 2022 at 3:32 AM Marc-André Lureau <marcandre.lureau@gmail.com> wrote: > > Hi > > On Tue, Sep 20, 2022 at 1:48 PM Bin Meng <bmeng.cn@gmail.com> wrote: >> >> From: Bin Meng <bin.meng@windriver.com> >> >> Commit 413bebc04603 ("tests: Use g_mkdir_with_parents()") replaces >> the mkdir() call in the test codes with glib's g_mkdir_with_parents(), >> but the exact portable replacement for mkdir() should be g_mkdir(). >> >> I probably was misled by the GTK glib doc [1] before, thinking that >> g_mkdir() is not a supported API from glib. But the glib sources do >> not support this statement. It is probably that the GTK documentation >> was not built to include all APIs. >> >> [1] https://docs.gtk.org/glib/?q=mkdir >> >> Fixes: 413bebc04603 ("tests: Use g_mkdir_with_parents()") >> Signed-off-by: Bin Meng <bin.meng@windriver.com> > > > I wouldn't bother anymore, I'd keep mkdir_with_parents for now. YMMV > Yep but some maintainers pointed out in other patches in v1 that g_mkdir() is the strict replacement for mkdir() :) @Thomas Huth Would you share your thoughts? Regards, Bin
On 23/09/2022 03.09, Bin Meng wrote: > On Fri, Sep 23, 2022 at 3:32 AM Marc-André Lureau > <marcandre.lureau@gmail.com> wrote: >> >> Hi >> >> On Tue, Sep 20, 2022 at 1:48 PM Bin Meng <bmeng.cn@gmail.com> wrote: >>> >>> From: Bin Meng <bin.meng@windriver.com> >>> >>> Commit 413bebc04603 ("tests: Use g_mkdir_with_parents()") replaces >>> the mkdir() call in the test codes with glib's g_mkdir_with_parents(), >>> but the exact portable replacement for mkdir() should be g_mkdir(). >>> >>> I probably was misled by the GTK glib doc [1] before, thinking that >>> g_mkdir() is not a supported API from glib. But the glib sources do >>> not support this statement. It is probably that the GTK documentation >>> was not built to include all APIs. >>> >>> [1] https://docs.gtk.org/glib/?q=mkdir >>> >>> Fixes: 413bebc04603 ("tests: Use g_mkdir_with_parents()") >>> Signed-off-by: Bin Meng <bin.meng@windriver.com> >> >> >> I wouldn't bother anymore, I'd keep mkdir_with_parents for now. YMMV >> > > Yep but some maintainers pointed out in other patches in v1 that > g_mkdir() is the strict replacement for mkdir() :) > > @Thomas Huth Would you share your thoughts? It's a little bit weird that g_mkdir() does not show up in the glib docs ... let's keep g_mkdir_with_parents(), that sounds like the better choice to me. Thomas
On Fri, Sep 23, 2022 at 08:02:46PM +0200, Thomas Huth wrote: > On 23/09/2022 03.09, Bin Meng wrote: > > On Fri, Sep 23, 2022 at 3:32 AM Marc-André Lureau > > <marcandre.lureau@gmail.com> wrote: > > > > > > Hi > > > > > > On Tue, Sep 20, 2022 at 1:48 PM Bin Meng <bmeng.cn@gmail.com> wrote: > > > > > > > > From: Bin Meng <bin.meng@windriver.com> > > > > > > > > Commit 413bebc04603 ("tests: Use g_mkdir_with_parents()") replaces > > > > the mkdir() call in the test codes with glib's g_mkdir_with_parents(), > > > > but the exact portable replacement for mkdir() should be g_mkdir(). > > > > > > > > I probably was misled by the GTK glib doc [1] before, thinking that > > > > g_mkdir() is not a supported API from glib. But the glib sources do > > > > not support this statement. It is probably that the GTK documentation > > > > was not built to include all APIs. > > > > > > > > [1] https://docs.gtk.org/glib/?q=mkdir > > > > > > > > Fixes: 413bebc04603 ("tests: Use g_mkdir_with_parents()") > > > > Signed-off-by: Bin Meng <bin.meng@windriver.com> > > > > > > > > > I wouldn't bother anymore, I'd keep mkdir_with_parents for now. YMMV > > > > > > > Yep but some maintainers pointed out in other patches in v1 that > > g_mkdir() is the strict replacement for mkdir() :) > > > > @Thomas Huth Would you share your thoughts? > > It's a little bit weird that g_mkdir() does not show up in the glib docs ... > let's keep g_mkdir_with_parents(), that sounds like the better choice to me. That is a bug in the new docs generator for GTK. It appears to have missed out a whole bunch of APIs. It is certainly present in the old docs from gtk-doc output https://developer-old.gnome.org/glib/2.64/glib-File-Utilities.html#g-mkdir With regards, Daniel
diff --git a/tests/migration/stress.c b/tests/migration/stress.c index 88acf8dc25..76b91851ad 100644 --- a/tests/migration/stress.c +++ b/tests/migration/stress.c @@ -19,6 +19,7 @@ #include "qemu/osdep.h" #include <getopt.h> +#include <glib/gstdio.h> #include <sys/reboot.h> #include <sys/syscall.h> #include <linux/random.h> @@ -232,7 +233,7 @@ static void stress(unsigned long long ramsizeGB, int ncpus) static int mount_misc(const char *fstype, const char *dir) { - if (g_mkdir_with_parents(dir, 0755) < 0 && errno != EEXIST) { + if (g_mkdir(dir, 0755) < 0 && errno != EEXIST) { fprintf(stderr, "%s (%05d): ERROR: cannot create %s: %s\n", argv0, gettid(), dir, strerror(errno)); return -1; diff --git a/tests/qtest/migration-test.c b/tests/qtest/migration-test.c index 4728d528bb..55892b3798 100644 --- a/tests/qtest/migration-test.c +++ b/tests/qtest/migration-test.c @@ -11,6 +11,7 @@ */ #include "qemu/osdep.h" +#include <glib/gstdio.h> #include "libqtest.h" #include "qapi/error.h" @@ -761,14 +762,14 @@ test_migrate_tls_psk_start_common(QTestState *from, data->workdir = g_strdup_printf("%s/tlscredspsk0", tmpfs); data->pskfile = g_strdup_printf("%s/%s", data->workdir, QCRYPTO_TLS_CREDS_PSKFILE); - g_mkdir_with_parents(data->workdir, 0700); + g_mkdir(data->workdir, 0700); test_tls_psk_init(data->pskfile); if (mismatch) { data->workdiralt = g_strdup_printf("%s/tlscredspskalt0", tmpfs); data->pskfilealt = g_strdup_printf("%s/%s", data->workdiralt, QCRYPTO_TLS_CREDS_PSKFILE); - g_mkdir_with_parents(data->workdiralt, 0700); + g_mkdir(data->workdiralt, 0700); test_tls_psk_init_alt(data->pskfilealt); } @@ -873,7 +874,7 @@ test_migrate_tls_x509_start_common(QTestState *from, data->clientcert = g_strdup_printf("%s/client-cert.pem", data->workdir); } - g_mkdir_with_parents(data->workdir, 0700); + g_mkdir(data->workdir, 0700); test_tls_init(data->keyfile); #ifndef _WIN32 diff --git a/tests/unit/test-crypto-tlscredsx509.c b/tests/unit/test-crypto-tlscredsx509.c index 3c25d75ca1..03fa48a3c5 100644 --- a/tests/unit/test-crypto-tlscredsx509.c +++ b/tests/unit/test-crypto-tlscredsx509.c @@ -19,6 +19,7 @@ */ #include "qemu/osdep.h" +#include <glib/gstdio.h> #include "crypto-tls-x509-helpers.h" #include "crypto/tlscredsx509.h" @@ -75,7 +76,7 @@ static void test_tls_creds(const void *opaque) QCryptoTLSCreds *creds; #define CERT_DIR "tests/test-crypto-tlscredsx509-certs/" - g_mkdir_with_parents(CERT_DIR, 0700); + g_mkdir(CERT_DIR, 0700); unlink(CERT_DIR QCRYPTO_TLS_CREDS_X509_CA_CERT); if (data->isServer) { @@ -141,7 +142,7 @@ int main(int argc, char **argv) g_test_init(&argc, &argv, NULL); g_setenv("GNUTLS_FORCE_FIPS_MODE", "2", 1); - g_mkdir_with_parents(WORKDIR, 0700); + g_mkdir(WORKDIR, 0700); test_tls_init(KEYFILE); diff --git a/tests/unit/test-crypto-tlssession.c b/tests/unit/test-crypto-tlssession.c index 615a1344b4..356afbadfb 100644 --- a/tests/unit/test-crypto-tlssession.c +++ b/tests/unit/test-crypto-tlssession.c @@ -19,6 +19,7 @@ */ #include "qemu/osdep.h" +#include <glib/gstdio.h> #include "crypto-tls-x509-helpers.h" #include "crypto-tls-psk-helpers.h" @@ -249,8 +250,8 @@ static void test_crypto_tls_session_x509(const void *opaque) #define CLIENT_CERT_DIR "tests/test-crypto-tlssession-client/" #define SERVER_CERT_DIR "tests/test-crypto-tlssession-server/" - g_mkdir_with_parents(CLIENT_CERT_DIR, 0700); - g_mkdir_with_parents(SERVER_CERT_DIR, 0700); + g_mkdir(CLIENT_CERT_DIR, 0700); + g_mkdir(SERVER_CERT_DIR, 0700); unlink(SERVER_CERT_DIR QCRYPTO_TLS_CREDS_X509_CA_CERT); unlink(SERVER_CERT_DIR QCRYPTO_TLS_CREDS_X509_SERVER_CERT); @@ -398,7 +399,7 @@ int main(int argc, char **argv) g_test_init(&argc, &argv, NULL); g_setenv("GNUTLS_FORCE_FIPS_MODE", "2", 1); - g_mkdir_with_parents(WORKDIR, 0700); + g_mkdir(WORKDIR, 0700); test_tls_init(KEYFILE); test_tls_psk_init(PSKFILE); diff --git a/tests/unit/test-io-channel-tls.c b/tests/unit/test-io-channel-tls.c index cc39247556..1d95c9f61d 100644 --- a/tests/unit/test-io-channel-tls.c +++ b/tests/unit/test-io-channel-tls.c @@ -22,6 +22,7 @@ #include "qemu/osdep.h" +#include <glib/gstdio.h> #include "crypto-tls-x509-helpers.h" #include "io/channel-tls.h" @@ -125,8 +126,8 @@ static void test_io_channel_tls(const void *opaque) #define CLIENT_CERT_DIR "tests/test-io-channel-tls-client/" #define SERVER_CERT_DIR "tests/test-io-channel-tls-server/" - g_mkdir_with_parents(CLIENT_CERT_DIR, 0700); - g_mkdir_with_parents(SERVER_CERT_DIR, 0700); + g_mkdir(CLIENT_CERT_DIR, 0700); + g_mkdir(SERVER_CERT_DIR, 0700); unlink(SERVER_CERT_DIR QCRYPTO_TLS_CREDS_X509_CA_CERT); unlink(SERVER_CERT_DIR QCRYPTO_TLS_CREDS_X509_SERVER_CERT); @@ -273,7 +274,7 @@ int main(int argc, char **argv) g_test_init(&argc, &argv, NULL); g_setenv("GNUTLS_FORCE_FIPS_MODE", "2", 1); - g_mkdir_with_parents(WORKDIR, 0700); + g_mkdir(WORKDIR, 0700); test_tls_init(KEYFILE);