1494N/A * Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved. 1494N/A * Copyright (c) 2012, 2013 Intel Corporation. All rights reserved. 1494N/A/************************************************************************** 1494N/A * Copyright 2006-2008 Tungsten Graphics, Inc., Cedar Park, TX. USA. 1494N/A * Permission is hereby granted, free of charge, to any person obtaining a 1494N/A * copy of this software and associated documentation files (the 1494N/A * "Software"), to deal in the Software without restriction, including 1494N/A * without limitation the rights to use, copy, modify, merge, publish, 1494N/A * distribute, sub license, and/or sell copies of the Software, and to 1494N/A * permit persons to whom the Software is furnished to do so, subject to 1494N/A * the following conditions: 1494N/A * The above copyright notice and this permission notice (including the 1494N/A * next paragraph) shall be included in all copies or substantial portions 1494N/A * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 1494N/A * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 1494N/A * FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL 1494N/A * THE COPYRIGHT HOLDERS, AUTHORS AND/OR ITS SUPPLIERS BE LIABLE FOR ANY CLAIM, 1494N/A * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR 1494N/A * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE 1494N/A * USE OR OTHER DEALINGS IN THE SOFTWARE. 1494N/A **************************************************************************/ 1494N/A * Thomas Hellstrom <thomas-at-tungstengraphics-dot-com> 1494N/A * Generic range manager structs 1494N/A /* List of free memory blocks, most recently freed ordered. */ 1494N/A /* head_node.node_list is the list of all memory nodes, ordered 1494N/A * according to the (increasing) start address of the memory node. */ 1494N/A/* Note that we need to unroll list_for_each_entry in order to inline 1494N/A * setting hole_start and hole_end on each iteration and keep the