Re: 5ada28bf76752 causes compilation error if !CONFIG_LEDS_CLASS

From: Ingo Molnar
Date: Tue Nov 23 2010 - 04:18:21 EST



* Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote:

> On Tue, 23 Nov 2010 08:57:42 +0100 Ingo Molnar <mingo@xxxxxxx> wrote:
>
> >
> > * Berg, Johannes <johannes.berg@xxxxxxxxx> wrote:
> >
> > > > > Hmm. For some reason I thought this patch had made it into -mm,
> > > > > but I never double-checked and then went travelling ...
> > > > >
> > > > > http://lkml.org/lkml/2010/10/26/79
> > > >
> > > > oops, I filed it in the wrong drawer, under "non-urgent". It then got
> > > > buried in new paperwork. But not lost!
> > > >
> > > > Gee it's big. Could you please double-check that it is still complete?
> > >
> > > Will do. I suspect it should, unless you took new LED drivers? But then
> > > again you will now probably want a patch against -rc, not -mm?
> >
> > It applied with a fuzz here so something changed in that file since you made the
> > patch. I did a quick review of drivers/leds/Kconfig and your patch seems complete to
> > me.
>
> It looks complete to me as well. It already fixes LEDS_NETXBIG.

It fails to build on x86 64-bit allmodconfig:

