[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <13877462.KLqXKMuvjE@sifl>
Date: Wed, 10 Jul 2013 15:59:29 -0400
From: Paul Moore <paul@...l-moore.com>
To: Waiman Long <Waiman.Long@...com>,
Eric Paris <eparis@...isplace.org>
Cc: Stephen Smalley <sds@...ho.nsa.gov>,
James Morris <james.l.morris@...cle.com>,
linux-security-module@...r.kernel.org,
linux-kernel@...r.kernel.org,
"Chandramouleeswaran, Aswin" <aswin@...com>,
"Norton, Scott J" <scott.norton@...com>, selinux@...ho.nsa.gov
Subject: Re: [PATCH v2 2/2] SELinux: Increase ebitmap_node size for 64-bit configuration
On Wednesday, July 10, 2013 02:33:04 PM Stephen Smalley wrote:
> On 06/05/2013 05:15 PM, Waiman Long wrote:
> > Currently, the ebitmap_node structure has a fixed size of 32 bytes. On
> > a 32-bit system, the overhead is 8 bytes, leaving 24 bytes for being
> > used as bitmaps. The overhead ratio is 1/4.
> >
> > On a 64-bit system, the overhead is 16 bytes. Therefore, only 16 bytes
> > are left for bitmap purpose and the overhead ratio is 1/2. With a
> > 3.8.2 kernel, a boot-up operation will cause the ebitmap_get_bit()
> > function to be called about 9 million times. The average number of
> > ebitmap_node traversal is about 3.7.
> >
> > This patch increases the size of the ebitmap_node structure to 64
> > bytes for 64-bit system to keep the overhead ratio at 1/4. This may
> > also improve performance a little bit by making node to node traversal
> > less frequent (< 2) as more bits are available in each node.
> >
> > Signed-off-by: Waiman Long <Waiman.Long@...com>
>
> Acked-by: Stephen Smalley <sds@...ho.nsa.gov>
Looks good to me too. Merged, built, and tested okay too.
* git://git.infradead.org/users/pcmoore/lblnet-2.6_next
> > ---
> >
> > security/selinux/ss/ebitmap.h | 8 +++++++-
> > 1 files changed, 7 insertions(+), 1 deletions(-)
> >
> > diff --git a/security/selinux/ss/ebitmap.h b/security/selinux/ss/ebitmap.h
> > index e7eb3a9..712c8a7 100644
> > --- a/security/selinux/ss/ebitmap.h
> > +++ b/security/selinux/ss/ebitmap.h
> > @@ -16,7 +16,13 @@
> >
> > #include <net/netlabel.h>
> >
> > -#define EBITMAP_UNIT_NUMS ((32 - sizeof(void *) - sizeof(u32)) \
> > +#ifdef CONFIG_64BIT
> > +#define EBITMAP_NODE_SIZE 64
> > +#else
> > +#define EBITMAP_NODE_SIZE 32
> > +#endif
> > +
> > +#define EBITMAP_UNIT_NUMS ((EBITMAP_NODE_SIZE-sizeof(void
> > *)-sizeof(u32))\
> >
> > / sizeof(unsigned long))
> >
> > #define EBITMAP_UNIT_SIZE BITS_PER_LONG
> > #define EBITMAP_SIZE (EBITMAP_UNIT_NUMS * EBITMAP_UNIT_SIZE)
>
> --
> To unsubscribe from this list: send the line "unsubscribe
> linux-security-module" in the body of a message to
> majordomo@...r.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
--
paul moore
www.paul-moore.com
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists