Re: [GIT PULL] fbdev fixes for 3.19

From
Rafael J. Wysocki <hidden>
Date
2014-12-11 22:37:12
Also in
lkml
Reply to
Linus Torvalds, 2014-12-11
On Thursday, December 11, 2014 12:55:28 PM Linus Torvalds wrote:
On Thu, Dec 11, 2014 at 5:41 AM, Tomi Valkeinen [off-list ref] wrote:
quoted
Please pull fbdev changes for 3.19.
Ugh. I've pulled it, but I'm not a huge fan of commit 6d09dc6b74ca
("of.h: Keep extern declaration of of_* variables when !CONFIG_OF").

I guess it works, but it ends up delaying any failures from compile
time to link time, and the linker error messages likely won't be
great.

So I'm cc'ing the OF people and Rafael (who worked on OF/ACPI
unification) to see if they have comments, preferences, or other ways
to solve this.

Quite frankly, to me it smells like non-OF builds should just have an
empty "for_each_child_of_node ()" define instead of playing games with
externs that then end up not existing, and depending on the compiler
DTRT.

Comments?
"for_each_child_of_node ()" is not a problem here AFAICS, because in the
example from the commit changelog the compiler would complain on the
of_chosen instance in the "if ()" statement already anyway if I'm not mistaken.

It wants all of the code in the given block to make sense even if that
block will be optimized away going forward.  That's not specific to CONFIG_OF
too.

I stumbled over that a couple of times and I don't see a clean and simple way
to work around it at the moment.  In the cases I dealt with it was sufficient
to use static inlines that were defined to return NULL (or equivalent) when
the symbol in question was not defined.

Rafael
Thread (10 messages) 10 messages, 5 authors, 2014-12-29
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help