From owner-freebsd-hackers@freebsd.org Mon Aug 6 09:06:04 2018 Return-Path: Delivered-To: freebsd-hackers@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 65F0C105051A for ; Mon, 6 Aug 2018 09:06:04 +0000 (UTC) (envelope-from pratiy0100@gmail.com) Received: from mail-ed1-f67.google.com (mail-ed1-f67.google.com [209.85.208.67]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id DFF5D8FAD9 for ; Mon, 6 Aug 2018 09:06:03 +0000 (UTC) (envelope-from pratiy0100@gmail.com) Received: by mail-ed1-f67.google.com with SMTP id f23-v6so4758638edr.11 for ; Mon, 06 Aug 2018 02:06:03 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=lAzJmZyaQll5+oCUBgNfKw89enxIcl2bUlN4AVTNqv8=; b=IJTW3vedoNq9cYxCyCtpTyrCjfrb/4fz1KnyaPYoIQ0oUF8zdvwIfo8YxWCcKU+ARa l+PQpo0dmMP+CBbA8GJrEGTs5PebEiYOFucYYMIEd0lEMTHVVNujQyYE/sluwhmXMzvq ZzYzmatebcXkbTxi3JLgDY+G2aAwfpft8OcsK7+gTjf9RClnFh9qdwiJA7b7Qi0ZV/rb MfCH/wTy1IUTdXdoIPoeX1tTITuVS4WzskicbnU9x0A7DnoadiHvN0eQwuoO79KyW6Is QAvGIYJxSiJX4DqUNg899FAc8jNduK0c2p/1leRKODGY+6yXlzI9+64+0R3jduwO6g0h zQgg== X-Gm-Message-State: AOUpUlEVEX5TU1DaIvr7+1wDXh5PT5sNTBWCASinm4ya+/ez8FgqL4Oa YIOH9EGcChWeLacqgPRCXuh8MX/CC9M= X-Google-Smtp-Source: AAOMgpc/SxKTT2JXAGJdsMYmZ1LwALyBf6fzKd/Ylpe/FkwmqLR8MUDKVkcqQCKtyFe1d6eYN8jayw== X-Received: by 2002:a50:90e7:: with SMTP id d36-v6mr16946880eda.279.1533544401712; Mon, 06 Aug 2018 01:33:21 -0700 (PDT) Received: from mail-ed1-f45.google.com (mail-ed1-f45.google.com. [209.85.208.45]) by smtp.gmail.com with ESMTPSA id r44-v6sm1092797edd.87.2018.08.06.01.33.21 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 06 Aug 2018 01:33:21 -0700 (PDT) Received: by mail-ed1-f45.google.com with SMTP id h1-v6so4731965eds.1 for ; Mon, 06 Aug 2018 01:33:21 -0700 (PDT) X-Received: by 2002:a50:c8c3:: with SMTP id k3-v6mr16979820edh.193.1533544401469; Mon, 06 Aug 2018 01:33:21 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Pratyush Yadav Date: Mon, 6 Aug 2018 14:02:45 +0530 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: addr2line with FreeBSD kernel failing To: khanzf@gmail.com Cc: freebsd-hackers@freebsd.org Content-Type: text/plain; charset="UTF-8" X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 06 Aug 2018 09:06:04 -0000 On Mon, Aug 6, 2018 at 7:04 AM Farhan Khan wrote: > > Hi all, > > Is there a way to go from a memory address to a kernel symbol? > > I am working with a subsystem that uses a lot of function pointers, > and I am not certain which particular function is being called. I have > dtrace(1) printing out the memory address of the function, like this: > > printf("Runs vap->iv_newstate: 0x%p", vap->iv_newstate); > > The resulting memory address will be 0xffffffff834fa6d0. I was told I > can use addr2line(1), but it seems to fail, as follows: > > # addr2line -e /usr/obj/usr/src/amd64.amd64/sys/GENERIC/kernel.full > ffffffff834fa6d0 > ??:0 > > Am I doing something wrong? Also, if I can do this directly in > dtrace(1), that would be much much better. This is definitely the > installed kernel, so there is no kernel mismatch. I have also tried > using kernel.debug and kernel, same result. I usually do: addr2line -e /usr/lib/debug/boot/kernel/kernel.debug
Try that, maybe it will work for you. PS: I'm not sure addr2line would work for runtime pointers. I use it to translate the instruction pointer addresses to lines. -- Regards, Pratyush Yadav