Re: ima: use of radix tree cache indexing == massive waste of memory?

Ryan Ware
2010-10-18T16:54:25Z

On Sun, Oct 17, 2010 at 11:52 AM, Christoph Hellwig <hch@infradead.org> wrote:
> On Sun, Oct 17, 2010 at 03:59:20PM +0200, Peter Zijlstra wrote:
>> Well, it does suck it needs to bloat data and code when its effectively
>> disabled. Isn't there a way to gather this data before we enable it, eg.
>> scan the files list on enable or somesuch?
>>
>> I mean, if you mandate an external storage you might as well extend
>> struct inode, that's cheaper in each respect.
>
> That's in fact what it did initially.  While IBM claimed it would never
> be enabled in distros and this would be fine I feared this would not be
> true and told them to not make it have overhead if compiled in but not
> used.

Isn't it up to distros themselves to decide if this feature should be
enabled? I bring this up because we are intending to include this
turned on by default in the MeeGo kernel for the 1.2 release next
year.

I understand there are some technical concerns regarding performance.
We should figure out how to resolve those. That said, upstream is the
right place for this.

Ryan

> Turns out I wa right in my fear that IBM pressured distros to enable
> it anyway.  And turns out that I should have verified they didn't
> actually mess it up instead of expecting people to get such trivial
> things right.
>
>> Me, I'm henceforth making sure to have CONFIG_IMA disabled...
>
> Yeah.
>
>> >  but it doesn't
>> > help the fact that the suggested structure for storage (the radix
>> > tree) is apparently quite inefficient.  I'd love to hear other
>> > suggestions for a better structure....
>>
>> radix tree is efficient for dense sets, not sparse sets.
>
> Which actually works just fine for inodes on many filesystems if you
> use the right key.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
>