brintos

brintos / linux-shallow public Read only

0
0
Text · 1.2 KiB · bf86aa6 Raw
37 lines · c
1// SPDX-License-Identifier: GPL-2.0-only2/*3 * A generic implementation of binary search for the Linux kernel4 *5 * Copyright (C) 2008-2009 Ksplice, Inc.6 * Author: Tim Abbott <tabbott@ksplice.com>7 */8 9#include <linux/export.h>10#include <linux/bsearch.h>11#include <linux/kprobes.h>12 13/*14 * bsearch - binary search an array of elements15 * @key: pointer to item being searched for16 * @base: pointer to first element to search17 * @num: number of elements18 * @size: size of each element19 * @cmp: pointer to comparison function20 *21 * This function does a binary search on the given array.  The22 * contents of the array should already be in ascending sorted order23 * under the provided comparison function.24 *25 * Note that the key need not have the same type as the elements in26 * the array, e.g. key could be a string and the comparison function27 * could compare the string with the struct's name field.  However, if28 * the key and elements in the array are of the same type, you can use29 * the same comparison function for both sort() and bsearch().30 */31void *bsearch(const void *key, const void *base, size_t num, size_t size, cmp_func_t cmp)32{33	return __inline_bsearch(key, base, num, size, cmp);34}35EXPORT_SYMBOL(bsearch);36NOKPROBE_SYMBOL(bsearch);37