Functions

ink_memory.cc File Reference

Memory allocation routines for libts. More...

#include "libts.h"
#include <assert.h>
#include <stdlib.h>
#include <string.h>
Include dependency graph for ink_memory.cc:

Go to the source code of this file.

Functions

void * ats_malloc (size_t size)
void * ats_calloc (size_t nelem, size_t elsize)
void * ats_realloc (void *ptr, size_t size)
void * ats_memalign (size_t alignment, size_t size)
void ats_free (void *ptr)
void * ats_free_null (void *ptr)
void ats_memalign_free (void *ptr)
int ats_mallopt (int param ATS_UNUSED, int value ATS_UNUSED)
int ats_msync (caddr_t addr, size_t len, caddr_t end, int flags)
int ats_madvise (caddr_t addr, size_t len, int flags)
int ats_mlock (caddr_t addr, size_t len)
char * _xstrdup (const char *str, int length, const char *)

Detailed Description

Memory allocation routines for libts.

License

Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Definition in file ink_memory.cc.


Function Documentation

char* _xstrdup ( const char *  str,
int  length,
const char *   
)

Definition at line 228 of file ink_memory.cc.

References ats_malloc(), ink_strlcpy(), and likely.

Referenced by _TSstrdup().

void* ats_calloc ( size_t  nelem,
size_t  elsize 
)

Definition at line 59 of file ink_memory.cc.

References ink_fatal(), ink_stack_trace_dump(), and unlikely.

Referenced by ClusterMachine::ClusterMachine().

void ats_free ( void *  ptr  ) 

Definition at line 120 of file ink_memory.cc.

References likely.

