From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 80348 invoked by alias); 5 Nov 2019 01:59:18 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 80295 invoked by uid 89); 5 Nov 2019 01:59:18 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-16.4 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,SPF_HELO_PASS autolearn=ham version=3.3.1 spammy=xfree, auxvh, UD:auxv.h, auxv.h X-HELO: mx1.redhat.com Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Tue, 05 Nov 2019 01:59:16 +0000 Received: from mail-vk1-f198.google.com (mail-vk1-f198.google.com [209.85.221.198]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 982E859449 for ; Tue, 5 Nov 2019 01:59:15 +0000 (UTC) Received: by mail-vk1-f198.google.com with SMTP id k127so8714679vka.10 for ; Mon, 04 Nov 2019 17:59:15 -0800 (PST) MIME-Version: 1.0 References: <20190820202809.25367-1-amerey@redhat.com> <87pnj6dl3k.fsf@tromey.com> <87sgn71ji6.fsf@tromey.com> <87lfsye5l5.fsf@redhat.com> <87bltrelab.fsf@redhat.com> <20191104162616.GA13319@redhat.com> In-Reply-To: <20191104162616.GA13319@redhat.com> From: Aaron Merey Date: Tue, 05 Nov 2019 01:59:00 -0000 Message-ID: Subject: Re: [RFC PATCH] Support debuginfo and source file fetching via debuginfo server To: "Frank Ch. Eigler" Cc: Simon Marchi , Tom Tromey , Christian Biesinger via gdb-patches , Christian Biesinger Content-Type: multipart/mixed; boundary="00000000000078216805968fc749" X-SW-Source: 2019-11/txt/msg00112.txt.bz2 --00000000000078216805968fc749 Content-Type: text/plain; charset="UTF-8" Content-length: 744 On Mon, Nov 4, 2019 at 11:26 AM Frank Ch. Eigler wrote: > > Hi - > > > I haven't followed this thread closely, so it might be an obvious "no", but > > I was wondering if the library could offer to install a callback that is call > > relatively often, allowing GDB to interrupt the operation [...] > > That could also work, at the cost of extending the API. Will play with it. > > - FChE Attached is the updated debuginfo and source lookup code, using the callback idea that Simon suggested. Downloads are now cancelled upon SIGINT and the callback can be modified with code that prints progress messages (the a and b parameters in the callback represent the numerator and denominator of the download's completion fraction). --00000000000078216805968fc749 Content-Type: text/x-patch; charset="US-ASCII"; name="debuginfo_and_source_lookups.patch" Content-Disposition: attachment; filename="debuginfo_and_source_lookups.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_k2l79saq0 Content-length: 5307 IGdkYi9lbGZyZWFkLmMgfCAzNiArKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKy0KIGdkYi9zb3VyY2UuYyAgfCA0NyArKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogMiBmaWxlcyBj aGFuZ2VkLCA4MiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZm IC0tZ2l0IGEvZ2RiL2VsZnJlYWQuYyBiL2dkYi9lbGZyZWFkLmMKaW5kZXgg MjI2ZTNmMDlkMy4uZTI0YmNhNjEwZiAxMDA2NDQKLS0tIGEvZ2RiL2VsZnJl YWQuYworKysgYi9nZGIvZWxmcmVhZC5jCkBAIC00OCw3ICs0OCwxMSBAQAog I2luY2x1ZGUgImF1eHYuaCIKICNpbmNsdWRlICJtZGVidWdyZWFkLmgiCiAj aW5jbHVkZSAiY3RmcmVhZC5oIgorI2luY2x1ZGUgImdkYnN1cHBvcnQvc2Nv cGVkX2ZkLmgiCiAjaW5jbHVkZSAiZ2Ric3VwcG9ydC9nZGJfc3RyaW5nX3Zp ZXcuaCIKKyNpZiBIQVZFX0xJQkRFQlVHSU5GT0QKKyNpbmNsdWRlIDxlbGZ1 dGlscy9kZWJ1Z2luZm9kLmg+CisjZW5kaWYKIAogLyogRm9yd2FyZCBkZWNs YXJhdGlvbnMuICAqLwogZXh0ZXJuIGNvbnN0IHN0cnVjdCBzeW1fZm5zIGVs Zl9zeW1fZm5zX2dkYl9pbmRleDsKQEAgLTEzMTEsOCArMTMxNSwzOCBAQCBl bGZfc3ltZmlsZV9yZWFkIChzdHJ1Y3Qgb2JqZmlsZSAqb2JqZmlsZSwgc3lt ZmlsZV9hZGRfZmxhZ3Mgc3ltZmlsZV9mbGFncykKIAkgIHN5bWJvbF9maWxl X2FkZF9zZXBhcmF0ZSAoZGVidWdfYmZkLmdldCAoKSwgZGVidWdmaWxlLmNf c3RyICgpLAogCQkJCSAgICBzeW1maWxlX2ZsYWdzLCBvYmpmaWxlKTsKIAl9 Ci0JZWxzZQorICAgICAgZWxzZQorICAgICAgICB7CiAJICBoYXNfZHdhcmYy ID0gZmFsc2U7CisKKyNpZiBIQVZFX0xJQkRFQlVHSU5GT0QKKyAgICAgICAg ICBjb25zdCBzdHJ1Y3QgYmZkX2J1aWxkX2lkICpidWlsZF9pZDsKKyAgICAg ICAgICBjaGFyICpzeW1maWxlX3BhdGg7CisKKyAgICAgICAgICBidWlsZF9p ZCA9IGJ1aWxkX2lkX2JmZF9nZXQgKG9iamZpbGUtPm9iZmQpOworCisgICAg ICAgICAgLyogQWxsb3cgZGVidWdpbmZvZCB0byBhYm9ydCB0aGUgZG93bmxv YWQgaWYgU0lHSU5UIGlzIHJhaXNlZC4gICovCisgICAgICAgICAgZGVidWdp bmZvZF9zZXRfcHJvZ3Jlc3NmbiAoCisgICAgICAgICAgICBbXSAobG9uZyBh LCBsb25nIGIpIHsgcmV0dXJuIDEgPyBjaGVja19xdWl0X2ZsYWcgKCkgOiAw OyB9CisgICAgICAgICAgKTsKKworICAgICAgICAgIC8qIFF1ZXJ5IGRlYnVn aW5mb2Qgc2VydmVycyBmb3Igc3ltZmlsZS4gICovCisgICAgICAgICAgc2Nv cGVkX2ZkIGZkIChkZWJ1Z2luZm9kX2ZpbmRfZGVidWdpbmZvIChidWlsZF9p ZC0+ZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGJ1aWxkX2lkLT5zaXplLAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJnN5bWZp bGVfcGF0aCkpOworCisgICAgICAgICAgaWYgKGZkLmdldCAoKSA+PSAwKQor CSAgICAgeworICAgICAgICAgICAgICAvKiBmaWxlIHN1Y2Nlc3NmdWxseSBy ZXRyaWV2ZWQgZnJvbSBzZXJ2ZXIuICAqLworICAgICAgICAgICAgICBnZGJf YmZkX3JlZl9wdHIgZGVidWdfYmZkIChzeW1maWxlX2JmZF9vcGVuIChzeW1m aWxlX3BhdGgpKTsKKworICAgICAgICAgICAgICBzeW1ib2xfZmlsZV9hZGRf c2VwYXJhdGUgKGRlYnVnX2JmZC5nZXQgKCksIHN5bWZpbGVfcGF0aCwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzeW1maWxl X2ZsYWdzLCBvYmpmaWxlKTsKKyAgICAgICAgICAgICAgeGZyZWUgKHN5bWZp bGVfcGF0aCk7CisgICAgICAgICAgICAgIGhhc19kd2FyZjIgPSB0cnVlOwor ICAgICAgICAgICAgfQorI2VuZGlmIC8qIExJQkRFQlVHSU5GT0QgKi8KKyAg ICAgICAgfQogICAgIH0KIAogICAvKiBSZWFkIHRoZSBDVEYgc2VjdGlvbiBv bmx5IGlmIHRoZXJlIGlzIG5vIERXQVJGIGluZm8uICAqLwpkaWZmIC0tZ2l0 IGEvZ2RiL3NvdXJjZS5jIGIvZ2RiL3NvdXJjZS5jCmluZGV4IDlmNTNkNjU0 ZjMuLjRlOGE2NTU4YjcgMTAwNjQ0Ci0tLSBhL2dkYi9zb3VyY2UuYworKysg Yi9nZGIvc291cmNlLmMKQEAgLTMwLDYgKzMwLDEwIEBACiAKICNpbmNsdWRl IDxzeXMvdHlwZXMuaD4KICNpbmNsdWRlIDxmY250bC5oPgorI2luY2x1ZGUg ImJ1aWxkLWlkLmgiCisjaWZkZWYgSEFWRV9MSUJERUJVR0lORk9ECisjaW5j bHVkZSA8ZWxmdXRpbHMvZGVidWdpbmZvZC5oPgorI2VuZGlmCiAjaW5jbHVk ZSAiZ2RiY29yZS5oIgogI2luY2x1ZGUgImdkYl9yZWdleC5oIgogI2luY2x1 ZGUgInN5bWZpbGUuaCIKQEAgLTExMjcsNiArMTEzMSw0OSBAQCBvcGVuX3Nv dXJjZV9maWxlIChzdHJ1Y3Qgc3ltdGFiICpzKQogICBzLT5mdWxsbmFtZSA9 IE5VTEw7CiAgIHNjb3BlZF9mZCBmZCA9IGZpbmRfYW5kX29wZW5fc291cmNl IChzLT5maWxlbmFtZSwgU1lNVEFCX0RJUk5BTUUgKHMpLAogCQkJCSAgICAg ICAmZnVsbG5hbWUpOworCisjaWYgSEFWRV9MSUJERUJVR0lORk9ECisgIGlm IChmZC5nZXQgKCkgPCAwICYmIFNZTVRBQl9DT01QVU5JVCAocykgIT0gTlVM TCkKKyAgICB7CisgICAgICBjb25zdCBzdHJ1Y3QgYmZkX2J1aWxkX2lkICpi dWlsZF9pZDsKKyAgICAgIGNvbnN0IG9iamZpbGUgKm9mcCA9IENPTVBVTklU X09CSkZJTEUgKFNZTVRBQl9DT01QVU5JVCAocykpOworCisgICAgICBzdGQ6 OnN0cmluZyBzcmNwYXRoOworICAgICAgaWYgKElTX0RJUl9TRVBBUkFUT1Ig KHMtPmZpbGVuYW1lWzBdKSkKKyAgICAgICAgc3JjcGF0aCA9IHMtPmZpbGVu YW1lOworICAgICAgZWxzZQorICAgICAgICB7CisgICAgICAgICAgc3JjcGF0 aCA9IFNZTVRBQl9ESVJOQU1FIChzKTsKKyAgICAgICAgICBzcmNwYXRoICs9 IFNMQVNIX1NUUklORzsKKyAgICAgICAgICBzcmNwYXRoICs9IHMtPmZpbGVu YW1lOworICAgICAgICB9CisKKyAgICAgIGJ1aWxkX2lkID0gYnVpbGRfaWRf YmZkX2dldCAob2ZwLT5vYmZkKTsKKworICAgICAgLyogUXVlcnkgZGVidWdp bmZvZCBmb3IgdGhlIHNvdXJjZSBmaWxlLiAgKi8KKyAgICAgIGlmIChidWls ZF9pZCAhPSBOVUxMKQorICAgICAgICB7CisgICAgICAgICAgY2hhciAqbmFt ZV9pbl9jYWNoZTsKKworICAgICAgICAgIC8qIEFsbG93IGRlYnVnaW5mb2Qg dG8gYWJvcnQgdGhlIGRvd25sb2FkIGlmIFNJR0lOVCBpcyByYWlzZWQuICAq LworICAgICAgICAgIGRlYnVnaW5mb2Rfc2V0X3Byb2dyZXNzZm4gKAorICAg ICAgICAgICAgW10gKGxvbmcgYSwgbG9uZyBiKSB7IHJldHVybiAxID8gY2hl Y2tfcXVpdF9mbGFnICgpIDogMDsgfQorICAgICAgICAgICk7CisKKyAgICAg ICAgICBzY29wZWRfZmQgc3JjX2ZkIChkZWJ1Z2luZm9kX2ZpbmRfc291cmNl IChidWlsZF9pZC0+ZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBidWlsZF9pZC0+c2l6ZSwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBzcmNwYXRoLmNfc3RyICgpLAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZuYW1lX2luX2NhY2hl KSk7CisKKyAgICAgICAgICBpZiAoc3JjX2ZkLmdldCAoKSA+PSAwKQorICAg ICAgICAgICAgZnVsbG5hbWUucmVzZXQgKG5hbWVfaW5fY2FjaGUpOworCisg ICAgICAgICAgcy0+ZnVsbG5hbWUgPSBmdWxsbmFtZS5yZWxlYXNlICgpOwor ICAgICAgICAgIHJldHVybiBzcmNfZmQ7CisgICAgICAgIH0KKyAgICB9Cisj ZW5kaWYgLyogSEFWRV9MSUJERUJVR0lORk9EICovCisKICAgcy0+ZnVsbG5h bWUgPSBmdWxsbmFtZS5yZWxlYXNlICgpOwogICByZXR1cm4gZmQ7CiB9Cg== --00000000000078216805968fc749--