annotate src/share/vm/memory/metaspaceTracer.hpp @ 5983:bc7714614ad8

8036699: Add trace event when a metaspace allocation fails Reviewed-by: jmasa, stefank
author ehelin
date Fri, 21 Mar 2014 10:20:00 +0100
parents daef39043d2c
children 5af31f70a866
rev   line source
ehelin@5982 1 /*
ehelin@5982 2 * Copyright (c) 2014, Oracle and/or its affiliates. All rights reserved.
ehelin@5982 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
ehelin@5982 4 *
ehelin@5982 5 * This code is free software; you can redistribute it and/or modify it
ehelin@5982 6 * under the terms of the GNU General Public License version 2 only, as
ehelin@5982 7 * published by the Free Software Foundation.
ehelin@5982 8 *
ehelin@5982 9 * This code is distributed in the hope that it will be useful, but WITHOUT
ehelin@5982 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
ehelin@5982 11 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
ehelin@5982 12 * version 2 for more details (a copy is included in the LICENSE file that
ehelin@5982 13 * accompanied this code).
ehelin@5982 14 *
ehelin@5982 15 * You should have received a copy of the GNU General Public License version
ehelin@5982 16 * 2 along with this work; if not, write to the Free Software Foundation,
ehelin@5982 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
ehelin@5982 18 *
ehelin@5982 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
ehelin@5982 20 * or visit www.oracle.com if you need additional information or have any
ehelin@5982 21 * questions.
ehelin@5982 22 *
ehelin@5982 23 */
ehelin@5982 24
ehelin@5982 25 #ifndef SHARE_VM_MEMORY_METASPACE_TRACER_HPP
ehelin@5982 26 #define SHARE_VM_MEMORY_METASPACE_TRACER_HPP
ehelin@5982 27
ehelin@5982 28 #include "memory/allocation.hpp"
ehelin@5983 29 #include "memory/metaspace.hpp"
ehelin@5982 30 #include "memory/metaspaceGCThresholdUpdater.hpp"
ehelin@5982 31
ehelin@5983 32 class ClassLoaderData;
ehelin@5983 33
ehelin@5982 34 class MetaspaceTracer : public CHeapObj<mtTracing> {
ehelin@5982 35 public:
ehelin@5982 36 void report_gc_threshold(size_t old_val,
ehelin@5982 37 size_t new_val,
ehelin@5982 38 MetaspaceGCThresholdUpdater::Type updater) const;
ehelin@5983 39 void report_metaspace_allocation_failure(ClassLoaderData *cld,
ehelin@5983 40 size_t word_size,
ehelin@5983 41 MetaspaceObj::Type objtype,
ehelin@5983 42 Metaspace::MetadataType mdtype) const;
ehelin@5982 43 };
ehelin@5982 44
ehelin@5982 45 #endif // SHARE_VM_MEMORY_METASPACE_TRACER_HPP