android_kernel_sony_sdm845/include/asm-generic
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Steven Rostedt (VMware) c6bcf40f76 locking/qspinlock: Fix build for anonymous union in older GCC compilers
[ Upstream commit 6cc65be4f6f2a7186af8f3e09900787c7912dad2 ]

One of my tests compiles the kernel with gcc 4.5.3, and I hit the
following build error:

  include/linux/semaphore.h: In function 'sema_init':
  include/linux/semaphore.h:35:17: error: unknown field 'val' specified in initializer
  include/linux/semaphore.h:35:17: warning: missing braces around initializer
  include/linux/semaphore.h:35:17: warning: (near initialization for '(anonymous).raw_lock.<anonymous>.val')

I bisected it down to:

 625e88be1f41 ("locking/qspinlock: Merge 'struct __qspinlock' into 'struct qspinlock'")

... which makes qspinlock have an anonymous union, which makes initializing it special
for older compilers. By adding strategic brackets, it makes the build
happy again.

Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Acked-by: Waiman Long <longman@redhat.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Boqun Feng <boqun.feng@gmail.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Will Deacon <will.deacon@arm.com>
Cc: linux-arm-kernel@lists.infradead.org
Fixes: 625e88be1f41 ("locking/qspinlock: Merge 'struct __qspinlock' into 'struct qspinlock'")
Link: http://lkml.kernel.org/r/20180621203526.172ab5c4@vmware.local.home
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2018-12-21 14:11:34 +01:00
..
bitops
4level-fixup.h
asm-offsets.h
asm-prototypes.h
atomic-long.h
atomic.h
atomic64.h
audit_change_attr.h
audit_dir_write.h
audit_read.h
audit_signal.h
audit_write.h
barrier.h
bitops.h
bitsperlong.h
bug.h
bugs.h
cache.h
cacheflush.h
checksum.h
clkdev.h
cmpxchg-local.h
cmpxchg.h
cputime.h
cputime_jiffies.h
cputime_nsecs.h
current.h
delay.h
device.h
div64.h
dma-contiguous.h
dma.h
early_ioremap.h
emergency-restart.h
exec.h
export.h
fb.h
fixmap.h
ftrace.h
futex.h futex: Remove duplicated code and fix undefined behaviour 2018-05-19 10:27:00 +02:00
getorder.h
gpio.h
hardirq.h
hugetlb.h
hw_irq.h
ide_iops.h
int-ll64.h
io.h
ioctl.h
iomap.h
irq.h
irq_regs.h
irq_work.h
irqflags.h
Kbuild.asm
kdebug.h
kmap_types.h
kvm_para.h
linkage.h
local.h
local64.h
mcs_spinlock.h
memory_model.h
mm-arch-hooks.h
mm_hooks.h
mmu.h
mmu_context.h
module.h
msi.h
mutex-dec.h
mutex-null.h
mutex-xchg.h
mutex.h
page.h
param.h
parport.h
pci.h
pci_iomap.h
percpu.h
pgalloc.h
pgtable-nopmd.h
pgtable-nopud.h
pgtable.h ioremap: Update pgtable free interfaces with addr 2018-08-17 20:59:29 +02:00
preempt.h
ptrace.h
qrwlock.h
qrwlock_types.h
qspinlock.h
qspinlock_types.h locking/qspinlock: Fix build for anonymous union in older GCC compilers 2018-12-21 14:11:34 +01:00
resource.h
rwsem.h
seccomp.h
sections.h
segment.h
serial.h
siginfo.h
signal.h
simd.h
sizes.h
spinlock.h
statfs.h
string.h
switch_to.h
syscall.h
syscalls.h
termios-base.h
termios.h
timex.h
tlb.h
tlbflush.h
topology.h
trace_clock.h
uaccess-unaligned.h
uaccess.h
unaligned.h
unistd.h
user.h
vga.h
vmlinux.lds.h earlycon: Use a pointer table to fix __earlycon_table stride 2018-05-01 15:13:09 -07:00
vtime.h
word-at-a-time.h
xor.h