From 98674dbd43fcfa54e6394a78b284461ab1f957f1 Mon Sep 17 00:00:00 2001 From: dholland Date: Sat, 27 Dec 2014 01:53:55 +0000 Subject: Add NetBSD support for PowerPC cache line handling. From Ben Gergely in PR 48865. --- emulators/qemu0/distinfo | 3 ++- emulators/qemu0/patches/patch-cache-utils.c | 31 +++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 emulators/qemu0/patches/patch-cache-utils.c diff --git a/emulators/qemu0/distinfo b/emulators/qemu0/distinfo index 67ec9b077fc..6004832fc5e 100644 --- a/emulators/qemu0/distinfo +++ b/emulators/qemu0/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.2 2013/06/03 11:54:41 obache Exp $ +$NetBSD: distinfo,v 1.3 2014/12/27 01:53:55 dholland Exp $ SHA1 (qemu-0.15.1.tar.gz) = 30cf3b4dabb4b5d8efadb20f364eb8181f317681 RMD160 (qemu-0.15.1.tar.gz) = fd1cfde94f96569af671cc96d1c2e4bad524fd61 @@ -7,6 +7,7 @@ SHA1 (patch-aa) = ca39d409081cd7d9f038d580c5b90ffca46948ec SHA1 (patch-ao) = 610e77fd51595f0f77b82a745d0a546712f6442d SHA1 (patch-ba) = c8ad6502b0693cc22a79f89d2935d962066b5d91 SHA1 (patch-bb) = 17255a240062acfe87401c2168158687f2ebcd20 +SHA1 (patch-cache-utils.c) = 5855cb170aa6fd2194f33d3e0568b88f029be0b4 SHA1 (patch-dd) = 20637d652963c94c5fe7999f27c31c7fd8864e43 SHA1 (patch-ed) = 7a77ba9b33d654c9f8278d69f81a2fc06e17a7d3 SHA1 (patch-ef) = f26f1b860cca477d5e80c9cb2755c8dc6fa593ac diff --git a/emulators/qemu0/patches/patch-cache-utils.c b/emulators/qemu0/patches/patch-cache-utils.c new file mode 100644 index 00000000000..555a430108b --- /dev/null +++ b/emulators/qemu0/patches/patch-cache-utils.c @@ -0,0 +1,31 @@ +$NetBSD: patch-cache-utils.c,v 1.1 2014/12/27 01:53:55 dholland Exp $ + +Add NetBSD support for PowerPC cache line handling. From Ben Gergely +in PR 48865. + +--- cache-utils.c~ 2011-10-12 16:41:43.000000000 +0000 ++++ cache-utils.c +@@ -57,7 +57,7 @@ static void ppc_init_cacheline_sizes(voi + } + #endif + +-#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) ++#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__NetBSD__) + #include + #include + #include +@@ -69,8 +69,13 @@ static void ppc_init_cacheline_sizes(voi + { + size_t len = 4; + unsigned cacheline; ++#ifdef __NetBSD__ ++ static const char sysctlname[] = "machdep.cachelinesize"; ++#else ++ static const char sysctlname[] = "machdep.cacheline_size"; ++#endif + +- if (sysctlbyname ("machdep.cacheline_size", &cacheline, &len, NULL, 0)) { ++ if (sysctlbyname (sysctlname, &cacheline, &len, NULL, 0)) { + fprintf(stderr, "sysctlbyname machdep.cacheline_size failed: %s\n", + strerror(errno)); + exit(1); -- cgit v1.2.3