diff --git a/utils/gammu/Makefile b/utils/gammu/Makefile index 825ad1859..bde3fe432 100644 --- a/utils/gammu/Makefile +++ b/utils/gammu/Makefile @@ -31,7 +31,7 @@ define Package/gammu URL:=http://dl.cihar.com/gammu/releases/ DEPENDS:=+libpthread +libcurl +glib2 $(ICONV_DEPENDS) $(INTL_DEPENDS) DEPENDS+=+PACKAGE_python:python +PACKAGE_bluez-libs:bluez-libs - DEPENDS+=+PACKAGE_libmariadbclient:libmariadbclient +PACKAGE_unixodbc:unixodbc +PACKAGE_libpq:libpq + DEPENDS+=+PACKAGE_libmariadb:libmariadb +PACKAGE_unixodbc:unixodbc +PACKAGE_libpq:libpq DEPENDS+=+PACKAGE_libusb-1.0:libusb-1.0 endef diff --git a/utils/mariadb/Makefile b/utils/mariadb/Makefile index 545daba01..439ec941f 100644 --- a/utils/mariadb/Makefile +++ b/utils/mariadb/Makefile @@ -8,7 +8,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=mariadb -PKG_VERSION:=10.1.33 +PKG_VERSION:=10.2.16 PKG_RELEASE:=1 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz @@ -18,10 +18,10 @@ PKG_SOURCE_URL := \ https://ftp.yz.yamagata-u.ac.jp/pub/dbms/mariadb/$(PKG_NAME)-$(PKG_VERSION)/source \ https://downloads.mariadb.org/interstitial/$(PKG_NAME)-$(PKG_VERSION)/source -PKG_HASH:=94312c519f2c0c25e1964c64e22aff0036fb22dfb2685638f43a6b2211395d2d +PKG_HASH:=c182ee93bacee9c1395a4cece56acfc433bc5153ec627c4898927b93eee54dc4 PKG_MAINTAINER:=Sebastian Kemper -PKG_LICENSE:=GPL-2.0 -PKG_LICENSE_FILES:=COPYING +PKG_LICENSE:=GPL-2.0 LGPL-2.1 +PKG_LICENSE_FILES:=COPYING libmariadb/COPYING.LIB HOST_BUILD_PARALLEL:=1 PKG_BUILD_PARALLEL:=1 @@ -60,7 +60,8 @@ MARIADB_SERVER_PLUGINS := \ ha_example \ ha_federated \ ha_federatedx \ - ha_innodb \ + ha_sequence \ + ha_sphinx \ ha_spider \ ha_test_sql_discovery \ handlersocket \ @@ -102,7 +103,8 @@ plugin-ha_connect := PLUGIN_CONNECT plugin-ha_example := PLUGIN_EXAMPLE plugin-ha_federated := PLUGIN_FEDERATED plugin-ha_federatedx := PLUGIN_FEDERATEDX -plugin-ha_innodb := PLUGIN_INNOBASE +plugin-ha_sequence := PLUGIN_SEQUENCE +plugin-ha_sphinx := PLUGIN_SPHINX plugin-ha_spider := PLUGIN_SPIDER plugin-ha_test_sql_discovery := PLUGIN_TEST_SQL_DISCOVERY plugin-handlersocket := PLUGIN_HANDLERSOCKET @@ -183,16 +185,16 @@ database query language in the world. The main goals of MariaDB are speed, robustness and ease of use. endef -define Package/libmariadbclient +define Package/libmariadb SECTION:=libs CATEGORY:=Libraries DEPENDS:=$(MARIADB_COMMON_DEPENDS) TITLE:=MariaDB database client library URL:=https://mariadb.org/ - PROVIDES:=libmysqlclient libmysqlclient-r + PROVIDES:=libmariadbclient libmysqlclient libmysqlclient-r endef -define Package/libmariadbclient/description +define Package/libmariadb/description $(call Package/mariadb/description/Default) This package includes the client library. @@ -247,7 +249,6 @@ endef define Package/mariadb-extra-charsets/description $(call Package/mariadb/description/Default) -The MariaDB server packaged by OpenWrt only provides support for UTF-8. This package contains single Byte character sets and collations that can be added at run time. @@ -264,6 +265,7 @@ define Package/mariadb-server TITLE:=MariaDB database core server binaries MENU:=1 PROVIDES:=mysql-server + USERID:=mariadb=376:mariadb=376 endef define Package/mariadb-server/description @@ -340,13 +342,14 @@ CMAKE_OPTIONS += \ -DINSTALL_SCRIPTDIR=bin \ -DINSTALL_SQLBENCHDIR="" \ -DINSTALL_SUPPORTFILESDIR=share/mysql \ - -DMYSQLD_USER=root \ + -DINSTALL_UNIX_ADDRDIR=/var/run/mysqld/mysqld.sock \ + -DMYSQLD_USER=mariadb \ -DMYSQL_DATADIR=/var/lib/mysql \ - -DMYSQL_UNIX_ADDR=/var/run/mysqld.sock \ + -DMYSQL_UNIX_ADDR=/var/run/mysqld/mysqld.sock \ -DSKIP_TESTS=ON \ -DWITH_ASAN=OFF \ -DWITH_EMBEDDED_SERVER=OFF \ - -DWITH_EXTRA_CHARSETS=none \ + -DWITH_EXTRA_CHARSETS=complex \ -DWITH_INNODB_BZIP2=OFF \ -DWITH_INNODB_LZ4=OFF \ -DWITH_INNODB_LZMA=ON \ @@ -371,7 +374,6 @@ CMAKE_OPTIONS += \ -DPLUGIN_MROONGA=NO \ -DPLUGIN_OQGRAPH=NO \ -DPLUGIN_ROCKSDB=NO \ - -DPLUGIN_SPHINX=NO \ -DPLUGIN_TOKUDB=NO \ -DPLUGIN_AUTH_PAM=NO \ -DPLUGIN_AUTH_GSSAPI=NO \ @@ -425,15 +427,15 @@ define Build/InstallDev $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/mysql_config $(1)/usr/bin $(LN) $(STAGING_DIR)/usr/bin/mysql_config $(2)/bin $(CP) $(PKG_INSTALL_DIR)/usr/include/mysql $(1)/usr/include - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libmysqlclient*.so* $(1)/usr/lib - cd $(1)/usr/lib/mysql; $(LN) ../libmysqlclient*.so* . + $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{mariadb,mysqlclient}*.so* $(1)/usr/lib + cd $(1)/usr/lib/mysql; $(LN) ../lib{mariadb,mysqlclient}*.so* . $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/pkgconfig/mariadb.pc $(1)/usr/lib/pkgconfig $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/share/aclocal/mysql.m4 $(1)/usr/share/aclocal endef -define Package/libmariadbclient/install +define Package/libmariadb/install $(INSTALL_DIR) $(1)$(PLUGIN_DIR) - $(CP) $(PKG_INSTALL_DIR)/usr/lib/libmysqlclient*.so* $(1)/usr/lib + $(CP) $(PKG_INSTALL_DIR)/usr/lib/lib{mariadb,mysqlclient}*.so* $(1)/usr/lib $(INSTALL_BIN) $(PKG_INSTALL_DIR)$(PLUGIN_DIR)/dialog.so $(1)$(PLUGIN_DIR) $(INSTALL_BIN) $(PKG_INSTALL_DIR)$(PLUGIN_DIR)/mysql_clear_password.so $(1)$(PLUGIN_DIR) endef @@ -441,6 +443,10 @@ endef define Package/mariadb-client/install $(INSTALL_DIR) $(1)/usr/bin $(foreach b,$(MARIADB_CLIENT),$(call Package/mariadb/install/bin,$(1),$(b));) + # Install convenience links for mysqlcheck multi-call binary + cd $(1)/usr/bin; $(LN) mysqlcheck mysqlanalyze + cd $(1)/usr/bin; $(LN) mysqlcheck mysqlrepair + cd $(1)/usr/bin; $(LN) mysqlcheck mysqloptimize endef define Package/mariadb-client-extra/install @@ -456,10 +462,12 @@ endef define Package/mariadb-server/install $(INSTALL_DIR) $(1)/usr/bin $(foreach b,$(MARIADB_SERVER),$(call Package/mariadb/install/bin,$(1),$(b));) + $(INSTALL_DIR) $(1)/etc/default $(INSTALL_DIR) $(1)/etc/init.d $(INSTALL_DIR) $(1)/etc/mysql/conf.d $(INSTALL_BIN) files/mysqld.init $(1)/etc/init.d/mysqld $(INSTALL_CONF) conf/my.cnf $(1)/etc/mysql + $(INSTALL_CONF) conf/mysqld.default $(1)/etc/default/mysqld $(INSTALL_DIR) $(1)$(PLUGIN_DIR) $(INSTALL_CONF) $(PKG_INSTALL_DIR)$(PLUGIN_DIR)/daemon_example.ini $(1)$(PLUGIN_DIR) $(INSTALL_DIR) $(1)/usr/share/mysql/english @@ -477,8 +485,9 @@ define Package/mariadb-server-extra/install endef define Package/mariadb-server/conffiles +/etc/default/mysqld /etc/mysql/my.cnf -/usr/lib/mysql/plugin/daemon_example.ini +$(PLUGIN_DIR)/daemon_example.ini endef define BuildPlugin @@ -503,7 +512,7 @@ This package provides the $(1) plugin. endef $(eval $(call HostBuild)) -$(eval $(call BuildPackage,libmariadbclient)) +$(eval $(call BuildPackage,libmariadb)) $(eval $(call BuildPackage,mariadb-client)) $(eval $(call BuildPackage,mariadb-client-extra)) $(eval $(call BuildPackage,mariadb-extra-charsets)) @@ -525,9 +534,11 @@ $(eval $(call BuildPlugin,file_key_management,)) $(eval $(call BuildPlugin,ha_archive,)) $(eval $(call BuildPlugin,ha_blackhole,)) $(eval $(call BuildPlugin,ha_connect,+libxml2)) +$(eval $(call BuildPlugin,ha_example,)) $(eval $(call BuildPlugin,ha_federated,)) $(eval $(call BuildPlugin,ha_federatedx,)) -$(eval $(call BuildPlugin,ha_innodb,)) +$(eval $(call BuildPlugin,ha_sequence,)) +$(eval $(call BuildPlugin,ha_sphinx,)) $(eval $(call BuildPlugin,ha_spider,)) $(eval $(call BuildPlugin,ha_test_sql_discovery,)) $(eval $(call BuildPlugin,handlersocket,)) diff --git a/utils/mariadb/conf/my.cnf b/utils/mariadb/conf/my.cnf index ec2ade2c8..effa88a77 100644 --- a/utils/mariadb/conf/my.cnf +++ b/utils/mariadb/conf/my.cnf @@ -1,10 +1,10 @@ [client] port = 3306 -socket = /var/run/mysqld.sock +socket = /var/run/mysqld/mysqld.sock [mysqld] -user = root -socket = /var/run/mysqld.sock +user = mariadb +socket = /var/run/mysqld/mysqld.sock port = 3306 basedir = /usr @@ -21,21 +21,21 @@ skip-external-locking bind-address = 127.0.0.1 # Fine Tuning -key_buffer = 16M +key_buffer_size = 16M max_allowed_packet = 16M thread_stack = 192K -thread_cache_size = 8 +thread_cache_size = 8 # Here you can see queries with especially long duration #log_slow_queries = /var/log/mysql/mysql-slow.log -#long_query_time = 2 +#long_query_time = 2 #log-queries-not-using-indexes # The following can be used as easy to replay backup logs or for replication. #server-id = 1 -#log_bin = /var/log/mysql/mysql-bin.log +#log_bin = /var/log/mysql/mysql-bin.log #expire_logs_days = 10 -#max_binlog_size = 100M +#max_binlog_size = 100M #binlog_do_db = include_database_name #binlog_ignore_db = include_database_name diff --git a/utils/mariadb/conf/mysqld.default b/utils/mariadb/conf/mysqld.default new file mode 100644 index 000000000..fe9c698ba --- /dev/null +++ b/utils/mariadb/conf/mysqld.default @@ -0,0 +1,10 @@ +# The user and group that will run the MySQL server. The user mariadb is +# automatically created by the mariadb-server package, hence that is the +# default choice. + +#MY_USER=mariadb +#MY_GROUP=mariadb + +# Additional arguments you want to pass to the MySQL server. + +#MY_ARGS="" diff --git a/utils/mariadb/files/mysqld.init b/utils/mariadb/files/mysqld.init index fcd08d61e..abc99fc7a 100644 --- a/utils/mariadb/files/mysqld.init +++ b/utils/mariadb/files/mysqld.init @@ -1,32 +1,53 @@ #!/bin/sh /etc/rc.common -# Copyright (C) 2010-2011 OpenWrt.org +# Copyright (C) 2010-2018 OpenWrt.org START=95 STOP=10 -SERVICE_DAEMONIZE=1 -SERVICE_WRITE_PID=1 -SERVICE_STOP_TIME=9 -PROG='/usr/bin/mysqld' +USE_PROCD=1 -start() { +#PROCD_DEBUG=1 + +MYSQLD=mysqld + +DEFAULT=/etc/default/$MYSQLD +LOGGER="/usr/bin/logger -p user.err -s -t $MYSQLD" +PROG=/usr/bin/$MYSQLD + +unset MY_ARGS MY_GROUP MY_USER + +[ -f $DEFAULT ] && . $DEFAULT + +my_user="${MY_USER:-mariadb}" +my_group="${MY_GROUP:-mariadb}" + +start_service() { local conf='/etc/mysql/my.cnf' local datadir="$( sed -nE "s/^\s*datadir\s*=\s*('([^']*)'|\x22([^\x22]*)\x22|(.*\S))\s*$/\2\3\4/p" "$conf" )" [ -d "$datadir" ] || { - logger -s "[ERROR] datadir '$datadir' in '$conf' does not exist" + $LOGGER "datadir '$datadir' in '$conf' does not exist" return 1 } [ -f "$datadir/mysql/tables_priv.MYD" ] || { - logger -s "[ERROR] can not detect privileges table, you might need to" - logger -s "run 'mysql_install_db --force' to initialize the system tables" + $LOGGER "cannot detect privileges table, you might need to" + $LOGGER "run 'mysql_install_db --force' to initialize the system tables" return 1 } - service_start "$PROG" -} + mkdir -p /var/lib/mysql + chown "$my_user":"$my_group" /var/lib/mysql + + mkdir -p /var/run/mysqld + chown "$my_user":"$my_group" /var/run/mysqld + + procd_open_instance + + procd_set_param command $PROG $MY_ARGS + procd_set_param pidfile /var/run/mysqld.pid + # forward stderr to logd + procd_set_param stderr 1 -stop() { - service_stop "$PROG" + procd_close_instance } diff --git a/utils/mariadb/patches/100-fix_hostname.patch b/utils/mariadb/patches/100-fix_hostname.patch index 05a0fc6db..4e6f22bdd 100644 --- a/utils/mariadb/patches/100-fix_hostname.patch +++ b/utils/mariadb/patches/100-fix_hostname.patch @@ -1,6 +1,6 @@ --- a/scripts/mysql_install_db.sh +++ b/scripts/mysql_install_db.sh -@@ -379,7 +379,7 @@ fi +@@ -383,7 +383,7 @@ fi # Try to determine the hostname diff --git a/utils/mariadb/patches/120-fix-ucontext-check.patch b/utils/mariadb/patches/120-fix-ucontext-check.patch index 8baec2893..00d674ce9 100644 --- a/utils/mariadb/patches/120-fix-ucontext-check.patch +++ b/utils/mariadb/patches/120-fix-ucontext-check.patch @@ -1,9 +1,9 @@ --- a/configure.cmake +++ b/configure.cmake -@@ -1107,9 +1107,12 @@ SET(CMAKE_EXTRA_INCLUDE_FILES) - CHECK_STRUCT_HAS_MEMBER("struct dirent" d_ino "dirent.h" STRUCT_DIRENT_HAS_D_INO) - CHECK_STRUCT_HAS_MEMBER("struct dirent" d_namlen "dirent.h" STRUCT_DIRENT_HAS_D_NAMLEN) - SET(SPRINTF_RETURNS_INT 1) +@@ -1018,9 +1018,12 @@ CHECK_STRUCT_HAS_MEMBER("struct sockaddr + + SET(CMAKE_EXTRA_INCLUDE_FILES) + -CHECK_INCLUDE_FILE(ucontext.h HAVE_UCONTEXT_H) -IF(NOT HAVE_UCONTEXT_H) - CHECK_INCLUDE_FILE(sys/ucontext.h HAVE_UCONTEXT_H) diff --git a/utils/mariadb/patches/130-c11_atomics.patch b/utils/mariadb/patches/130-c11_atomics.patch index f223da1a1..e4a04eea7 100644 --- a/utils/mariadb/patches/130-c11_atomics.patch +++ b/utils/mariadb/patches/130-c11_atomics.patch @@ -14,7 +14,7 @@ Author: Vicențiu Ciorbaru ${LIBM} ${LIBNSL} ${LIBBIND} ${LIBCRYPT} ${LIBSOCKET} ${LIBDL} ${CMAKE_THREAD_LIBS_INIT} ${LIBRT} ${LIBEXECINFO}) # Need explicit pthread for gcc -fsanitize=address IF(CMAKE_USE_PTHREADS_INIT AND CMAKE_C_FLAGS MATCHES "-fsanitize=") -@@ -1038,7 +1038,26 @@ ELSEIF(NOT WITH_ATOMIC_OPS) +@@ -952,7 +952,26 @@ ELSEIF(NOT WITH_ATOMIC_OPS) long long int *ptr= &var; return (int)__atomic_load_n(ptr, __ATOMIC_SEQ_CST); }" @@ -73,29 +73,9 @@ Author: Vicențiu Ciorbaru #ifdef MY_ATOMIC_MODE_DUMMY #define make_atomic_load_body(S) ret= *a #define make_atomic_store_body(S) *a= v ---- a/include/atomic/nolock.h -+++ b/include/atomic/nolock.h -@@ -17,7 +17,7 @@ - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ - - #if defined(__i386__) || defined(_MSC_VER) || defined(__x86_64__) \ -- || defined(HAVE_GCC_ATOMIC_BUILTINS) \ -+ || defined(HAVE_GCC_ATOMIC_BUILTINS) || defined(HAVE_GCC_C11_ATOMICS) \ - || defined(HAVE_SOLARIS_ATOMIC) - - # ifdef MY_ATOMIC_MODE_DUMMY -@@ -41,7 +41,7 @@ - # elif __GNUC__ - # if defined(HAVE_SOLARIS_ATOMIC) - # include "solaris.h" --# elif defined(HAVE_GCC_ATOMIC_BUILTINS) -+# elif defined(HAVE_GCC_ATOMIC_BUILTINS) || defined(HAVE_GCC_C11_ATOMICS) - # include "gcc_builtins.h" - # elif defined(__i386__) || defined(__x86_64__) - # include "x86-gcc.h" --- a/mysys/CMakeLists.txt +++ b/mysys/CMakeLists.txt -@@ -78,6 +78,10 @@ IF(HAVE_BFD_H) +@@ -80,6 +80,10 @@ IF(HAVE_BFD_H) TARGET_LINK_LIBRARIES(mysys bfd) ENDIF(HAVE_BFD_H) @@ -108,7 +88,7 @@ Author: Vicențiu Ciorbaru ENDIF(WIN32) --- a/sql/CMakeLists.txt +++ b/sql/CMakeLists.txt -@@ -165,6 +165,10 @@ TARGET_LINK_LIBRARIES(sql ${MYSQLD_STATI +@@ -170,6 +170,10 @@ TARGET_LINK_LIBRARIES(sql ${MYSQLD_STATI ${SSL_LIBRARIES} ${LIBSYSTEMD}) @@ -119,3 +99,14 @@ Author: Vicențiu Ciorbaru IF(WIN32) SET(MYSQLD_SOURCE main.cc nt_servc.cc message.rc) TARGET_LINK_LIBRARIES(sql psapi) +--- a/include/my_atomic.h ++++ b/include/my_atomic.h +@@ -126,7 +126,7 @@ + #include "atomic/generic-msvc.h" + #elif defined(HAVE_SOLARIS_ATOMIC) + #include "atomic/solaris.h" +-#elif defined(HAVE_GCC_ATOMIC_BUILTINS) ++#elif defined(HAVE_GCC_ATOMIC_BUILTINS) || defined(HAVE_GCC_C11_ATOMICS) + #include "atomic/gcc_builtins.h" + #elif defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__)) + #include "atomic/x86-gcc.h" diff --git a/utils/mariadb/patches/150-mips-innobase-atomic.patch b/utils/mariadb/patches/150-mips-innobase-atomic.patch deleted file mode 100644 index dd7db7cbe..000000000 --- a/utils/mariadb/patches/150-mips-innobase-atomic.patch +++ /dev/null @@ -1,14 +0,0 @@ -Author: James Cowgill -Description: fix FTBFS on 32-bit mips* -Bug-Debian: #864298 - ---- a/storage/innobase/include/os0sync.h -+++ b/storage/innobase/include/os0sync.h -@@ -37,6 +37,7 @@ Created 9/6/1995 Heikki Tuuri - - #include "univ.i" - #include "ut0lst.h" -+#include "sync0types.h" - - /** CPU cache line size */ - #ifdef __powerpc__ diff --git a/utils/mariadb/patches/170-ppc-remove-glibc-dep.patch b/utils/mariadb/patches/170-ppc-remove-glibc-dep.patch index e4b5a4a82..7cfa667a1 100644 --- a/utils/mariadb/patches/170-ppc-remove-glibc-dep.patch +++ b/utils/mariadb/patches/170-ppc-remove-glibc-dep.patch @@ -27,12 +27,14 @@ directly was the first solution adopted in MariaDB [2]. --- a/storage/xtradb/include/ut0ut.h +++ b/storage/xtradb/include/ut0ut.h -@@ -86,8 +86,7 @@ private: +@@ -85,9 +85,8 @@ private: + the YieldProcessor macro defined in WinNT.h. It is a CPU architecture- independent way by using YieldProcessor. */ # define UT_RELAX_CPU() YieldProcessor() - # elif defined(__powerpc__) +-# elif defined(__powerpc__) && defined __GLIBC__ -#include -# define UT_RELAX_CPU() __ppc_get_timebase() ++# elif defined(__powerpc__) +# define UT_RELAX_CPU() __builtin_ppc_get_timebase() # else # define UT_RELAX_CPU() ((void)0) /* avoid warning for an empty statement */ @@ -51,25 +53,27 @@ directly was the first solution adopted in MariaDB [2]. # define UT_RESUME_PRIORITY_CPU() ((void)0) --- a/storage/innobase/include/ut0ut.h +++ b/storage/innobase/include/ut0ut.h -@@ -89,8 +89,7 @@ private: +@@ -70,9 +70,8 @@ typedef time_t ib_time_t; + the YieldProcessor macro defined in WinNT.h. It is a CPU architecture- independent way by using YieldProcessor. */ - # define UT_RELAX_CPU() YieldProcessor() - # elif defined(__powerpc__) --#include --# define UT_RELAX_CPU() __ppc_get_timebase() -+# define UT_RELAX_CPU() __builtin_ppc_get_timebase() - # else - # define UT_RELAX_CPU() ((void)0) /* avoid warning for an empty statement */ - # endif -@@ -104,9 +103,8 @@ private: + # define UT_RELAX_CPU() YieldProcessor() +-#elif defined(__powerpc__) && defined __GLIBC__ +-# include +-# define UT_RELAX_CPU() __ppc_get_timebase() ++#elif defined(__powerpc__) ++# define UT_RELAX_CPU() __builtin_ppc_get_timebase() + #else + # define UT_RELAX_CPU() do { \ + volatile int32 volatile_var; \ +@@ -90,9 +89,8 @@ typedef time_t ib_time_t; #endif - # if defined(HAVE_HMT_PRIORITY_INSTRUCTION) --#include --# define UT_LOW_PRIORITY_CPU() __ppc_set_ppr_low() --# define UT_RESUME_PRIORITY_CPU() __ppc_set_ppr_med() -+# define UT_LOW_PRIORITY_CPU() __asm__ __volatile__ ("or 1,1,1") -+# define UT_RESUME_PRIORITY_CPU() __asm__ __volatile__ ("or 2,2,2") - # else - # define UT_LOW_PRIORITY_CPU() ((void)0) - # define UT_RESUME_PRIORITY_CPU() ((void)0) + #if defined(HAVE_HMT_PRIORITY_INSTRUCTION) +-# include +-# define UT_LOW_PRIORITY_CPU() __ppc_set_ppr_low() +-# define UT_RESUME_PRIORITY_CPU() __ppc_set_ppr_med() ++# define UT_LOW_PRIORITY_CPU() __asm__ __volatile__ ("or 1,1,1") ++# define UT_RESUME_PRIORITY_CPU() __asm__ __volatile__ ("or 2,2,2") + #else + # define UT_LOW_PRIORITY_CPU() ((void)0) + # define UT_RESUME_PRIORITY_CPU() ((void)0)