Project

General

Profile

Actions

Bug #7738

closed

libipadm`ipadm_enable_addr() leaks addrnvl

Added by Yuri Pankov over 5 years ago. Updated over 5 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
lib - userland libraries
Start date:
2017-01-06
Due date:
% Done:

100%

Estimated time:
Difficulty:
Bite-size
Tags:
Gerrit CR:

Description

antares:root:~# ipadm disable-addr -t vmxnet3s1/v4
antares:root:~# mdb /sbin/ipadm
> ::sysbp _exit
> ::run enable-addr -t vmxnet3s1/v4
mdb: stop on entry to _exit
mdb: target stopped at:
0xfee556ba:     nop
mdb: You've got symbols!
Loading modules: [ ld.so.1 libumem.so.1 libc.so.1 libnvpair.so.1 ]
> ::findleaks -d
CACHE     LEAKED   BUFCTL CALLER
08078590       1 080a3ea8 libnvpair.so.1`nv_alloc_sys+0x1b
08078590       1 080a3dd8 libnvpair.so.1`nv_alloc_sys+0x1b
08078590       1 080a3e40 libnvpair.so.1`nv_alloc_sys+0x1b
08078590       1 080a3f10 libnvpair.so.1`nv_alloc_sys+0x1b
08079590       1 080c42d8 libnvpair.so.1`nv_alloc_sys+0x1b
08079590       1 080c4270 libnvpair.so.1`nv_alloc_sys+0x1b
0807b010       1 080c2ca0 libnvpair.so.1`nv_alloc_sys+0x1b
0807b010       1 080c2dd8 libnvpair.so.1`nv_alloc_sys+0x1b
0807b590       1 080a9680 libnvpair.so.1`nv_alloc_sys+0x1b
0807c010       1 080b00d0 libnvpair.so.1`nv_alloc_sys+0x1b
0807c010       1 080b0138 libnvpair.so.1`nv_alloc_sys+0x1b
------------------------------------------------------------------------
   Total      11 buffers, 560 bytes

umem_alloc_32 leak: 1 buffer, 32 bytes
            ADDR          BUFADDR        TIMESTAMP           THREAD
                            CACHE          LASTLOG         CONTENTS
         80a3ea8          809ff08      227fe789810                1
                          8078590                0                0
                 libumem.so.1`umem_cache_alloc_debug+0x1fe
                 libumem.so.1`umem_cache_alloc+0x99
                 libumem.so.1`umem_alloc+0x50
                 libumem.so.1`umem_malloc+0x36
                 libnvpair.so.1`nv_alloc_sys+0x1b
                 libnvpair.so.1`nv_mem_zalloc+0x25
                 libnvpair.so.1`nvlist_xalloc+0x37
                 libnvpair.so.1`nvlist_xunpack+0x34
                 libnvpair.so.1`nvlist_unpack+0x29
                 libipadm.so.1`i_ipadm_get_db_addr+0xb4
                 libipadm.so.1`ipadm_enable_addr+0xa7
                 do_enable_addr+0x55
                 main+0xdf
                 _start+0x83

umem_alloc_32 leak: 1 buffer, 32 bytes
            ADDR          BUFADDR        TIMESTAMP           THREAD
                            CACHE          LASTLOG         CONTENTS
         80a3dd8          809ff68      227fe787dfb                1
                          8078590                0                0
                 libumem.so.1`umem_cache_alloc_debug+0x1fe
                 libumem.so.1`umem_cache_alloc+0x99
                 libumem.so.1`umem_alloc+0x50
                 libumem.so.1`umem_malloc+0x36
                 libnvpair.so.1`nv_alloc_sys+0x1b
                 libnvpair.so.1`nv_priv_alloc+0x13
                 libnvpair.so.1`nvlist_xalloc+0x1c
                 libnvpair.so.1`nvlist_xunpack+0x34
                 libnvpair.so.1`nvlist_unpack+0x29
                 libipadm.so.1`i_ipadm_get_db_addr+0xb4
                 libipadm.so.1`ipadm_enable_addr+0xa7
                 do_enable_addr+0x55
                 main+0xdf
                 _start+0x83