Referenced by _ink_hash_table_free_entry_value(), _ink_hash_table_xfree_entry_value(), _TSfree(), UrlLru::add_stat(), blk_free(), build_vol_hash_table(), ControlMatcher< Data, Result >::BuildTable(), CacheHostTable::BuildTable(), ControlMatcher< Data, Result >::BuildTableFromString(), CacheHostTable::BuildTableFromString(), LogFile::change_header(), LogFile::change_name(), change_uid_gid(), check_lockfile(), StrListOverflow::clean(), FetchSM::cleanUp(), CongestionControlRecord::cleanup(), ClearCacheVolList(), comp_http_hdr(), ShowCont::complete(), ShowCont::complete_error(), RamCacheCLFUS::compress_entries(), LogObject::compute_signature(), cookie_debug(), create_npn_advertisement(), IOBufferData::dealloc(), ParentRecord::DefaultInit(), Store::delete_all(), delete_queue(), dequeue(), HttpTransact::State::destroy(), HTTPCacheAlt::destroy(), HdrHeap::destroy(), FreerContinuation::dieEvent(), Vol::dir_check(), CacheProcessor::diskInitialized(), DNSProcessor::dns_init(), HttpSM::do_redirect(), CoreUtils::dump_history(), HttpSM::dump_state_hdr(), HttpTransact::EndRemapRequest(), FileImpl::fclose(), NetVCTest::fill_buffer(), RemapProcessor::finish_remap(), PrefetchUrlEntry::free(), HashTableEntry< key_t, data_t >::free(), HdrStrHeap::free(), DefaultAlloc::free(), free_CacheVC(), HttpTransact::State::free_internal_msg_buffer(), RamCacheCLFUS::get(), how_to_open_connection(), PrefetchBlaster::init(), HttpBodySet::init(), CacheHostRecord::Init(), SSLConfigParams::initialize(), ink_freelist_free(), ink_hash_table_destroy(), ink_hash_table_replace_string(), HttpTransactHeaders::insert_supported_methods_in_response(), ClusterProcessor::internal_invoke_remote(), HttpSM::kill_this(), link_string_alloc(), HttpBodyTemplate::load_from_file(), CoreUtils::load_http_hdr(), HttpProxyPort::loadConfig(), loadSocksConfiguration(), main(), LogAccess::marshal_config_str_var(), RegexMatcher< Data, Result >::Match(), UrlMatcher< Data, Result >::Match(), CacheHostMatcher::Match(), mime_field_value_extend_comma_val(), mime_scanner_clear(), RegexMatcher< Data, Result >::NewEntry(), NetVCOptions::operator=(), LogFormat::parse_symbol_string(), plugin_init(), CoreUtils::process_EThread(), process_http_hdr_impl(), CoreUtils::process_HttpSM(), process_mime_block_impl(), CoreUtils::process_NetVC(), process_regex_mapping_config(), ParentRecord::ProcessParents(), HTTPInfo::push_frag_offset(), Store::read_config(), ConfigVolumes::read_config_file(), LogConfig::read_configuration_variables(), CoreUtils::read_from_core(), read_MachineList(), PrefetchConfiguration::readConfiguration(), readIntoBuffer(), RecConfigFileParse(), RecCoreInit(), RecDataClear(), RecDataSet(), RecDataSetFromFloat(), RecDataSetFromInk64(), RecFileImport_Xmalloc(), RecForceInsert(), RecGetRecordDefaultDataString_Xmalloc(), RecMessageFree(), RecMessageReadFromDisk(), SocksServerConfig::reconfigure(), ParentConfig::reconfigure(), HttpBodyFactory::reconfigure(), DiagsConfig::reconfigure_diags(), RecReadStatsFile(), RecRegisterConfig(), RecWriteConfigFile(), PrefetchTransform::redirect(), SSLNextProtocolSet::registerEndpoint(), remap_load_plugin(), LogObject::rename(), NetVCOptions::reset(), SocksAddrType::reset(), ICPPeerReadCont::reset(), HttpBodyTemplate::reset(), RamCacheLRU::resize_hashtable(), RamCacheCLFUS::resize_hashtable(), LogBuffer::resolve_custom_entry(), resolve_logfield_string(), BaseStatPagesHandler::resp_clear(), NetVCOptions::set_sni_servername(), HttpSM::setup_internal_transfer(), spawn_thread_internal(), ssl_private_key_validate_exec(), SSLInitializeLibrary(), stat_callback(), synclient_txn_delete(), syslog_log_configure(), LogBuffer::to_ascii(), LogFilterString::toss_this_entry(), ts_host_res_global_init(), TSCacheKeyDestroy(), TSHttpParserDestroy(), TSHttpTxnErrorBodySet(), TSHttpTxnRedirectUrlSet(), TSMatcherLineDestroy(), TSMimeParserDestroy(), TSPluginDirGet(), TSRedirectUrlSet(), TSUrlPercentEncode(), LogConfig::update_space_used(), UrlRewrite::UrlRewrite(), LogFilterString::wipe_this_entry(), write_stats_snap(), CacheDisk::~CacheDisk(), CacheHostRecord::~CacheHostRecord(), ClusterHandler::~ClusterHandler(), ClusterLoadMonitor::~ClusterLoadMonitor(), ClusterMachine::~ClusterMachine(), CongestionEntry::~CongestionEntry(), DFA::~DFA(), Diags::~Diags(), EThread::~EThread(), hostArray::~hostArray(), HostLookup::~HostLookup(), HostLookupState::~HostLookupState(), HttpBodySet::~HttpBodySet(), HttpConfigParams::~HttpConfigParams(), ICPRequestCont::~ICPRequestCont(), InkXmlAttr::~InkXmlAttr(), InkXmlConfigFile::~InkXmlConfigFile(), InkXmlObject::~InkXmlObject(), Layout::~Layout(), LogConfig::~LogConfig(), LogField::~LogField(), LogFile::~LogFile(), LogFilter::~LogFilter(), LogFilterString::~LogFilterString(), LogFormat::~LogFormat(), LogHost::~LogHost(), LogObject::~LogObject(), Machine::~Machine(), MetaInfo::~MetaInfo(), MultiCacheHeapGC::~MultiCacheHeapGC(), NetVCOptions::~NetVCOptions(), ParentRecord::~ParentRecord(), PrefetchTransform::~PrefetchTransform(), RecTreeNode::~RecTreeNode(), redirect_tag_str::~redirect_tag_str(), referer_info::~referer_info(), RegexMatcher< Data, Result >::~RegexMatcher(), remap_plugin_info::~remap_plugin_info(), SessionProtocolNameRegistry::~SessionProtocolNameRegistry(), ShowCont::~ShowCont(), SSLNextProtocolSet::~SSLNextProtocolSet(), textBuffer::~textBuffer(), Tokenizer::~Tokenizer(), UnsunkPtrRegistry::~UnsunkPtrRegistry(), UpdateEntry::~UpdateEntry(), UrlMatcher< Data, Result >::~UrlMatcher(), and UrlRewrite::~UrlRewrite().

void* ats_free_null ( void *  ptr  ) 
int ats_madvise ( caddr_t  addr,
size_t  len,
int  flags 
)

Definition at line 191 of file ink_memory.cc.

References a.

void* ats_malloc ( size_t  size  ) 

Definition at line 36 of file ink_memory.cc.

References ink_fatal(), ink_stack_trace_dump(), likely, and unlikely.

