Larry Finger wrote: > When building the bleeding-edge compat-wireless for kernel 2.6.27, > several compilation errors were detected. > > Signed-off-by: Larry Finger <Larry.Finger@xxxxxxxxxxxx> > --- > > Luis, > > I checked these patches on 2.6.27 and 2.6.31, but not for the intermediate > releases. > > Larry > --- > > Index: compat-wireless-2009-09-05/include/net/compat-2.6.28.h > =================================================================== > --- compat-wireless-2009-09-05.orig/include/net/compat-2.6.28.h > +++ compat-wireless-2009-09-05/include/net/compat-2.6.28.h > @@ -149,6 +149,7 @@ static inline void skb_queue_splice_tail > struct module; > struct tracepoint; > > +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28)) > struct tracepoint { > const char *name; /* Tracepoint name */ > int state; /* State. */ > @@ -159,6 +160,7 @@ struct tracepoint { > * align these on the structure size. > * Keep in sync with vmlinux.lds.h. > */ > +#endif > > #ifndef DECLARE_TRACE > > @@ -179,13 +181,17 @@ struct tracepoint { > return -ENOSYS; \ > } > > +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28)) > #define DEFINE_TRACE(name) > +#endif > #define EXPORT_TRACEPOINT_SYMBOL_GPL(name) > #define EXPORT_TRACEPOINT_SYMBOL(name) > > +#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28)) > static inline void tracepoint_update_probe_range(struct tracepoint *begin, > struct tracepoint *end) > { } > +#endif > > #endif > LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28) can not be true in compat-2.6.28.h. The definitions are not needed in compat-wireless any more. Removing this does not break compiling with mainline kernel 2.6.25 to 2.6.32 > Index: compat-wireless-2009-09-05/net/wireless/compat-2.6.28.c > =================================================================== > --- compat-wireless-2009-09-05.orig/net/wireless/compat-2.6.28.c > +++ compat-wireless-2009-09-05/net/wireless/compat-2.6.28.c > @@ -260,6 +260,7 @@ static unsigned long round_jiffies_commo > return j; > } > > +#if 0 > /** > * round_jiffies_up - function to round jiffies up to a full second > * @j: the time in (absolute) jiffies that should be rounded > @@ -274,5 +275,6 @@ unsigned long round_jiffies_up(unsigned > return round_jiffies_common(j, raw_smp_processor_id(), true); > } > EXPORT_SYMBOL_GPL(round_jiffies_up); > +#endif > > #endif /* LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28) */ The mainline kernel 2.6.27 does not contain round_jiffies_up. Are you using Suse? Suse adds some extra extensions into the kernel, we need an other way to deactivate the round_jiffies_up export. With this patch this symbol is missing while compiling against mainline kernel <= 2.6.27. An other user reported a problem with the Suse kernel in: http://marc.info/?l=linux-wireless&m=125393384728475 > Index: compat-wireless-2009-09-05/net/wireless/scan.c > =================================================================== > --- compat-wireless-2009-09-05.orig/net/wireless/scan.c > +++ compat-wireless-2009-09-05/net/wireless/scan.c > @@ -499,8 +499,10 @@ cfg80211_inform_bss(struct wiphy *wiphy, > > kref_init(&res->ref); > > +#if (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,30)) > /* cfg80211_bss_update() eats up res - we ensure we free it there */ > kmemleak_ignore(res); > +#endif > > res = cfg80211_bss_update(wiphy_to_dev(wiphy), res, 0); > if (!res) Hauke
Attachment:
signature.asc
Description: OpenPGP digital signature