umem_alloc_32 leak: 1 buffer, 32 bytes
            ADDR          BUFADDR        TIMESTAMP           THREAD
                            CACHE          LASTLOG         CONTENTS
         80a3e40          809ff38      227fe78c64a                1
                          8078590                0                0
                 libumem.so.1`umem_cache_alloc_debug+0x1fe
                 libumem.so.1`umem_cache_alloc+0x99
                 libumem.so.1`umem_alloc+0x50
                 libumem.so.1`umem_malloc+0x36
                 libnvpair.so.1`nv_alloc_sys+0x1b
                 libnvpair.so.1`nv_mem_zalloc+0x25
                 libnvpair.so.1`nv_priv_alloc_embedded+0x13
                 libnvpair.so.1`nvs_embedded+0x6c
                 libnvpair.so.1`nvpair_native_embedded+0x59
                 libnvpair.so.1`nvs_native_nvp_op+0x98
                 libnvpair.so.1`nvs_decode_pairs+0x5d
                 libnvpair.so.1`nvs_operation+0x5e
                 libnvpair.so.1`nvs_native+0x4f
                 libnvpair.so.1`nvlist_common+0xb2
                 libnvpair.so.1`nvlist_xunpack+0x53

umem_alloc_32 leak: 1 buffer, 32 bytes
            ADDR          BUFADDR        TIMESTAMP           THREAD
                            CACHE          LASTLOG         CONTENTS
         80a3f10          809fed8      227fe7af79b                1
                          8078590                0                0
                 libumem.so.1`umem_cache_alloc_debug+0x1fe
                 libumem.so.1`umem_cache_alloc+0x18f
                 libumem.so.1`umem_alloc+0x50
                 libumem.so.1`umem_malloc+0x36
                 libnvpair.so.1`nv_alloc_sys+0x1b
                 libnvpair.so.1`nv_mem_zalloc+0x25
                 libnvpair.so.1`nv_priv_alloc_embedded+0x13
                 libnvpair.so.1`nvs_embedded+0x6c
                 libnvpair.so.1`nvpair_native_embedded+0x59
                 libnvpair.so.1`nvs_native_nvp_op+0x98
                 libnvpair.so.1`nvs_decode_pairs+0x5d
                 libnvpair.so.1`nvs_operation+0x5e
                 libnvpair.so.1`nvs_embedded+0xa4
                 libnvpair.so.1`nvpair_native_embedded+0x59
                 libnvpair.so.1`nvs_native_nvp_op+0x98

umem_alloc_48 leak: 1 buffer, 48 bytes
            ADDR          BUFADDR        TIMESTAMP           THREAD
                            CACHE          LASTLOG         CONTENTS
         80c42d8          80c3f80      227fe7c0381                1
                          8079590                0                0
                 libumem.so.1`umem_cache_alloc_debug+0x1fe
                 libumem.so.1`umem_cache_alloc+0x18f
                 libumem.so.1`umem_alloc+0x50
                 libumem.so.1`umem_malloc+0x36
                 libnvpair.so.1`nv_alloc_sys+0x1b
                 libnvpair.so.1`nv_mem_zalloc+0x25
                 libnvpair.so.1`nvp_buf_alloc+0x19
                 libnvpair.so.1`nvs_decode_pairs+0x3c
                 libnvpair.so.1`nvs_operation+0x5e
                 libnvpair.so.1`nvs_embedded+0xa4
                 libnvpair.so.1`nvpair_native_embedded+0x59
                 libnvpair.so.1`nvs_native_nvp_op+0x98
                 libnvpair.so.1`nvs_decode_pairs+0x5d
                 libnvpair.so.1`nvs_operation+0x5e
                 libnvpair.so.1`nvs_native+0x4f

umem_alloc_48 leak: 1 buffer, 48 bytes
            ADDR          BUFADDR        TIMESTAMP           THREAD
                            CACHE          LASTLOG         CONTENTS
         80c4270          80c3fc0      227fe7bf737                1
                          8079590                0                0
                 libumem.so.1`umem_cache_alloc_debug+0x1fe
                 libumem.so.1`umem_cache_alloc+0x18f
                 libumem.so.1`umem_alloc+0x50
                 libumem.so.1`umem_malloc+0x36
                 libnvpair.so.1`nv_alloc_sys+0x1b
                 libnvpair.so.1`nv_mem_zalloc+0x25
                 libnvpair.so.1`nvp_buf_alloc+0x19
                 libnvpair.so.1`nvs_decode_pairs+0x3c
                 libnvpair.so.1`nvs_operation+0x5e
                 libnvpair.so.1`nvs_embedded+0xa4
                 libnvpair.so.1`nvpair_native_embedded+0x59
                 libnvpair.so.1`nvs_native_nvp_op+0x98
                 libnvpair.so.1`nvs_decode_pairs+0x5d
                 libnvpair.so.1`nvs_operation+0x5e
                 libnvpair.so.1`nvs_embedded+0xa4

