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

Re: [Xen-devel] [PATCH 4/4] xen/arm: correctly handle an empty array of platform descs.



>>> On 14.05.13 at 18:41, Ian Campbell <Ian.Campbell@xxxxxxxxxx> wrote:
> On Tue, 2013-05-14 at 16:46 +0100, Jan Beulich wrote:
>> >>> On 14.05.13 at 17:07, Ian Campbell <Ian.Campbell@xxxxxxxxxx> wrote:
>> > But if I remove only -DGCC_HAS_VISIBILITY_ATTRIBUTE the issue goes away.
>> > 
>> > Which makes no sense because the test code has no use of that, but Aha: 
>> >         -include 
>> > /local/scratch/ianc/devel/arm/xen.git/xen/include/xen/config.h
>> > 
>> > Which eventually gets us, from compiler.h:
>> > #ifdef GCC_HAS_VISIBILITY_ATTRIBUTE
>> > /* Results in more efficient PIC code (no indirections through GOT or 
>> > PLT). 
> 
>> > */
>> > #pragma GCC visibility push(hidden)
>> > #endif
>> 
>> That's a very interesting (to me at least) side effect of applying
>> hidden visibility to symbols.
> 
> Indeed, me neither.
> 
> I pruned all the other options and it is exactly this pragma plus -O*
> which causes this behaviour, even on x86.

Yes, I had double checked this too, by selectively attaching
__attribute__((__visibility__())) to either or both of the involved
symbols. Once present on both, any visibility other than
"default" has this effect.

As Linux doesn't play with symbol visibility, we're really alone
having this problem, and hence indeed need to go through and
audit all places where the potential for empty ranges exists.

But you said "<" instead of "!=" didn't have any surprising side
effects, so quite likely we won't need much code to change.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.