From owner-svn-src-stable@FreeBSD.ORG Sat Apr 30 05:28:55 2011 Return-Path: Delivered-To: svn-src-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 5E2B8106567E; Sat, 30 Apr 2011 05:28:55 +0000 (UTC) (envelope-from marcel@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 4E6878FC19; Sat, 30 Apr 2011 05:28:55 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id p3U5StZe031261; Sat, 30 Apr 2011 05:28:55 GMT (envelope-from marcel@svn.freebsd.org) Received: (from marcel@localhost) by svn.freebsd.org (8.14.4/8.14.4/Submit) id p3U5StZN031259; Sat, 30 Apr 2011 05:28:55 GMT (envelope-from marcel@svn.freebsd.org) Message-Id: <201104300528.p3U5StZN031259@svn.freebsd.org> From: Marcel Moolenaar Date: Sat, 30 Apr 2011 05:28:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r221242 - stable/8/sys/cddl/contrib/opensolaris/uts/common/fs/zfs X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 30 Apr 2011 05:28:55 -0000 Author: marcel Date: Sat Apr 30 05:28:54 2011 New Revision: 221242 URL: http://svn.freebsd.org/changeset/base/221242 Log: Unbreak non-x86 and in particular ia64, The default stack size on ia64 is 32KB. Unconditionally hardcoding a 16KB stack for reasons of increasing the stack size on i386 is just wrong. If the size was indeed expressed in terms of pages, as the commit log suggested, then it would happen to be just right for ia64, though only accidentally. Pointy hat: avg, pjd Modified: stable/8/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/txg.c Modified: stable/8/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/txg.c ============================================================================== --- stable/8/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/txg.c Sat Apr 30 02:44:15 2011 (r221241) +++ stable/8/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/txg.c Sat Apr 30 05:28:54 2011 (r221242) @@ -129,6 +129,7 @@ void txg_sync_start(dsl_pool_t *dp) { tx_state_t *tx = &dp->dp_tx; + size_t stksize = 0; mutex_enter(&tx->tx_sync_lock); @@ -146,7 +147,10 @@ txg_sync_start(dsl_pool_t *dp) * 32-bit x86. This is due in part to nested pools and * scrub_visitbp() recursion. */ - tx->tx_sync_thread = thread_create(NULL, 16<<10, txg_sync_thread, +#ifdef __i386__ + stksize = 16 << 10; +#endif + tx->tx_sync_thread = thread_create(NULL, stksize, txg_sync_thread, dp, 0, &p0, TS_RUN, minclsyspri); mutex_exit(&tx->tx_sync_lock);