umem_alloc_56 leak: 1 buffer, 56 bytes
            ADDR          BUFADDR        TIMESTAMP           THREAD
                            CACHE          LASTLOG         CONTENTS
         80c2ca0          80c0f80      227fe7ad8c1                1
                          807b010                0                0
                 libumem.so.1`umem_cache_alloc_debug+0x1fe
                 libumem.so.1`umem_cache_alloc+0x18f
                 libumem.so.1`umem_alloc+0x50
                 libumem.so.1`umem_malloc+0x36
                 libnvpair.so.1`nv_alloc_sys+0x1b
                 libnvpair.so.1`nv_mem_zalloc+0x25
                 libnvpair.so.1`nvp_buf_alloc+0x19
                 libnvpair.so.1`nvs_decode_pairs+0x3c
                 libnvpair.so.1`nvs_operation+0x5e
                 libnvpair.so.1`nvs_embedded+0xa4
                 libnvpair.so.1`nvpair_native_embedded+0x59
                 libnvpair.so.1`nvs_native_nvp_op+0x98
                 libnvpair.so.1`nvs_decode_pairs+0x5d
                 libnvpair.so.1`nvs_operation+0x5e
                 libnvpair.so.1`nvs_native+0x4f

umem_alloc_56 leak: 1 buffer, 56 bytes
            ADDR          BUFADDR        TIMESTAMP           THREAD
                            CACHE          LASTLOG         CONTENTS
         80c2dd8          80c0ea8      227fe7dc20b                1
                          807b010                0                0
                 libumem.so.1`umem_cache_alloc_debug+0x1fe
                 libumem.so.1`umem_cache_alloc+0x18f
                 libumem.so.1`umem_alloc+0x50
                 libumem.so.1`umem_malloc+0x36
                 libnvpair.so.1`nv_alloc_sys+0x1b
                 libnvpair.so.1`nv_mem_zalloc+0x25
                 libnvpair.so.1`nvp_buf_alloc+0x19
                 libnvpair.so.1`nvlist_add_common+0x11f
                 libnvpair.so.1`nvlist_add_nvpair+0x35
                 libipadm.so.1`i_ipadm_merge_prefixlen_from_nvl+0xcc
                 libipadm.so.1`ipadm_enable_addr+0x16a
                 do_enable_addr+0x55
                 main+0xdf
                 _start+0x83