drivers/leds/led-triggers.c:39:20: error: âTRIG_NAME_MAXâ undeclared (first use in this function)
drivers/leds/led-triggers.c:56:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:56:2: error: request for member ânext_trigâ in something not a structure or union
drivers/leds/led-triggers.c:56:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:56:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:56:2: error: request for member ânext_trigâ in something not a structure or union
drivers/leds/led-triggers.c:56:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:56:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:56:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:56:2: error: request for member ânext_trigâ in something not a structure or union
drivers/leds/led-triggers.c:56:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:56:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:56:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:56:2: error: request for member ânext_trigâ in something not a structure or union
drivers/leds/led-triggers.c:57:33: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:58:24: error: âstruct led_classdevâ has no member named âtrigger_lockâ
drivers/leds/led-triggers.c:60:22: error: âstruct led_classdevâ has no member named âtrigger_lockâ
drivers/leds/led-triggers.c:80:21: error: âstruct led_classdevâ has no member named âtrigger_lockâ
drivers/leds/led-triggers.c:82:15: error: âstruct led_classdevâ has no member named âtriggerâ
drivers/leds/led-triggers.c:87:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:87:2: error: request for member ânext_trigâ in something not a structure or union
drivers/leds/led-triggers.c:87:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:87:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:87:2: error: request for member ânext_trigâ in something not a structure or union
drivers/leds/led-triggers.c:87:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:87:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:87:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:87:2: error: request for member ânext_trigâ in something not a structure or union
drivers/leds/led-triggers.c:87:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:87:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:87:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:87:2: error: request for member ânext_trigâ in something not a structure or union
drivers/leds/led-triggers.c:88:15: error: âstruct led_classdevâ has no member named âtriggerâ
drivers/leds/led-triggers.c:88:44: error: âstruct led_classdevâ has no member named âtriggerâ
drivers/leds/led-triggers.c:89:12: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:90:41: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:92:39: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:94:19: error: âstruct led_classdevâ has no member named âtrigger_lockâ
drivers/leds/led-triggers.c:103:6: error: expected identifier or â(â before âdoâ
drivers/leds/led-triggers.c:103:6: error: expected identifier or â(â before âwhileâ
drivers/leds/led-triggers.c:127:19: error: âled_trigger_setâ undeclared here (not in a function)
drivers/leds/led-triggers.c:129:6: error: expected identifier or â(â before âdoâ
drivers/leds/led-triggers.c:129:6: error: expected identifier or â(â before âwhileâ
drivers/leds/led-triggers.c:135:19: error: âled_trigger_removeâ undeclared here (not in a function)
drivers/leds/led-triggers.c:137:6: error: expected identifier or â(â before âdoâ
drivers/leds/led-triggers.c:137:6: error: expected identifier or â(â before âwhileâ
drivers/leds/led-triggers.c:153:19: error: âled_trigger_set_defaultâ undeclared here (not in a function)
drivers/leds/led-triggers.c:162:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:163:25: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:167:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:167:2: error: request for member ânext_trigâ in something not a structure or union
drivers/leds/led-triggers.c:167:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:167:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:167:2: error: request for member ânext_trigâ in something not a structure or union
drivers/leds/led-triggers.c:167:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:167:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:167:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:167:2: error: request for member ânext_trigâ in something not a structure or union
drivers/leds/led-triggers.c:167:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:167:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:167:2: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:167:2: error: request for member ânext_trigâ in something not a structure or union
drivers/leds/led-triggers.c:168:19: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:168:34: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:174:24: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:180:23: error: âstruct led_classdevâ has no member named âtrigger_lockâ
drivers/leds/led-triggers.c:181:16: error: âstruct led_classdevâ has no member named âtriggerâ
drivers/leds/led-triggers.c:182:50: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:184:21: error: âstruct led_classdevâ has no member named âtrigger_lockâ
drivers/leds/led-triggers.c:198:19: error: dereferencing pointer to incomplete type
drivers/leds/led-triggers.c:204:23: error: âstruct led_classdevâ has no member named âtrigger_lockâ
drivers/leds/led-triggers.c:205:15: error: âstruct led_classdevâ has no member named âtriggerâ
drivers/leds/led-triggers.c:207:21: error: âstruct led_classdevâ has no member named âtrigger_lockâ
drivers/leds/led-triggers.c:215:6: error: expected identifier or â(â before âdoâ
drivers/leds/led-triggers.c:215:6: error: expected identifier or â(â before âwhileâ
drivers/leds/led-triggers.c:232:19: error: âled_trigger_eventâ undeclared here (not in a function)
drivers/leds/led-triggers.c:234:6: error: expected identifier or â(â before âdoâ
drivers/leds/led-triggers.c:234:6: error: expected identifier or â(â before âwhileâ
drivers/leds/led-triggers.c:253:19: error: âled_trigger_register_simpleâ undeclared here (not in a function)
drivers/leds/led-triggers.c:255:6: error: expected identifier or â(â before âdoâ
drivers/leds/led-triggers.c:255:6: error: expected identifier or â(â before âwhileâ
drivers/leds/led-triggers.c:261:19: error: âled_trigger_unregister_simpleâ undeclared here (not in a function)
net/rfkill/core.c:67:21: error: field âled_triggerâ has incomplete type
net/rfkill/core.c:147:11: error: âstruct led_classdevâ has no member named âtriggerâ
net/rfkill/core.c:171:2: error: implicit declaration of function âled_trigger_registerâ
net/rfkill/core.c:176:2: error: implicit declaration of function âled_trigger_unregisterâ
net/mac80211/led.c:59:33: error: invalid application of âsizeofâ to incomplete type âstruct led_triggerâ
net/mac80211/led.c:63:16: error: dereferencing pointer to incomplete type
net/mac80211/led.c:64:3: error: implicit declaration of function âled_trigger_registerâ
net/mac80211/led.c:70:33: error: invalid application of âsizeofâ to incomplete type âstruct led_triggerâ
net/mac80211/led.c:74:16: error: dereferencing pointer to incomplete type
net/mac80211/led.c:81:36: error: invalid application of âsizeofâ to incomplete type âstruct led_triggerâ
net/mac80211/led.c:85:19: error: dereferencing pointer to incomplete type
net/mac80211/led.c:92:36: error: invalid application of âsizeofâ to incomplete type âstruct led_triggerâ
net/mac80211/led.c:96:19: error: dereferencing pointer to incomplete type
net/mac80211/led.c:107:3: error: implicit declaration of function âled_trigger_unregisterâ
net/netfilter/xt_LED.c:47:21: error: field ânetfilter_led_triggerâ has incomplete type
net/netfilter/xt_LED.c:132:2: error: implicit declaration of function âled_trigger_registerâ
net/netfilter/xt_LED.c:183:2: error: implicit declaration of function âled_trigger_unregisterâ

Thanks,

Ingo

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/