All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jim Meyering <jim@meyering.net>
To: Jeff Garzik <jeff@garzik.org>
Cc: Project Hail <hail-devel@vger.kernel.org>,
	Pete Zaitcev <zaitcev@redhat.com>
Subject: Re: [PATCH hail] chunkd: don't leak an FS object iterator
Date: Sun, 03 Oct 2010 09:00:19 +0200	[thread overview]
Message-ID: <87pqvr92ws.fsf@meyering.net> (raw)
In-Reply-To: <4CA4DA7E.3040801@garzik.org> (Jeff Garzik's message of "Thu, 30 Sep 2010 14:44:14 -0400")

Jeff Garzik wrote:

> On 09/29/2010 11:20 AM, Jim Meyering wrote:
>>
>> chk_list_objs called fs_list_objs_open without also calling
>> fs_list_objs_close.
>>
>>   32,808 bytes in 1 blocks are definitely lost in loss record 413 of 419
>>      at 0x4A0515D: malloc (vg_replace_malloc.c:195)
>>      by 0x31BA8A26D0: __alloc_dir (opendir.c:184)
>>      by 0x405619: fs_list_objs_open (be-fs.c:974)
>>      by 0x40B202: chk_list_objs (selfcheck.c:41)
>>      by 0x40B575: chk_dbscan (selfcheck.c:131)
>>      by 0x40B628: chk_thread_scan (selfcheck.c:147)
>>      by 0x40B757: chk_thread_command (selfcheck.c:179)
>>      by 0x40B890: chk_thread_func (selfcheck.c:219)
>>      by 0x31BC464E83: g_thread_create_proxy (gthread.c:1893)
>>      by 0x31BB407760: start_thread (pthread_create.c:301)
>>      by 0x31BA8E151C: clone (clone.S:115)
>
> After seeing a few valgrind references from you, I'm curious... do you
> by chance happen to have a valgrind suppression file for openssl on
> Fedora?

No, I ignored them.  But to create a so-called "suppressions" file,
you can invoke valgrind with --gen-suppressions=all.  You select
the ssl-related entries and put them in a file, say F, then whenever
you run valgrind, use --suppressions=F to make it ignore those.

> I've been wanting to run valgrind on chunkd, but each time I attempt
> it, I -- and valgrind -- have been overwhelmed by openssl false
> positives. openssl, deep in its RAND_xxx functions, intentionally does
> crazy stuff like using random, uninitialized stack contents as RNG
> entropy.  Cute, but valgrind quite rightly complains loudly about it.
>
> It's a topic I've been meaning to research, because I currently lack
> the valgrind-fu necessary to have an effective valgrind+chunkd
> session.

BTW, Here are a few more that I haven't investigated:

==4506== 1 errors in context 1 of 7:
==4506== Syscall param pwrite64(buf) points to uninitialised byte(s)
==4506==    at 0x31BB40EDE3: __pwrite_nocancel (syscall-template.S:82)
==4506==    by 0x31BE137AD0: __os_io (os_rw.c:92)
==4506==    by 0x31BE125733: __memp_pgwrite (mp_bh.c:394)
==4506==    by 0x31BE125954: __memp_bhwrite (mp_bh.c:168)
==4506==    by 0x31BE134482: __memp_sync_int (mp_sync.c:530)
==4506==    by 0x31BE0CBD66: __db_sync (db_am.c:706)
==4506==    by 0x31BE0CA652: __db_refresh (db.c:820)
==4506==    by 0x31BE0CA8C0: __db_close (db.c:695)
==4506==    by 0x31BE0E64A7: __db_close_pp (db_iface.c:253)
==4506==    by 0x403450: cldb_down (cldb.c:414)
==4506==    by 0x409A58: main (server.c:1143)
==4506==  Address 0x4f005e3 is 4,083 bytes inside a block of size 4,096 alloc'd
==4506==    at 0x4A0515D: malloc (vg_replace_malloc.c:195)
==4506==    by 0x31BE135237: __os_malloc (os_alloc.c:253)
==4506==    by 0x31BE1257FC: __memp_pgwrite (mp_bh.c:385)
==4506==    by 0x31BE125954: __memp_bhwrite (mp_bh.c:168)
==4506==    by 0x31BE134482: __memp_sync_int (mp_sync.c:530)
==4506==    by 0x31BE0CBD66: __db_sync (db_am.c:706)
==4506==    by 0x31BE0CA652: __db_refresh (db.c:820)
==4506==    by 0x31BE0CA8C0: __db_close (db.c:695)
==4506==    by 0x31BE0E64A7: __db_close_pp (db_iface.c:253)
==4506==    by 0x403450: cldb_down (cldb.c:414)
==4506==    by 0x409A58: main (server.c:1143)
==4506==  Uninitialised value was created by a stack allocation
==4506==    at 0x404878: cldb_lock_add (cldb.c:967)
==4506==
==4506==
==4506== 1 errors in context 2 of 7:
==4506== Syscall param pwrite64(buf) points to uninitialised byte(s)
==4506==    at 0x31BB40EDE3: __pwrite_nocancel (syscall-template.S:82)
==4506==    by 0x31BE137AD0: __os_io (os_rw.c:92)
==4506==    by 0x31BE1207C4: __log_write (log_put.c:1227)
==4506==    by 0x31BE121477: __log_flush_int (log_put.c:1010)
==4506==    by 0x31BE122CDC: __log_put (log_put.c:496)
==4506==    by 0x31BE146077: __txn_regop_log (txn_auto.c:234)
==4506==    by 0x31BE142A32: __txn_commit (txn.c:656)
==4506==    by 0x31BE142ABE: __txn_commit_pp (txn.c:517)
==4506==    by 0x4073A1: msg_lock (msg.c:1150)
==4506==    by 0x407869: udp_rx_handle (server.c:164)
==4506==    by 0x407BF3: udp_rx (server.c:265)
==4506==    by 0x408A3A: udp_srv_event (server.c:640)
==4506==    by 0x409676: main_loop (server.c:1026)
==4506==    by 0x409A0E: main (server.c:1135)
==4506==  Address 0x52d5380 is not stack'd, malloc'd or (recently) free'd
==4506==  Uninitialised value was created by a stack allocation
==4506==    at 0x404878: cldb_lock_add (cldb.c:967)
==4506==
==4506==
==4506== 1 errors in context 3 of 7:
==4506== Conditional jump or move depends on uninitialised value(s)
==4506==    at 0x31BE121A78: __log_putr (log_put.c:732)
==4506==    by 0x31BE1228B8: __log_put (log_put.c:464)
==4506==    by 0x31BE064E28: __ham_insdel_log (hash_auto.c:250)
==4506==    by 0x31BE06E86F: __ham_add_el (hash_page.c:2197)
==4506==    by 0x31BE05E5EC: __hamc_put (hash.c:1089)
==4506==    by 0x31BE0D97E5: __dbc_iput (db_cam.c:2103)
==4506==    by 0x31BE0DBE0C: __dbc_put (db_cam.c:2016)
==4506==    by 0x31BE0CCEA5: __db_put (db_am.c:477)
==4506==    by 0x31BE0E3DE2: __db_put_pp (db_iface.c:1579)
==4506==    by 0x404A52: cldb_lock_add (cldb.c:1016)
==4506==    by 0x40735E: msg_lock (msg.c:1140)
==4506==    by 0x407869: udp_rx_handle (server.c:164)
==4506==    by 0x407BF3: udp_rx (server.c:265)
==4506==    by 0x408A3A: udp_srv_event (server.c:640)
==4506==    by 0x409676: main_loop (server.c:1026)
==4506==    by 0x409A0E: main (server.c:1135)
==4506==  Uninitialised value was created by a stack allocation
==4506==    at 0x404878: cldb_lock_add (cldb.c:967)

Then, just for grins, I ran chunkd (via make check)
under valgrind with --gen-suppressions=all, which generated 27000
lines of suppressions, and extracted the unique ones.
Even those could be further consolidated with frame-level "..."
wildcards (see http://valgrind.org/docs/manual/manual-core.html)
but that would take careful manual work.

Here's the result.  Obviously, before using these, you'll want
to ensure that each really does represent an ignorable condition.
For the ssl-related signatures, it's pretty easy to assume.
For most of the others, it'll require careful work.

{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   fun:malloc
   fun:g_malloc
   fun:g_strndup
   fun:cfg_elm_text
   fun:g_markup_parse_context_parse
   fun:read_config
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   fun:malloc
   fun:cfg_elm_end_listen
   fun:cfg_elm_end
   fun:g_markup_parse_context_parse
   fun:read_config
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   fun:memalign
   fun:posix_memalign
   fun:slab_allocator_alloc_chunk
   fun:g_slice_alloc
   fun:g_slist_prepend
   fun:g_strsplit
   fun:g_get_language_names
   fun:g_thread_init_glib
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   fun:memalign
   fun:posix_memalign
   fun:slab_allocator_alloc_chunk
   fun:g_slice_alloc
   fun:g_array_sized_new
   fun:g_static_private_set
   fun:g_get_filename_charsets
   fun:_g_convert_thread_init
   fun:g_thread_init_glib
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_bin2bn
   fun:bnrand
   fun:bn_rand_range
   fun:BN_BLINDING_create_param
   fun:RSA_setup_blinding
   fun:rsa_get_blinding
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_cmp
   fun:bn_rand_range
   fun:BN_BLINDING_create_param
   fun:RSA_setup_blinding
   fun:rsa_get_blinding
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_ucmp
   fun:BN_mod_inverse
   fun:BN_BLINDING_create_param
   fun:RSA_setup_blinding
   fun:rsa_get_blinding
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Value8
   fun:bn_mul_mont
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
}
{
   <insert_a_suppression_name_here>
   Memcheck:Value8
   fun:bn_mul_mont
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
   obj:*
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   fun:calloc
   fun:cli_writeq
   fun:cli_err
   fun:login_user
   fun:cli_evt_exec_req
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   fun:malloc
   obj:/usr/lib64/libtokyocabinet.so.9.6.0
   fun:tchdbget
   fun:fs_table_open
   fun:volume_open
   fun:cli_evt_exec_req
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   fun:malloc
   fun:object_del
   fun:cli_evt_exec_req
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   fun:calloc
   fun:_dl_allocate_tls
   fun:pthread_create@@GLIBC_2.2.5
   fun:g_thread_create_posix_impl
   fun:g_thread_create_full
   fun:ncld_sess_open
   fun:cldu_set_cldc
   fun:cld_begin
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   fun:calloc
   fun:_dl_allocate_tls
   fun:pthread_create@@GLIBC_2.2.5
   fun:g_thread_create_posix_impl
   fun:g_thread_create_full
   fun:g_thread_pool_start_thread
   fun:g_thread_pool_push
   fun:object_cp
   fun:cli_evt_exec_req
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   fun:calloc
   fun:cli_wr_sendfile
   fun:object_read_bytes
   fun:object_get
   fun:cli_evt_exec_req
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   fun:malloc
   fun:xdr_string
   fun:xdr_cld_pkt_hdr
   fun:cldc_receive_pkt
   fun:cldc_udp_receive_pkt
   fun:ncld_sess_thr
   fun:g_thread_create_proxy
   fun:start_thread
   fun:clone
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   fun:malloc
   fun:realloc
   fun:g_realloc
   fun:g_array_maybe_expand
   fun:g_array_sized_new
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   fun:memalign
   fun:posix_memalign
   fun:slab_allocator_alloc_chunk
   fun:g_slice_alloc
   fun:g_list_append
   fun:fs_list_objs
   fun:volume_list
   fun:cli_evt_exec_req
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   fun:memalign
   fun:posix_memalign
   fun:slab_allocator_alloc_chunk
   fun:g_slice_alloc
   fun:g_string_sized_new
   fun:g_markup_escape_text
   fun:volume_list
   fun:cli_evt_exec_req
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Leak
   fun:calloc
   fun:cli_writeq
   fun:cli_write_list
   fun:cli_resp_xml
   fun:volume_list
   fun:cli_evt_exec_req
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:MOD_EXP_CTIME_COPY_TO_PREBUF
   fun:BN_mod_exp_mont_consttime
   fun:RSA_eay_mod_exp
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_mod_mul_montgomery
   fun:BN_mod_exp_mont_consttime
   fun:RSA_eay_mod_exp
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_mod_exp_mont_consttime
   fun:RSA_eay_mod_exp
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_ucmp
   fun:BN_mod_exp_mont_consttime
   fun:RSA_eay_mod_exp
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_div
   fun:RSA_eay_mod_exp
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_div
   fun:BN_nnmod
   fun:BN_mod_mul
   fun:BN_BLINDING_convert_ex
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_mul
   fun:BN_mod_mul
   fun:BN_BLINDING_convert_ex
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:bn_mul_recursive
   fun:BN_mul
   fun:BN_mod_mul
   fun:BN_BLINDING_convert_ex
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:bn_cmp_words
   fun:bn_mul_recursive
   fun:BN_mul
   fun:BN_mod_mul
   fun:BN_BLINDING_convert_ex
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_from_montgomery_word
   fun:BN_from_montgomery
   fun:BN_mod_exp_mont
   fun:BN_BLINDING_create_param
   fun:RSA_setup_blinding
   fun:rsa_get_blinding
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Value8
   fun:BN_from_montgomery_word
   fun:BN_from_montgomery
   fun:BN_mod_exp_mont
   fun:BN_BLINDING_create_param
   fun:RSA_setup_blinding
   fun:rsa_get_blinding
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_mod_mul_montgomery
   fun:BN_mod_exp_mont
   fun:BN_BLINDING_create_param
   fun:RSA_setup_blinding
   fun:rsa_get_blinding
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_mod_exp_mont
   fun:BN_BLINDING_create_param
   fun:RSA_setup_blinding
   fun:rsa_get_blinding
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_ucmp
   fun:BN_mod_exp_mont
   fun:BN_BLINDING_create_param
   fun:RSA_setup_blinding
   fun:rsa_get_blinding
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_mod_inverse
   fun:BN_BLINDING_create_param
   fun:RSA_setup_blinding
   fun:rsa_get_blinding
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_div
   fun:BN_mod_inverse
   fun:BN_BLINDING_create_param
   fun:RSA_setup_blinding
   fun:rsa_get_blinding
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_num_bits_word
   fun:BN_num_bits
   fun:BN_div
   fun:BN_mod_inverse
   fun:BN_BLINDING_create_param
   fun:RSA_setup_blinding
   fun:rsa_get_blinding
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Value8
   fun:bn_add_words
   fun:bn_mul_recursive
   fun:BN_mul
   fun:BN_mod_mul
   fun:BN_BLINDING_convert_ex
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Value8
   fun:bn_sub_words
   fun:bn_mul_recursive
   fun:BN_mul
   fun:BN_mod_mul
   fun:BN_BLINDING_convert_ex
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Value8
   fun:BN_num_bits_word
   fun:BN_num_bits
   fun:BN_div
   fun:BN_mod_inverse
   fun:BN_BLINDING_create_param
   fun:RSA_setup_blinding
   fun:rsa_get_blinding
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_lshift
   fun:BN_div
   fun:BN_mod_inverse
   fun:BN_BLINDING_create_param
   fun:RSA_setup_blinding
   fun:rsa_get_blinding
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_uadd
   fun:BN_add
   fun:BN_mod_inverse
   fun:BN_BLINDING_create_param
   fun:RSA_setup_blinding
   fun:rsa_get_blinding
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_rshift
   fun:BN_div
   fun:BN_mod_inverse
   fun:BN_BLINDING_create_param
   fun:RSA_setup_blinding
   fun:rsa_get_blinding
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}
{
   <insert_a_suppression_name_here>
   Memcheck:Cond
   fun:BN_mul
   fun:BN_mod_inverse
   fun:BN_BLINDING_create_param
   fun:RSA_setup_blinding
   fun:rsa_get_blinding
   fun:RSA_eay_private_decrypt
   fun:ssl3_get_client_key_exchange
   fun:ssl3_accept
   fun:cli_evt_ssl_accept
   fun:tcp_cli_event
   fun:main_loop
   fun:main
}

  reply	other threads:[~2010-10-03  7:00 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-29 15:20 [PATCH hail] chunkd: don't leak an FS object iterator Jim Meyering
2010-09-30 18:44 ` Jeff Garzik
2010-10-03  7:00   ` Jim Meyering [this message]
2010-09-30 18:52 ` Jeff Garzik

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87pqvr92ws.fsf@meyering.net \
    --to=jim@meyering.net \
    --cc=hail-devel@vger.kernel.org \
    --cc=jeff@garzik.org \
    --cc=zaitcev@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.