umem_alloc_64 leak: 1 buffer, 64 bytes
            ADDR          BUFADDR        TIMESTAMP           THREAD
                            CACHE          LASTLOG         CONTENTS
         80a9680          80a8f00      227fe7ae58c                1
                          807b590                0                0
                 libumem.so.1`umem_cache_alloc_debug+0x1fe
                 libumem.so.1`umem_cache_alloc+0x18f
                 libumem.so.1`umem_alloc+0x50
                 libumem.so.1`umem_malloc+0x36
                 libnvpair.so.1`nv_alloc_sys+0x1b
                 libnvpair.so.1`nv_mem_zalloc+0x25
                 libnvpair.so.1`nvp_buf_alloc+0x19
                 libnvpair.so.1`nvs_decode_pairs+0x3c
                 libnvpair.so.1`nvs_operation+0x5e
                 libnvpair.so.1`nvs_embedded+0xa4
                 libnvpair.so.1`nvpair_native_embedded+0x59
                 libnvpair.so.1`nvs_native_nvp_op+0x98
                 libnvpair.so.1`nvs_decode_pairs+0x5d
                 libnvpair.so.1`nvs_operation+0x5e
                 libnvpair.so.1`nvs_native+0x4f

umem_alloc_80 leak: 1 buffer, 80 bytes
            ADDR          BUFADDR        TIMESTAMP           THREAD
                            CACHE          LASTLOG         CONTENTS
         80b00d0          80aff08      227fe78b367                1
                          807c010                0                0
                 libumem.so.1`umem_cache_alloc_debug+0x1fe
                 libumem.so.1`umem_cache_alloc+0x18f
                 libumem.so.1`umem_alloc+0x50
                 libumem.so.1`umem_malloc+0x36
                 libnvpair.so.1`nv_alloc_sys+0x1b
                 libnvpair.so.1`nv_mem_zalloc+0x25
                 libnvpair.so.1`nvp_buf_alloc+0x19
                 libnvpair.so.1`nvs_decode_pairs+0x3c
                 libnvpair.so.1`nvs_operation+0x5e
                 libnvpair.so.1`nvs_native+0x4f
                 libnvpair.so.1`nvlist_common+0xb2
                 libnvpair.so.1`nvlist_xunpack+0x53
                 libnvpair.so.1`nvlist_unpack+0x29
                 libipadm.so.1`i_ipadm_get_db_addr+0xb4
                 libipadm.so.1`ipadm_enable_addr+0xa7

umem_alloc_80 leak: 1 buffer, 80 bytes
            ADDR          BUFADDR        TIMESTAMP           THREAD
                            CACHE          LASTLOG         CONTENTS
         80b0138          80afea8      227fe7aef24                1
                          807c010                0                0
                 libumem.so.1`umem_cache_alloc_debug+0x1fe
                 libumem.so.1`umem_cache_alloc+0x18f
                 libumem.so.1`umem_alloc+0x50
                 libumem.so.1`umem_malloc+0x36
                 libnvpair.so.1`nv_alloc_sys+0x1b
                 libnvpair.so.1`nv_mem_zalloc+0x25
                 libnvpair.so.1`nvp_buf_alloc+0x19
                 libnvpair.so.1`nvs_decode_pairs+0x3c
                 libnvpair.so.1`nvs_operation+0x5e
                 libnvpair.so.1`nvs_embedded+0xa4
                 libnvpair.so.1`nvpair_native_embedded+0x59
                 libnvpair.so.1`nvs_native_nvp_op+0x98
                 libnvpair.so.1`nvs_decode_pairs+0x5d
                 libnvpair.so.1`nvs_operation+0x5e
                 libnvpair.so.1`nvs_native+0x4f

>
Actions #1

Updated by Electric Monk over 5 years ago

  • Status changed from In Progress to Closed
  • % Done changed from 50 to 100

git commit b130c20454b5d071292134d42cf34c9f5938c1d5

commit  b130c20454b5d071292134d42cf34c9f5938c1d5
Author: Yuri Pankov <yuri.pankov@nexenta.com>
Date:   2017-01-06T21:45:48.000Z

    7738 libipadm`ipadm_enable_addr() leaks addrnvl
    Reviewed by: Roman Strashkin <roman.strashkin@nexenta.com>
    Reviewed by: Rick McNeal <rick.mcneal@nexenta.com>
    Reviewed by: Toomas Soome <tsoome@me.com>
    Reviewed by: Igor Kozhukhov <igor@dilos.org>
    Reviewed by: Robert Mustacchi <rm@joyent.com>
    Approved by: Dan McDonald <danmcd@omniti.com>

Actions

Also available in: Atom PDF