From owner-freebsd-toolchain@freebsd.org Fri Jan 6 15:19:36 2017 Return-Path: Delivered-To: freebsd-toolchain@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A1FA0CA2AC9; Fri, 6 Jan 2017 15:19:36 +0000 (UTC) (envelope-from chmeeedalf@gmail.com) Received: from mail-qk0-x22f.google.com (mail-qk0-x22f.google.com [IPv6:2607:f8b0:400d:c09::22f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 5C8E61E52; Fri, 6 Jan 2017 15:19:36 +0000 (UTC) (envelope-from chmeeedalf@gmail.com) Received: by mail-qk0-x22f.google.com with SMTP id a20so78124695qkc.1; Fri, 06 Jan 2017 07:19:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=q8qBlplW4hmqZa3X+sg1XfesZaBU5y2khuCRd6UixIc=; b=uoy+t5/2rPIQ4GDlfEtPIqonwR7GRiIjd5K7FIycUe9YB8MOudA2Gu68jTmtc3/whv OnNQ0un6m79z+1EmnMpJP2NEjEINYlaUNGJA0kF+AGBgdcbonaLgG0osqMg3o4Krhobx Nmxns2eR8YmWSX+tXNzJS2ocZko823pjOoEscYJkFPk8AjCEBoNjfiUiEt2reYIAljEX JnN2O27O0PUM07OwJ+g7vqGLufmmItvnaoRstgWDzGhHYoXcRtIkqdu7gWENxrZ2GL9I lEzSYjA5K4Pr9rz6KwXM3x3aF8fuXSFyV6lBRLCCFDWnPmjh2vrLSyE4mAJ9SBnmWqNq 2szg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=q8qBlplW4hmqZa3X+sg1XfesZaBU5y2khuCRd6UixIc=; b=sdptiSN6csDnFRSbsE9FR/v+QuSC9Z6A2g9uD6PWzE8vq3bqEq08c03fjFJT9Ch3rm k7fhNjDLbYR83nVB8YOfua7zG3MjrD4HHoQdkxQ9VQmE1MwBpUHF0ZAYmtgJ3MW+X3nH XlpWjZHKNND01cUeh7gKjifY0HpRbtp8JqPekoVoOIPcxI694u+2gNNTzT87FvDk7LRc B5T8BT5PzuqGYoMl0inSYxJEOA3ihFdYvCslZyXv7UDbGsi1rrwasFobC4FXD+QzWq9j YZeOxhIR7aiARIYdZsL4lpiGqsCz8aM0PWdy1mVDPeu/wUsEGCzN+x6p2M3HVVRtH1Af HJqw== X-Gm-Message-State: AIkVDXKTItgJQn6U+Yuu4vswh+CkVFKiahMHAfGo3P0XtGrpP+Z0hQPjl4Do9IwH2xaQYCKhDfGCkioJ4iDDJg== X-Received: by 10.55.160.65 with SMTP id j62mr69859999qke.239.1483715975491; Fri, 06 Jan 2017 07:19:35 -0800 (PST) MIME-Version: 1.0 Sender: chmeeedalf@gmail.com Received: by 10.12.157.66 with HTTP; Fri, 6 Jan 2017 07:19:34 -0800 (PST) In-Reply-To: <496BD75E-3D29-4717-BDE8-9AAFCA27FD0C@dsl-only.net> References: <496BD75E-3D29-4717-BDE8-9AAFCA27FD0C@dsl-only.net> From: Justin Hibbits Date: Fri, 6 Jan 2017 09:19:34 -0600 X-Google-Sender-Auth: 4KPABkv6UPVLMELJgsCwt153grg Message-ID: Subject: Re: Bug 215821 for TARGET_ARCH=powerpc64: bootstrapped ld produces a "shared object" when given a -pie option; junk kernel produced crashes To: Mark Millard Cc: FreeBSD Toolchain , FreeBSD PowerPC ML Content-Type: text/plain; charset=UTF-8 X-BeenThere: freebsd-toolchain@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Maintenance of FreeBSD's integrated toolchain List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 06 Jan 2017 15:19:36 -0000 On Fri, Jan 6, 2017 at 3:04 AM, Mark Millard wrote: > I have submitted a FreeBSD bugzilla entry: > > Bug 215821 - head -r311147's bootstrapped ld for TARGET_ARCH=powerpc64 produces kernel.full as a "shared object" for -pie instead of as a "executable": booting the produced kernel crashes > > In essence what the .meta file for kernel.full shows as: > > CMD @ld -Bdynamic -T /usr/src/sys/conf/ldscript.powerpc64 -pie --no-warn-mismatch --warn-common --export-dynamic --dynamic-linker /red/herring -o kernel.full -X locore.o . . . > > (note the -pie) ends up producing: > > ELF 64-bit MSB shared object, 64-bit PowerPC or cisco 7500, version 1 (FreeBSD), dynamically linked, interpreter /red/herring, not stripped > > instead of what it should have produced: > > ELF 64-bit MSB executable, 64-bit PowerPC or cisco 7500, version 1 (FreeBSD), dynamically linked, interpreter /red/herring, not stripped > > The differences in content leads to the powerpc64 crashing at the start of the produced kernel. > > This means needing to use devel/binutils and/or devel/powerpc64-binutils instead (at least for ld). > > === > Mark Millard > markmi at dsl-only.net Hi Mark, Nathan made a change 2 years ago to build the kernel as a shared object, so that it can be relocatable. Looking at my kernel.full (base gcc build): world/zhabar/home/chmeee/freebsd/pristine/sys/ZHABAR/kernel.full: ELF 64-bit MSB shared object, 64-bit PowerPC or cisco 7500, version 1 (FreeBSD), dynamically linked, interpreter /red/herring, not stripped - Justin