Re: e2fsprogs alignment

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 07/09/2012 03:24 PM, Eric Sandeen wrote:
On 7/8/12 1:07 AM, Jon Masters wrote:
On 07/07/2012 08:42 PM, Gordan Bobic wrote:
Can anyone confirm whether this has been fixed since the bug was filed?
Or whether there is still a risk of trashing the file system on ARMv5/ARMv6?

https://bugzilla.redhat.com/show_bug.cgi?id=680090

I believe Eric said this was now likely fixed upstream. Have you asked
him to confirm? Let me copy him, and I'm sure he'll say it's all fine :)

nope, sorry - well, not exactly fine.  ;)

We fixed on-disk structure alignment errors for XFS - this is a different
problem, with in-memory alignment...

These memory access problem on arm may well still exist.

It's "only" a warning about alignment though, right - I don't think this
results in any corruption etc, does it (anyway, filefrag is read-only).

What concerns me is that the buffers are allocated as char[4096] all over the place in e2fsprogs code files. That is inherently unsafe on everything except x86 and ARMv7+. I wouldn't want to assume that filefrag is the only affected program from the e2fsprogs suite, especially since the scope for trashing the file system is pretty high.

And as the comments in this bug indicate, I'm really not quite sure what
the accepted method of fixing is.

The options I can see are:

1) Detect sizeof(int) and declare the arrays as a suitable multiple of that. int _should_ be word sized on most things AFAIK.

2) Check the required alignment for the arch at build time, and apply it with "__attribute__ aligned" in every relevant instance. There's a LOT of those, but that's what you get for using non-portable techniques. :(

3) Add a new flag to gcc to align all arrays to a particular boundary. Unlikely to happen. FWIW, ICC has such an option, IIRC as it helps with performance, too, if things aren't straddling cache lines.

I imagine there are several applications
that exhibit similar behavior?

Not many, if you are referring to other packages. I filed bugs for most of them, but I filed against the available ARM releases (since rawhide wasn't up to running on ARM), so they all got closed without resolution pretty quickly. I gave up on bothering to file bugs after that.

Gordan
_______________________________________________
arm mailing list
arm@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/arm



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux ARM (Vger)]     [Linux ARM]     [ARM Kernel]     [Fedora User Discussion]     [Older Fedora Users Discussion]     [Fedora Advisory Board]     [Fedora Security]     [Fedora Maintainers]     [Fedora Devel Java]     [Fedora Legacy]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Mentors]     [Fedora Package Announce]     [Fedora Package Review]     [Fedora Music]     [Fedora Packaging]     [Centos]     [Fedora SELinux]     [Coolkey]     [Yum Users]     [Tux]     [Yosemite News]     [Linux Apps]     [KDE Users]     [Fedora Tools]     [Fedora Art]     [Fedora Docs]     [Asterisk PBX]

Powered by Linux