Referenced by _TSmalloc(), _xstrdup(), aio_init_fildes(), IOBufferData::alloc(), HashTableEntry< key_t, data_t >::alloc(), DefaultAlloc::alloc(), UnsunkPtrRegistry::alloc_data(), MIOBuffer::alloc_xmalloc(), RegexMatcher< Data, Result >::AllocateSpace(), CacheContinuation::allocMsgBuffer(), ats_memalign(), blk_alloc(), build_vol_hash_table(), ControlMatcher< Data, Result >::BuildTableFromString(), CacheHostTable::BuildTableFromString(), change_uid_gid(), ClusterHandler::check_channel(), ClusterLoadMonitor::ClusterLoadMonitor(), comp_http_hdr(), RamCacheCLFUS::compress_entries(), LogObject::compute_signature(), cookie_debug(), HTTPCacheAlt::copy_frag_offsets_from(), cplist_init(), cplist_reconfigure(), StrListOverflow::create_heap(), create_npn_advertisement(), create_queue(), ParentRecord::DefaultInit(), Vol::dir_check(), CacheProcessor::diskInitialized(), HttpSM::dump_state_hdr(), Store::dup(), enqueue(), EThread::EThread(), HttpBodyFactory::fabricate_with_old_api(), NetVCTest::fill_buffer(), FileImpl::fread(), FileImpl::fwrite(), RamCacheCLFUS::get(), FetchSM::get_info_from_buffer(), HttpTransact::handle_trace_and_options_requests(), hdrtoken_init(), ParentRecord::Init(), CongestionControlRecord::Init(), CacheHostRecord::Init(), CacheControlRecord::Init(), Vol::init(), initialize_thread_for_net(), ink_freelist_init(), ink_freelist_new(), ink_hash_table_create(), HttpTransactHeaders::insert_supported_methods_in_response(), load_buffer(), HttpBodyTemplate::load_from_file(), CoreUtils::load_http_hdr(), Load_IpMap_From_File(), load_string(), loadSocksAuthInfo(), log_test_handler(), main(), make_vol_map(), CacheHostMatcher::Match(), mime_field_value_extend_comma_val(), mime_init_date_format_table(), mime_scanner_append(), MultiCacheHeapGC::MultiCacheHeapGC(), new_HdrHeap(), new_HdrStrHeap(), IpMatcher< Data, Result >::NewEntry(), RegexMatcher< Data, Result >::NewEntry(), UrlMatcher< Data, Result >::NewEntry(), CacheDisk::open(), Cache::open(), LogFormat::parse_format_string(), parse_log_buff(), HttpConfig::parse_url_expansions(), plugin_expand(), CoreUtils::process_EThread(), CoreUtils::process_HttpSM(), CoreUtils::process_NetVC(), process_regex_mapping_config(), ParentRecord::ProcessParents(), HTTPInfo::push_frag_offset(), RamCacheCLFUS::put(), Store::read(), CoreUtils::read_from_core(), read_MachineList(), PrefetchConfiguration::readHtmlTags(), readIntoBuffer(), IOBufferBlock::realloc_xmalloc(), RecTree::rec_tree_get_list(), RecAllocateRawStatBlock(), RecConfigFileParse(), RecCoreInit(), RecFileImport_Xmalloc(), RecGetRecordDefaultDataString_Xmalloc(), RecGetRecordPrefix_Xmalloc(), RecMessageAlloc(), RecMessageReadFromDisk(), RecRegisterConfigUpdateCb(), RecSyncConfigToTB(), RecWriteConfigFile(), StatPagesManager::register_http(), remap_parse_config_bti(), RamCacheLRU::resize_hashtable(), RamCacheCLFUS::resize_hashtable(), LogBuffer::resolve_custom_entry(), resolve_logfield_string(), BaseStatPagesHandler::resp_add(), SocksProxy::setupHttpRequest(), ShowCont::ShowCont(), SSLInitializeLibrary(), Thread::start(), CacheProcessor::start_internal(), HttpConfig::startup(), stat_callback(), testpage_callback(), textBuffer::textBuffer(), LogFilterString::toss_this_entry(), TSCacheKeyHostNameSet(), TSHttpParserCreate(), TSICPCachedReqGet(), TSICPCachedRespGet(), TSMatcherLineCreate(), TSMimeParserCreate(), TSRedirectUrlSet(), HTTPInfo::unmarshal(), LogConfig::update_space_used(), url_string_get(), url_to_string(), CongestionControlRecord::validate(), LogFilterString::wipe_this_entry(), and write_stats_snap().

int ats_mallopt ( int param  ATS_UNUSED,
int value  ATS_UNUSED 
)

Definition at line 147 of file ink_memory.cc.

Referenced by adjust_sys_settings().

void* ats_memalign ( size_t  alignment,
size_t  size 
)
void ats_memalign_free ( void *  ptr  ) 

Definition at line 135 of file ink_memory.cc.

References likely.

Referenced by ink_freelist_free(), CacheSync::mainEvent(), sync_cache_dir_on_shutdown(), and Vol::~Vol().

int ats_mlock ( caddr_t  addr,
size_t  len 
)

Definition at line 213 of file ink_memory.cc.

References a.

int ats_msync ( caddr_t  addr,
size_t  len,
caddr_t  end,
int  flags 
)
void* ats_realloc ( void *  ptr,
size_t  size 
)