From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25561 invoked by alias); 2 Jun 2009 05:55:12 -0000 Received: (qmail 25194 invoked by uid 22791); 2 Jun 2009 05:55:10 -0000 X-SWARE-Spam-Status: No, hits=-1.8 required=5.0 tests=AWL,BAYES_00,SARE_MSGID_LONG40,SPF_PASS X-Spam-Check-By: sourceware.org Received: from smtp-out.google.com (HELO smtp-out.google.com) (216.239.33.17) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 02 Jun 2009 05:55:05 +0000 Received: from zps78.corp.google.com (zps78.corp.google.com [172.25.146.78]) by smtp-out.google.com with ESMTP id n525t0Ic011830; Tue, 2 Jun 2009 06:55:01 +0100 Received: from qyk2 (qyk2.prod.google.com [10.241.83.130]) by zps78.corp.google.com with ESMTP id n525snFb019304; Mon, 1 Jun 2009 22:54:58 -0700 Received: by qyk2 with SMTP id 2so433091qyk.33 for ; Mon, 01 Jun 2009 22:54:58 -0700 (PDT) MIME-Version: 1.0 Received: by 10.229.70.210 with SMTP id e18mr1883232qcj.20.1243922098245; Mon, 01 Jun 2009 22:54:58 -0700 (PDT) In-Reply-To: <4A22CB56.3070704@gmail.com> References: <8ac60eac0905311056l3b8edf98rc6abfe28853e0b6d@mail.gmail.com> <4A22CB56.3070704@gmail.com> Date: Tue, 02 Jun 2009 05:55:00 -0000 Message-ID: <8ac60eac0906012254o57756790y9bb4eb23d1d6e5a1@mail.gmail.com> Subject: Re: How to get file descriptor from abfd? From: Paul Pluzhnikov To: Dave Korn Cc: binutils@sourceware.org, Tom Tromey , gdb-patches ml Content-Type: multipart/mixed; boundary=001636426a59cb5038046b572ebc X-System-Of-Record: true X-IsSubscribed: yes 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 X-SW-Source: 2009-06/txt/msg00013.txt.bz2 --001636426a59cb5038046b572ebc Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-length: 726 On Sun, May 31, 2009 at 11:24 AM, Dave Korn wrote: > The cleanest design would be to add an mmap member function to bfd_iovec. Thanks. Would attached patch be acceptable? Tested by building with and without HAVE_MMAP on Linux/x86_64, and by building GDB against this and running its tests. -- Paul Pluzhnikov 2009-06-01 Paul Pluzhnikov * bfd-in2.h: bfd_mmap prototype * bfdio.c (bfd_mmap): New function. * libbfd.h (bfd_iovec): Add bmmap. * cache.c (cache_bmap): New function. (cache_iovec): Initialize bmmap member. * opencls.c (opncls_bmmap): New function. (opncls_iovec): Initialize bmmap member. --001636426a59cb5038046b572ebc Content-Type: text/plain; charset=US-ASCII; name="bfd-mmap-patch-20090601.txt" Content-Disposition: attachment; filename="bfd-mmap-patch-20090601.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_fvg6i9vx0 Content-length: 6662 SW5kZXg6IGJmZC1pbjIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBm aWxlOiAvY3ZzL3NyYy9zcmMvYmZkL2JmZC1pbjIuaCx2CnJldHJpZXZpbmcg cmV2aXNpb24gMS40ODIKZGlmZiAtdSAtcCAtdSAtcjEuNDgyIGJmZC1pbjIu aAotLS0gYmZkLWluMi5oCTEgSnVuIDIwMDkgMTM6MTE6NTEgLTAwMDAJMS40 ODIKKysrIGJmZC1pbjIuaAkyIEp1biAyMDA5IDA1OjMwOjE1IC0wMDAwCkBA IC00NjMsNiArNDYzLDcgQEAgZXh0ZXJuIGludCBiZmRfc2VlayAoYmZkICos IGZpbGVfcHRyLCBpbgogZXh0ZXJuIGZpbGVfcHRyIGJmZF90ZWxsIChiZmQg Kik7CiBleHRlcm4gaW50IGJmZF9mbHVzaCAoYmZkICopOwogZXh0ZXJuIGlu dCBiZmRfc3RhdCAoYmZkICosIHN0cnVjdCBzdGF0ICopOworZXh0ZXJuIHZv aWQgKmJmZF9tbWFwIChiZmQgKiwgdm9pZCAqLCBiZmRfc2l6ZV90eXBlLCBp bnQsIGludCwgZmlsZV9wdHIpOwogCiAvKiBEZXByZWNhdGVkIG9sZCByb3V0 aW5lcy4gICovCiAjaWYgX19HTlVDX18KSW5kZXg6IGJmZGlvLmMKPT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2cy9zcmMvc3JjL2JmZC9i ZmRpby5jLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjIxCmRpZmYgLXUgLXAg LXUgLXIxLjIxIGJmZGlvLmMKLS0tIGJmZGlvLmMJMjQgTWF5IDIwMDkgMTE6 NDc6MjcgLTAwMDAJMS4yMQorKysgYmZkaW8uYwkyIEp1biAyMDA5IDA1OjMw OjE1IC0wMDAwCkBAIC0xNTgsNiArMTU4LDggQEAgREVTQ1JJUFRJT04KIC4g IGludCAoKmJjbG9zZSkgKHN0cnVjdCBiZmQgKmFiZmQpOwogLiAgaW50ICgq YmZsdXNoKSAoc3RydWN0IGJmZCAqYWJmZCk7CiAuICBpbnQgKCpic3RhdCkg KHN0cnVjdCBiZmQgKmFiZmQsIHN0cnVjdCBzdGF0ICpzYik7CisuICB2b2lk ICgqYm1tYXApIChzdHJ1Y3QgYmZkICphYmZkLCB2b2lkICphZGRyLCBiZmRf c2l6ZV90eXBlIGxlbiwKKy4gICAgICAgICAgICAgICAgIGludCBwcm90LCBp bnQgZmxhZ3MsIGZpbGVfcHRyIG9mZnNldCk7CiAufTsKIAogKi8KQEAgLTUx MSwzICs1MTMsMzEgQEAgYmZkX2dldF9zaXplIChiZmQgKmFiZmQpCiAKICAg cmV0dXJuIGJ1Zi5zdF9zaXplOwogfQorCisKKy8qCitGVU5DVElPTgorCWJm ZF9tbWFwCisKK1NZTk9QU0lTCisJdm9pZCAqYmZkX21tYXAgKGJmZCAqYWJm ZCwgdm9pZCAqYWRkciwgYmZkX3NpemVfdHlwZSBsZW4sCisJICAgICAgICAg ICAgICAgIGludCBwcm90LCBpbnQgZmxhZ3MsIGZpbGVfcHRyIG9mZnNldCk7 CisKK0RFU0NSSVBUSU9OCisJUmV0dXJuIG1tYXAoKWVkIHJlZ2lvbiBvZiB0 aGUgZmlsZSwgaWYgcG9zc2libGUgYW5kIGltcGxlbWVudGVkLgorCisqLwor Cit2b2lkICoKK2JmZF9tbWFwIChiZmQgKmFiZmQsIHZvaWQgKmFkZHIsIGJm ZF9zaXplX3R5cGUgbGVuLAorCSAgaW50IHByb3QsIGludCBmbGFncywgZmls ZV9wdHIgb2Zmc2V0KQoreworICB2b2lkICpyZXQgPSAodm9pZCAqKS0xOwor ICBpZiAoKGFiZmQtPmZsYWdzICYgQkZEX0lOX01FTU9SWSkgIT0gMCkKKyAg ICByZXR1cm4gcmV0OworCisgIGlmIChhYmZkLT5pb3ZlYyA9PSBOVUxMKQor ICAgIHJldHVybiByZXQ7CisKKyAgcmV0dXJuIGFiZmQtPmlvdmVjLT5ibW1h cCAoYWJmZCwgYWRkciwgbGVuLCBwcm90LCBmbGFncywgb2Zmc2V0KTsKK30K SW5kZXg6IGNhY2hlLmMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmls ZTogL2N2cy9zcmMvc3JjL2JmZC9jYWNoZS5jLHYKcmV0cmlldmluZyByZXZp c2lvbiAxLjM0CmRpZmYgLXUgLXAgLXUgLXIxLjM0IGNhY2hlLmMKLS0tIGNh Y2hlLmMJMzAgT2N0IDIwMDggMDk6MDU6MzIgLTAwMDAJMS4zNAorKysgY2Fj aGUuYwkyIEp1biAyMDA5IDA1OjMwOjE1IC0wMDAwCkBAIC00Niw2ICs0Niwx MCBAQCBTVUJTRUNUSU9OCiAjaW5jbHVkZSAibGliYmZkLmgiCiAjaW5jbHVk ZSAibGliaWJlcnR5LmgiCiAKKyNpZmRlZiBIQVZFX01NQVAKKyNpbmNsdWRl IDxzeXMvbW1hbi5oPgorI2VuZGlmCisKIC8qIEluIHNvbWUgY2FzZXMgd2Ug Y2FuIG9wdGltaXplIGNhY2hlIG9wZXJhdGlvbiB3aGVuIHJlb3BlbmluZyBm aWxlcy4KICAgIEZvciBpbnN0YW5jZSwgYSBmbHVzaCBpcyBlbnRpcmVseSB1 bm5lY2Vzc2FyeSBpZiB0aGUgZmlsZSBpcyBhbHJlYWR5CiAgICBjbG9zZWQs IHNvIGEgZmx1c2ggd291bGQgdXNlIENBQ0hFX05PX09QRU4uICBTaW1pbGFy bHksIGEgc2VlayB1c2luZwpAQCAtMzg4LDEwICszOTIsMzggQEAgY2FjaGVf YnN0YXQgKHN0cnVjdCBiZmQgKmFiZmQsIHN0cnVjdCBzdAogICByZXR1cm4g c3RzOwogfQogCitzdGF0aWMgdm9pZCAqCitjYWNoZV9ibW1hcCAoc3RydWN0 IGJmZCAqYWJmZCBBVFRSSUJVVEVfVU5VU0VELAorCSAgICAgdm9pZCAqYWRk ciBBVFRSSUJVVEVfVU5VU0VELAorCSAgICAgYmZkX3NpemVfdHlwZSBsZW4g QVRUUklCVVRFX1VOVVNFRCwKKwkgICAgIGludCBwcm90IEFUVFJJQlVURV9V TlVTRUQsCisJICAgICBpbnQgZmxhZ3MgQVRUUklCVVRFX1VOVVNFRCwKKwkg ICAgIGZpbGVfcHRyIG9mZnNldCBBVFRSSUJVVEVfVU5VU0VEKQoreworICB2 b2lkICpyZXQgPSAodm9pZCAqKS0xOworCisgIGlmICgoYWJmZC0+ZmxhZ3Mg JiBCRkRfSU5fTUVNT1JZKSAhPSAwKQorICAgIGFib3J0ICgpOworI2lmZGVm IEhBVkVfTU1BUAorICBlbHNlCisgICAgeworICAgICAgRklMRSAqZiA9IGJm ZF9jYWNoZV9sb29rdXAgKGFiZmQsIENBQ0hFX05PX1NFRUtfRVJST1IpOwor ICAgICAgaWYgKGYgPT0gTlVMTCkKKwlyZXR1cm4gcmV0OworCisgICAgICBy ZXQgPSBtbWFwIChhZGRyLCBsZW4sIHByb3QsIGZsYWdzLCBmaWxlbm8gKGYp LCBvZmZzZXQpOworICAgICAgaWYgKHJldCA9PSAodm9pZCAqKS0xKQorCWJm ZF9zZXRfZXJyb3IgKGJmZF9lcnJvcl9zeXN0ZW1fY2FsbCk7CisgICAgfQor I2VuZGlmCisKKyAgcmV0dXJuIHJldDsKK30KKwogc3RhdGljIGNvbnN0IHN0 cnVjdCBiZmRfaW92ZWMgY2FjaGVfaW92ZWMgPQogewogICAmY2FjaGVfYnJl YWQsICZjYWNoZV9id3JpdGUsICZjYWNoZV9idGVsbCwgJmNhY2hlX2JzZWVr LAotICAmY2FjaGVfYmNsb3NlLCAmY2FjaGVfYmZsdXNoLCAmY2FjaGVfYnN0 YXQKKyAgJmNhY2hlX2JjbG9zZSwgJmNhY2hlX2JmbHVzaCwgJmNhY2hlX2Jz dGF0LCAmY2FjaGVfYm1tYXAKIH07CiAKIC8qCkluZGV4OiBsaWJiZmQuaAo9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3ZzL3NyYy9zcmMv YmZkL2xpYmJmZC5oLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjIxNgpkaWZm IC11IC1wIC11IC1yMS4yMTYgbGliYmZkLmgKLS0tIGxpYmJmZC5oCTEgSnVu IDIwMDkgMTM6MTE6NTIgLTAwMDAJMS4yMTYKKysrIGxpYmJmZC5oCTIgSnVu IDIwMDkgMDU6MzA6MTUgLTAwMDAKQEAgLTc3Myw2ICs3NzMsOSBAQCBzdHJ1 Y3QgYmZkX2lvdmVjCiAgIGludCAoKmJjbG9zZSkgKHN0cnVjdCBiZmQgKmFi ZmQpOwogICBpbnQgKCpiZmx1c2gpIChzdHJ1Y3QgYmZkICphYmZkKTsKICAg aW50ICgqYnN0YXQpIChzdHJ1Y3QgYmZkICphYmZkLCBzdHJ1Y3Qgc3RhdCAq c2IpOworICAvKiBKdXN0IGxpa2UgbW1hcDogKHZvaWQqKS0xIG9uIGZhaWx1 cmUsIG1tYXBwZWQgYWRkcmVzcyBvbiBzdWNjZXNzLiAgKi8KKyAgdm9pZCAq KCpibW1hcCkgKHN0cnVjdCBiZmQgKmFiZmQsIHZvaWQgKmFkZHIsIGJmZF9z aXplX3R5cGUgbGVuLAorICAgICAgICAgICAgICAgICAgaW50IHByb3QsIGlu dCBmbGFncywgZmlsZV9wdHIgb2Zmc2V0KTsKIH07CiAvKiBFeHRyYWN0ZWQg ZnJvbSBiZmR3aW4uYy4gICovCiBzdHJ1Y3QgX2JmZF93aW5kb3dfaW50ZXJu YWwgewpJbmRleDogb3BuY2xzLmMKPT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpS Q1MgZmlsZTogL2N2cy9zcmMvc3JjL2JmZC9vcG5jbHMuYyx2CnJldHJpZXZp bmcgcmV2aXNpb24gMS41MwpkaWZmIC11IC1wIC11IC1yMS41MyBvcG5jbHMu YwotLS0gb3BuY2xzLmMJMjMgQXVnIDIwMDggMDg6MDg6NTggLTAwMDAJMS41 MworKysgb3BuY2xzLmMJMiBKdW4gMjAwOSAwNTozMDoxNSAtMDAwMApAQCAt NTA1LDkgKzUwNSwyMCBAQCBvcG5jbHNfYnN0YXQgKHN0cnVjdCBiZmQgKmFi ZmQsIHN0cnVjdCBzCiAgIHJldHVybiAodmVjLT5zdGF0KSAoYWJmZCwgdmVj LT5zdHJlYW0sIHNiKTsKIH0KIAorc3RhdGljIHZvaWQgKgorb3BuY2xzX2Jt bWFwIChzdHJ1Y3QgYmZkICphYmZkIEFUVFJJQlVURV9VTlVTRUQsCisJICAg ICAgdm9pZCAqYWRkciBBVFRSSUJVVEVfVU5VU0VELAorCSAgICAgIGJmZF9z aXplX3R5cGUgbGVuIEFUVFJJQlVURV9VTlVTRUQsCisJICAgICAgaW50IHBy b3QgQVRUUklCVVRFX1VOVVNFRCwKKwkgICAgICBpbnQgZmxhZ3MgQVRUUklC VVRFX1VOVVNFRCwKKwkgICAgICBmaWxlX3B0ciBvZmZzZXQgQVRUUklCVVRF X1VOVVNFRCkKK3sKKyAgcmV0dXJuICh2b2lkICopLTE7Cit9CisKIHN0YXRp YyBjb25zdCBzdHJ1Y3QgYmZkX2lvdmVjIG9wbmNsc19pb3ZlYyA9IHsKICAg Jm9wbmNsc19icmVhZCwgJm9wbmNsc19id3JpdGUsICZvcG5jbHNfYnRlbGws ICZvcG5jbHNfYnNlZWssCi0gICZvcG5jbHNfYmNsb3NlLCAmb3BuY2xzX2Jm bHVzaCwgJm9wbmNsc19ic3RhdAorICAmb3BuY2xzX2JjbG9zZSwgJm9wbmNs c19iZmx1c2gsICZvcG5jbHNfYnN0YXQsICZvcG5jbHNfYm1tYXAKIH07CiAK IGJmZCAqCg== --001636426a59cb5038046b572ebc--