Re: why does building with "C=1" cause errors?

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

 



On Monday 25 June 2007 18:50, Robert P. J. Day wrote:
>   just for the fun of it, i tried doing a build with "C=1" and got a
> pile of errors:
>
> ...
>   CHECK   init/main.c
> include/linux/spinlock_api_smp.h:22:47: error: undefined identifier 'lock'
> include/linux/spinlock_api_smp.h:22:47: error: bad constant expression
> include/linux/spinlock_api_smp.h:24:8: error: undefined identifier 'lock'
> include/linux/spinlock_api_smp.h:24:8: error: bad constant expression
> ...
>

What says make C=1 V=1 ? Do you have sparse installed?

>   which corresponds to this:
>
> void __lockfunc _spin_lock(spinlock_t *lock)            __acquires(lock);
> void __lockfunc _spin_lock_nested(spinlock_t *lock, int subclass)
>                      __acquires(lock);
>
> it's those "__acquires(lock)" attributes that are causing the problem,
> which are defined thusly when doing this kind of check:
>
> # define __acquires(x)  __attribute__((context(x,0,1)))
> # define __releases(x)  __attribute__((context(x,1,0)))
>
>   ok, so ... can someone explain what's happening here as i don't know
> squat about this particular gcc attribute.  thanks.
>

It's not a gcc attribute, but a sparse one. 

tavi

--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux