From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 109527 invoked by alias); 7 Aug 2017 19:53:07 -0000 Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org Received: (qmail 109496 invoked by uid 89); 7 Aug 2017 19:53:05 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.4 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 spammy=HIronPort-PHdr:co6odzbGH4 X-HELO: mailsec104.isp.belgacom.be Received: from mailsec104.isp.belgacom.be (HELO mailsec104.isp.belgacom.be) (195.238.20.100) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 07 Aug 2017 19:52:58 +0000 IronPort-PHdr: =?us-ascii?q?9a23=3A/V3VNhfxZVjpI5t9XizSmCGKlGMj4u6mDksu8pMi?= =?us-ascii?q?zoh2WeGdxcS/Zh7h7PlgxGXEQZ/co6odzbGH4+a4ASQp2tWoiDg6aptCVhsI24?= =?us-ascii?q?09vjcLJ4q7M3D9N+PgdCcgHc5PBxdP9nC/NlVJSo6lPwWB6nK94iQPFRrhKAF7?= =?us-ascii?q?Ovr6GpLIj8Swyuu+54Dfbx9GiTe5Yr5+Ngm6oRnMvcQKnIVuLbo8xAHUqXVSYe?= =?us-ascii?q?RWwm1oJVOXnxni48q74YBu/SdNtf8/7sBMSar1cbg2QrxeFzQmLns65Nb3uhnZ?= =?us-ascii?q?TAuA/WUTX2MLmRdVGQfF7RX6XpDssivms+d2xSeXMdHqQb0yRD+v9LlgRgP2hy?= =?us-ascii?q?gbNj456GDXhdJ2jKJHuxKquhhzz5fJbI2JKPZye6XQds4YS2VcRMZcTy9PDJ68?= =?us-ascii?q?YYURAeQOP+hYoJX6qVQBohWzHhWsCeH1xzNUnHL6wa833uI8Gg/GxgwgGNcOvW?= =?us-ascii?q?zOotX1NacSVeG1zLHQzTrdcvhZ2S3y6JLPchA4vPGMXKx/cdDKyUIyEA7FllWQ?= =?us-ascii?q?qY3hPzOUzuQNq3aU4/BuVO21kW4nrBhxoiWuxsgykInJnZkYykvH9SR5xoY6O8?= =?us-ascii?q?G4RFRgbtG6CZZdsTyROYhuQs46QGxkpTw2xqMJtJO5ZiQG1Zoqyh3FZ/GJc4WF?= =?us-ascii?q?5A/oWvyLLjdinn1lfaqyhxO18Ue91OLxTtK00FNWripdldnMq2wN2wTT6seZTv?= =?us-ascii?q?t9+V+s2TOS2AzL6+FEJ147lbbDJpMi37I8jIQfvEvBEyPshUn7gqybel8q9+Wo?= =?us-ascii?q?8+jnZ6/ppp6YN496kAH+NaEul9SnAeQ4MwgOW2mb+fyk1LL950H4Tq9Fjucxkq?= =?us-ascii?q?nArZDaJNoUprSiAwJOyYYj6Ba+DzG439QEh3UIN0xKdAqdj4f1I1HOPOz4DfCn?= =?us-ascii?q?jlS1kTdqx+rJPrrlApXRMnfOi7jhfbNn5E5dzAo/18xQ55VRCrsZOvL8RlfxtM?= =?us-ascii?q?DEDh8+KwG72eLnB8ty14MaWGKPBLKWMLjIvl6I+O4iLe2BaZQauDb4Mfcl5vru?= =?us-ascii?q?gWUlll8aeKn6lacQPUGxGbxfIg3NeHv9i9AFDWwisQ83Teisg1qHB219fXG3Cp?= =?us-ascii?q?o85zU6EJqrRbjKXIe0nb2MxjzzSoVWZ2RHEkiBV2jhbYKdRvYBcjm6OcxwlDEY?= =?us-ascii?q?E7KsHdxynSqyvRP3nuI0ZtHf/TcV4Ne6jIB4?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2D3AQC8xIhZ/yOK91FcHAEBBAEBCgEBF?= =?us-ascii?q?gEBAQMBAQEJAQEBgy+FI4pkc5EALwGVZYIShUcChFpAGAEBAQEBAQEBAQEBaih?= =?us-ascii?q?CDoFjJAGCQQEEASMzIwULCAMaAiYCAjkeBoo6DKwngiaLTgEBCAImgQuCHYNOh?= =?us-ascii?q?QqIBoJhBaAPgiiSC4IPiVOGapYIHziBCnSFdR+BaT6FM4RvAQEB?= X-IPAS-Result: =?us-ascii?q?A2D3AQC8xIhZ/yOK91FcHAEBBAEBCgEBFgEBAQMBAQEJAQE?= =?us-ascii?q?Bgy+FI4pkc5EALwGVZYIShUcChFpAGAEBAQEBAQEBAQEBaihCDoFjJAGCQQEEA?= =?us-ascii?q?SMzIwULCAMaAiYCAjkeBoo6DKwngiaLTgEBCAImgQuCHYNOhQqIBoJhBaAPgii?= =?us-ascii?q?SC4IPiVOGapYIHziBCnSFdR+BaT6FM4RvAQEB?= Received: from 35.138-247-81.adsl-dyn.isp.belgacom.be (HELO md) ([81.247.138.35]) by relay.skynet.be with ESMTP/TLS/AES128-GCM-SHA256; 07 Aug 2017 21:52:55 +0200 Message-ID: <1502135603.1467.33.camel@skynet.be> Subject: Re: Large memory usage by gdb From: Philippe Waroquiers To: Yao Qi Cc: Alex Lindsay , gdb@sourceware.org Date: Mon, 07 Aug 2017 19:53:00 -0000 In-Reply-To: <86mv7b20z2.fsf@gmail.com> References: <420b109c-1610-d687-ae9a-b172542fafca@gmail.com> <6f204cea-21bf-3f70-aa61-df02aeba8a24@gmail.com> <86mv7b20z2.fsf@gmail.com> Content-Type: text/plain; charset="UTF-8" Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-IsSubscribed: yes X-SW-Source: 2017-08/txt/msg00015.txt.bz2 On Mon, 2017-08-07 at 10:14 +0100, Yao Qi wrote: > leaks are bugs, and we should fix them. I can find these leaks in > valgrind too, When running valgrind + gdb on a small program, I also get many errors like the below (GDB 8.0, Debian 8). Do you also see that ? Philippe ==9360== Invalid read of size 4 ==9360== at 0x58AD9F3: PyObject_Free (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x4C5E7F: gdb_Py_DECREF (python-internal.h:194) ==9360== by 0x4C5E7F: decref (py-ref.h:36) ==9360== by 0x4C5E7F: ~ref_ptr (gdb_ref_ptr.h:91) ==9360== by 0x4C5E7F: unicode_to_encoded_string(_object*, char const*) (py-utils.c:74) ==9360== by 0x4C5F9C: python_string_to_host_string(_object*) (py-utils.c:158) ==9360== by 0x4BBDDD: get_doc_string(_object*, _object*) (py-param.c:314) ==9360== by 0x4BC11D: parmpy_init(_object*, _object*, _object*) (py-param.c:707) ==9360== by 0x580AD5B: ??? (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x5899BE2: PyObject_Call (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x58CD441: PyEval_EvalFrameEx (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x594218F: PyEval_EvalCodeEx (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x589132B: ??? (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x5899BE2: PyObject_Call (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x58DC0E4: ??? (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== Address 0x6f0c020 is 1,280 bytes inside a block of size 3,133 free'd ==9360== at 0x4C29B8A: realloc (vg_replace_malloc.c:785) ==9360== by 0x5862625: _PyString_Resize (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x57E40AC: PyUnicodeUCS4_EncodeUTF8 (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x5848A98: ??? (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x5899BE2: PyObject_Call (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x59416E6: PyEval_CallObjectWithKeywords (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x5906C4D: PyCodec_Encode (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x57E4AB4: PyUnicodeUCS4_AsEncodedString (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x4C5E44: unicode_to_encoded_string(_object*, char const*) (py-utils.c:74) ==9360== by 0x4C5F9C: python_string_to_host_string(_object*) (py-utils.c:158) ==9360== by 0x4BBDDD: get_doc_string(_object*, _object*) (py-param.c:314) ==9360== by 0x4BC11D: parmpy_init(_object*, _object*, _object*) (py-param.c:707) ==9360== Block was alloc'd at ==9360== at 0x4C27BF5: malloc (vg_replace_malloc.c:299) ==9360== by 0x5864249: PyString_FromStringAndSize (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x57E41C6: PyUnicodeUCS4_EncodeUTF8 (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x5848A98: ??? (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x5899BE2: PyObject_Call (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x59416E6: PyEval_CallObjectWithKeywords (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x5906C4D: PyCodec_Encode (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x57E4AB4: PyUnicodeUCS4_AsEncodedString (in /usr/lib/x86_64-linux-gnu/libpython2.7.so.1.0) ==9360== by 0x4C5E44: unicode_to_encoded_string(_object*, char const*) (py-utils.c:74) ==9360== by 0x4C5F9C: python_string_to_host_string(_object*) (py-utils.c:158) ==9360== by 0x4BBDDD: get_doc_string(_object*, _object*) (py-param.c:314) ==9360== by 0x4BC11D: parmpy_init(_object*, _object*, _object*) (py-param.c:707)