aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Documentation/DocBook/kernel-api.tmpl4
-rw-r--r--lib/bitmap.c31
2 files changed, 20 insertions, 15 deletions
diff --git a/Documentation/DocBook/kernel-api.tmpl b/Documentation/DocBook/kernel-api.tmpl
index 31b727ceb127..920aed8465a8 100644
--- a/Documentation/DocBook/kernel-api.tmpl
+++ b/Documentation/DocBook/kernel-api.tmpl
@@ -112,6 +112,10 @@ X!Ilib/string.c
112 <sect1><title>Bit Operations</title> 112 <sect1><title>Bit Operations</title>
113!Iinclude/asm-i386/bitops.h 113!Iinclude/asm-i386/bitops.h
114 </sect1> 114 </sect1>
115 <sect1><title>Bitmap Operations</title>
116!Elib/bitmap.c
117!Ilib/bitmap.c
118 </sect1>
115 </chapter> 119 </chapter>
116 120
117 <chapter id="mm"> 121 <chapter id="mm">
diff --git a/lib/bitmap.c b/lib/bitmap.c
index ed2ae3b0cd06..d71e38c54ea5 100644
--- a/lib/bitmap.c
+++ b/lib/bitmap.c
@@ -317,16 +317,16 @@ EXPORT_SYMBOL(bitmap_scnprintf);
317 317
318/** 318/**
319 * bitmap_parse - convert an ASCII hex string into a bitmap. 319 * bitmap_parse - convert an ASCII hex string into a bitmap.
320 * @buf: pointer to buffer in user space containing string. 320 * @ubuf: pointer to buffer in user space containing string.
321 * @buflen: buffer size in bytes. If string is smaller than this 321 * @ubuflen: buffer size in bytes. If string is smaller than this
322 * then it must be terminated with a \0. 322 * then it must be terminated with a \0.
323 * @maskp: pointer to bitmap array that will contain result. 323 * @maskp: pointer to bitmap array that will contain result.
324 * @nmaskbits: size of bitmap, in bits. 324 * @nmaskbits: size of bitmap, in bits.
325 * 325 *
326 * Commas group hex digits into chunks. Each chunk defines exactly 32 326 * Commas group hex digits into chunks. Each chunk defines exactly 32
327 * bits of the resultant bitmask. No chunk may specify a value larger 327 * bits of the resultant bitmask. No chunk may specify a value larger
328 * than 32 bits (-EOVERFLOW), and if a chunk specifies a smaller value 328 * than 32 bits (%-EOVERFLOW), and if a chunk specifies a smaller value
329 * then leading 0-bits are prepended. -EINVAL is returned for illegal 329 * then leading 0-bits are prepended. %-EINVAL is returned for illegal
330 * characters and for grouping errors such as "1,,5", ",44", "," and "". 330 * characters and for grouping errors such as "1,,5", ",44", "," and "".
331 * Leading and trailing whitespace accepted, but not embedded whitespace. 331 * Leading and trailing whitespace accepted, but not embedded whitespace.
332 */ 332 */
@@ -452,8 +452,8 @@ EXPORT_SYMBOL(bitmap_scnlistprintf);
452 452
453/** 453/**
454 * bitmap_parselist - convert list format ASCII string to bitmap 454 * bitmap_parselist - convert list format ASCII string to bitmap
455 * @buf: read nul-terminated user string from this buffer 455 * @bp: read nul-terminated user string from this buffer
456 * @mask: write resulting mask here 456 * @maskp: write resulting mask here
457 * @nmaskbits: number of bits in mask to be written 457 * @nmaskbits: number of bits in mask to be written
458 * 458 *
459 * Input format is a comma-separated list of decimal numbers and 459 * Input format is a comma-separated list of decimal numbers and
@@ -461,10 +461,11 @@ EXPORT_SYMBOL(bitmap_scnlistprintf);
461 * decimal numbers, the smallest and largest bit numbers set in 461 * decimal numbers, the smallest and largest bit numbers set in
462 * the range. 462 * the range.
463 * 463 *
464 * Returns 0 on success, -errno on invalid input strings: 464 * Returns 0 on success, -errno on invalid input strings.
465 * -EINVAL: second number in range smaller than first 465 * Error values:
466 * -EINVAL: invalid character in string 466 * %-EINVAL: second number in range smaller than first
467 * -ERANGE: bit number specified too large for mask 467 * %-EINVAL: invalid character in string
468 * %-ERANGE: bit number specified too large for mask
468 */ 469 */
469int bitmap_parselist(const char *bp, unsigned long *maskp, int nmaskbits) 470int bitmap_parselist(const char *bp, unsigned long *maskp, int nmaskbits)
470{ 471{
@@ -625,10 +626,10 @@ EXPORT_SYMBOL(bitmap_remap);
625 626
626/** 627/**
627 * bitmap_bitremap - Apply map defined by a pair of bitmaps to a single bit 628 * bitmap_bitremap - Apply map defined by a pair of bitmaps to a single bit
628 * @oldbit - bit position to be mapped 629 * @oldbit: bit position to be mapped
629 * @old: defines domain of map 630 * @old: defines domain of map
630 * @new: defines range of map 631 * @new: defines range of map
631 * @bits: number of bits in each of these bitmaps 632 * @bits: number of bits in each of these bitmaps
632 * 633 *
633 * Let @old and @new define a mapping of bit positions, such that 634 * Let @old and @new define a mapping of bit positions, such that
634 * whatever position is held by the n-th set bit in @old is mapped 635 * whatever position is held by the n-th set bit in @old is mapped
@@ -790,7 +791,7 @@ EXPORT_SYMBOL(bitmap_release_region);
790 * 791 *
791 * Allocate (set bits in) a specified region of a bitmap. 792 * Allocate (set bits in) a specified region of a bitmap.
792 * 793 *
793 * Return 0 on success, or -EBUSY if specified region wasn't 794 * Return 0 on success, or %-EBUSY if specified region wasn't
794 * free (not all bits were zero). 795 * free (not all bits were zero).
795 */ 796 */
796int bitmap_allocate_region(unsigned long *bitmap, int pos, int order) 797int bitmap_allocate_region(unsigned long *bitmap, int pos, int order)