Looks good

Ethan

On Fri, Aug 26, 2011 at 13:19, Ben Pfaff <b...@nicira.com> wrote:
> ---
>  lib/bitmap.c |   21 ++++++++++++++++++++-
>  lib/bitmap.h |    2 ++
>  2 files changed, 22 insertions(+), 1 deletions(-)
>
> diff --git a/lib/bitmap.c b/lib/bitmap.c
> index df3c4eb..76a667a 100644
> --- a/lib/bitmap.c
> +++ b/lib/bitmap.c
> @@ -1,5 +1,5 @@
>  /*
> - * Copyright (c) 2008, 2009 Nicira Networks.
> + * Copyright (c) 2008, 2009, 2011 Nicira Networks.
>  *
>  * Licensed under the Apache License, Version 2.0 (the "License");
>  * you may not use this file except in compliance with the License.
> @@ -18,6 +18,25 @@
>  #include "bitmap.h"
>  #include <string.h>
>
> +/* Allocates and returns a bitmap initialized to all-1-bits. */
> +unsigned long *
> +bitmap_allocate1(size_t n_bits)
> +{
> +    size_t n_bytes = bitmap_n_bytes(n_bits);
> +    size_t n_longs = bitmap_n_longs(n_bits);
> +    unsigned long *bitmap;
> +
> +    /* Allocate and initialize most of the bitmap. */
> +    bitmap = xmalloc(n_bytes);
> +    memset(bitmap, 0xff, n_bytes);
> +
> +    /* Ensure that the last "unsigned long" in the bitmap only has as many
> +     * 1-bits as there actually should be. */
> +    bitmap[n_longs - 1] = (1UL << (n_bits % BITMAP_ULONG_BITS)) - 1;
> +
> +    return bitmap;
> +}
> +
>  /* Sets 'count' consecutive bits in 'bitmap', starting at bit offset 'start',
>  * to 'value'. */
>  void
> diff --git a/lib/bitmap.h b/lib/bitmap.h
> index f6feff0..c76e45f 100644
> --- a/lib/bitmap.h
> +++ b/lib/bitmap.h
> @@ -53,6 +53,8 @@ bitmap_allocate(size_t n_bits)
>     return xzalloc(bitmap_n_bytes(n_bits));
>  }
>
> +unsigned long *bitmap_allocate1(size_t n_bits);
> +
>  static inline unsigned long *
>  bitmap_clone(const unsigned long *bitmap, size_t n_bits)
>  {
> --
> 1.7.4.4
>
> _______________________________________________
> dev mailing list
> dev@openvswitch.org
> http://openvswitch.org/mailman/listinfo/dev
>
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to