From patchwork Wed Jun 26 21:30:03 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Thomas Schwinge X-Patchwork-Id: 254873 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "localhost", Issuer "www.qmailtoaster.com" (not verified)) by ozlabs.org (Postfix) with ESMTPS id A660D2C007C for ; Thu, 27 Jun 2013 07:31:23 +1000 (EST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:in-reply-to:references:date:message-id :mime-version:content-type; q=dns; s=default; b=EEDjP0H5B0iZEx7i 9oz4Y6Tk2K2ssRa1JQ7l9tvj/5DlUuUFZ+kS6Od9XaK6Tb+D64ZLHf4xtbONwqKh IrulKn6S3C8HSnEoDxcF+dDWriwZ8S0GO7meMHlcO291Gmz9C+3relyQT002J9IP /vni7Xi2pOaeMZr7b93794zjFck= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:in-reply-to:references:date:message-id :mime-version:content-type; s=default; bh=p6fgz92NGzZtDl3VWBEJ1S uvjto=; b=OQ68jsQQ3bPdCMtUdGbh9demD1ocL5b/SGy0HmqZVvpBAD6tg/xUSm ag0Qrc+4qF6cTYPmqKeNj4JN5e7Q1xZFQPR05zZqW/12S1jNAifRs7IFvG9lhudS N1zp1oKZci7Va98rA8/vbb5JmzwbPXi7dw/GrpCNMlfSDLAd8wa2s= Received: (qmail 29698 invoked by alias); 26 Jun 2013 21:31:16 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 29685 invoked by uid 89); 26 Jun 2013 21:31:16 -0000 X-Spam-SWARE-Status: No, score=-6.4 required=5.0 tests=BAYES_00, KHOP_PGP_SIGNED, KHOP_THREADED, RCVD_IN_DNSWL_NONE, SPF_HELO_PASS autolearn=ham version=3.3.1 Received: from smtprelay05.ispgateway.de (HELO smtprelay05.ispgateway.de) (80.67.31.98) by sourceware.org (qpsmtpd/0.84/v0.84-167-ge50287c) with ESMTP; Wed, 26 Jun 2013 21:31:14 +0000 Received: from [217.84.5.141] (helo=stokes.schwinge.homeip.net) by smtprelay05.ispgateway.de with esmtpa (Exim 4.68) (envelope-from ) id 1UrxJ1-0002V6-75 for gcc-patches@gcc.gnu.org; Wed, 26 Jun 2013 23:31:11 +0200 Received: (qmail 17918 invoked from network); 26 Jun 2013 21:30:58 -0000 Received: from kepler.schwinge.homeip.net (192.168.111.7) by stokes.schwinge.homeip.net with QMQP; 26 Jun 2013 21:30:58 -0000 Received: (nullmailer pid 17448 invoked by uid 1000); Wed, 26 Jun 2013 21:30:58 -0000 From: Thomas Schwinge To: Ian Lance Taylor , gcc-patches@gcc.gnu.org Cc: svante.signell@gmail.com, bug-hurd@gnu.org, fotis.koutoulakis@gmail.com, Roland McGrath Subject: Re: GCC's -fsplit-stack disturbing Mach's vm_allocate In-Reply-To: References: <8761x7nkks.fsf@kepler.schwinge.homeip.net> <20130621231655.24D002C14C@topped-with-meat.com> <87r4fumx2g.fsf@kepler.schwinge.homeip.net> User-Agent: Notmuch/0.9-101-g81dad07 (http://notmuchmail.org) Emacs/23.4.1 (i486-pc-linux-gnu) Date: Wed, 26 Jun 2013 23:30:03 +0200 Message-ID: <87ip10o90k.fsf@kepler.schwinge.homeip.net> MIME-Version: 1.0 X-Df-Sender: dGhvbWFzQHNjaHdpbmdlLm5hbWU= X-Virus-Found: No Hi! On Sat, 22 Jun 2013 08:15:46 -0700, Ian Lance Taylor wrote: > Go can work without split stack. In that case libgo will use much > larger stacks for goroutines, to reduce the chance of running out of > stack space (see StackMin in libgo/runtime/proc.c). So the number of > simultaneous goroutines that can be run will be limited. This is > usually OK on x86_64 but it does hamper Go programs running on 32-bit > x86. OK, but that's not the most pressing issue we're having right now. Anyway, as it stands, the split-stack code doesn't work on Hurd, so I disabled it in r200434 as follows: gcc/ * config/i386/gnu.h [TARGET_LIBC_PROVIDES_SSP] (TARGET_CAN_SPLIT_STACK, TARGET_THREAD_SPLIT_STACK_OFFSET): Undefine. Grüße, Thomas diff --git gcc/config/i386/gnu.h gcc/config/i386/gnu.h index 35063e6..4a91c84 100644 --- gcc/config/i386/gnu.h +++ gcc/config/i386/gnu.h @@ -36,6 +36,12 @@ along with GCC. If not, see . #endif #ifdef TARGET_LIBC_PROVIDES_SSP + +/* Not supported yet. */ +# undef TARGET_THREAD_SSP_OFFSET + /* Not supported yet. */ -#undef TARGET_THREAD_SSP_OFFSET +# undef TARGET_CAN_SPLIT_STACK +# undef TARGET_THREAD_SPLIT_STACK_OFFSET + #endif