The generic-y is redundant under the following condition: - arch has its own implementation - the same header is added to generated-y - the same header is added to mandatory-y If a redundant generic-y is found, the warning like follows is displayed: scripts/Makefile.asm-generic:20: redundant generic-y found in arch/arm/include/asm/Kbuild: timex.h I fixed up arch Kbuild files found by this.
Unified · Split
| @@ -18,7 +18,6 @@ generic-y += segment.h · 17 unmodified lines | |||
| 18 | generic-y += serial.h | 18 | generic-y += serial.h |
| 19 | generic-y += simd.h | 19 | generic-y += simd.h |
| 20 | generic-y += sizes.h | 20 | generic-y += sizes.h |
| 21 | generic-y += timex.h | ||
| 22 | generic-y += trace_clock.h | 21 | generic-y += trace_clock.h |
| 23 | 22 | ||
| 24 | generated-y += mach-types.h | 23 | generated-y += mach-types.h |
| @@ -17,7 +17,6 @@ generic-y += fb.h · 16 unmodified lines | |||
| 17 | generic-y += ftrace.h | 17 | generic-y += ftrace.h |
| 18 | generic-y += futex.h | 18 | generic-y += futex.h |
| 19 | generic-y += hardirq.h | 19 | generic-y += hardirq.h |
| 20 | generic-y += hash.h | ||
| 21 | generic-y += hw_irq.h | 20 | generic-y += hw_irq.h |
| 22 | generic-y += irq_regs.h | 21 | generic-y += irq_regs.h |
| 23 | generic-y += irq_work.h | 22 | generic-y += irq_work.h |
| @@ -2,4 +2,3 @@ include include/uapi/asm-generic/Kbuild.asm · 1 unmodified line | |||
| 2 | 2 | ||
| 3 | generated-y += unistd_64.h | 3 | generated-y += unistd_64.h |
| 4 | generic-y += kvm_para.h | 4 | generic-y += kvm_para.h |
| 5 | generic-y += socket.h | ||
| @@ -15,7 +15,6 @@ generic-y += fb.h · 14 unmodified lines | |||
| 15 | generic-y += ftrace.h | 15 | generic-y += ftrace.h |
| 16 | generic-y += hardirq.h | 16 | generic-y += hardirq.h |
| 17 | generic-y += hw_irq.h | 17 | generic-y += hw_irq.h |
| 18 | generic-y += irq.h | ||
| 19 | generic-y += irq_regs.h | 18 | generic-y += irq_regs.h |
| 20 | generic-y += irq_work.h | 19 | generic-y += irq_work.h |
| 21 | generic-y += kdebug.h | 20 | generic-y += kdebug.h |
| @@ -35,7 +34,6 @@ generic-y += qrwlock.h · 13 unmodified lines | |||
| 35 | generic-y += sections.h | 34 | generic-y += sections.h |
| 36 | generic-y += segment.h | 35 | generic-y += segment.h |
| 37 | generic-y += shmparam.h | 36 | generic-y += shmparam.h |
| 38 | generic-y += string.h | ||
| 39 | generic-y += switch_to.h | 37 | generic-y += switch_to.h |
| 40 | generic-y += topology.h | 38 | generic-y += topology.h |
| 41 | generic-y += trace_clock.h | 39 | generic-y += trace_clock.h |
| @@ -1,7 +1,6 @@ | |||
| 1 | generated-y += syscall_table_32.h | 1 | generated-y += syscall_table_32.h |
| 2 | generated-y += syscall_table_64.h | 2 | generated-y += syscall_table_64.h |
| 3 | generated-y += syscall_table_c32.h | 3 | generated-y += syscall_table_c32.h |
| 4 | generic-y += barrier.h | ||
| 5 | generic-y += current.h | 4 | generic-y += current.h |
| 6 | generic-y += device.h | 5 | generic-y += device.h |
| 7 | generic-y += div64.h | 6 | generic-y += div64.h |
| @@ -20,7 +19,6 @@ generic-y += percpu.h · 12 unmodified lines | |||
| 20 | generic-y += preempt.h | 19 | generic-y += preempt.h |
| 21 | generic-y += seccomp.h | 20 | generic-y += seccomp.h |
| 22 | generic-y += segment.h | 21 | generic-y += segment.h |
| 23 | generic-y += topology.h | ||
| 24 | generic-y += trace_clock.h | 22 | generic-y += trace_clock.h |
| 25 | generic-y += user.h | 23 | generic-y += user.h |
| 26 | generic-y += vga.h | 24 | generic-y += vga.h |
| @@ -5,7 +5,6 @@ generated-y += syscall_table_spu.h · 4 unmodified lines | |||
| 5 | generic-y += div64.h | 5 | generic-y += div64.h |
| 6 | generic-y += export.h | 6 | generic-y += export.h |
| 7 | generic-y += irq_regs.h | 7 | generic-y += irq_regs.h |
| 8 | generic-y += irq_work.h | ||
| 9 | generic-y += local64.h | 8 | generic-y += local64.h |
| 10 | generic-y += mcs_spinlock.h | 9 | generic-y += mcs_spinlock.h |
| 11 | generic-y += preempt.h | 10 | generic-y += preempt.h |
| @@ -20,7 +20,6 @@ generic-y += local.h · 19 unmodified lines | |||
| 20 | generic-y += local64.h | 20 | generic-y += local64.h |
| 21 | generic-y += mcs_spinlock.h | 21 | generic-y += mcs_spinlock.h |
| 22 | generic-y += mm-arch-hooks.h | 22 | generic-y += mm-arch-hooks.h |
| 23 | generic-y += preempt.h | ||
| 24 | generic-y += rwsem.h | 23 | generic-y += rwsem.h |
| 25 | generic-y += trace_clock.h | 24 | generic-y += trace_clock.h |
| 26 | generic-y += unaligned.h | 25 | generic-y += unaligned.h |
| @@ -3,4 +3,3 @@ include include/uapi/asm-generic/Kbuild.asm · 2 unmodified lines | |||
| 3 | 3 | ||
| 4 | generated-y += unistd_32.h | 4 | generated-y += unistd_32.h |
| 5 | generated-y += unistd_64.h | 5 | generated-y += unistd_64.h |
| 6 | generic-y += socket.h | ||
| @@ -3,4 +3,3 @@ include include/uapi/asm-generic/Kbuild.asm · 2 unmodified lines | |||
| 3 | generated-y += unistd_32.h | 3 | generated-y += unistd_32.h |
| 4 | generated-y += unistd_64.h | 4 | generated-y += unistd_64.h |
| 5 | generated-y += unistd_x32.h | 5 | generated-y += unistd_x32.h |
| 6 | generic-y += socket.h | ||
| @@ -15,7 +15,6 @@ generic-y += irq_work.h · 14 unmodified lines | |||
| 15 | generic-y += kdebug.h | 15 | generic-y += kdebug.h |
| 16 | generic-y += kmap_types.h | 16 | generic-y += kmap_types.h |
| 17 | generic-y += kprobes.h | 17 | generic-y += kprobes.h |
| 18 | generic-y += linkage.h | ||
| 19 | generic-y += local.h | 18 | generic-y += local.h |
| 20 | generic-y += local64.h | 19 | generic-y += local64.h |
| 21 | generic-y += mcs_spinlock.h | 20 | generic-y += mcs_spinlock.h |
| @@ -2,4 +2,3 @@ include include/uapi/asm-generic/Kbuild.asm · 1 unmodified line | |||
| 2 | 2 | ||
| 3 | generated-y += unistd_32.h | 3 | generated-y += unistd_32.h |
| 4 | generic-y += kvm_para.h | 4 | generic-y += kvm_para.h |
| 5 | generic-y += socket.h | ||
| @@ -14,6 +14,12 @@ src := $(subst /generated,,$(obj)) · 13 unmodified lines | |||
| 14 | 14 | ||
| 15 | include scripts/Kbuild.include | 15 | include scripts/Kbuild.include |
| 16 | 16 | ||
| 17 | redundant := $(filter $(mandatory-y) $(generated-y), $(generic-y)) | ||
| 18 | redundant += $(foreach f, $(generic-y), $(if $(wildcard $(srctree)/$(src)/$(f)),$(f))) | ||
| 19 | redundant := $(sort $(redundant)) | ||
| 20 | $(if $(redundant),\ | ||
| 21 | $(warning redundant generic-y found in $(src)/Kbuild: $(redundant))) | ||
| 22 | |||
| 17 | # If arch does not implement mandatory headers, fallback to asm-generic ones. | 23 | # If arch does not implement mandatory headers, fallback to asm-generic ones. |
| 18 | mandatory-y := $(filter-out $(generated-y), $(mandatory-y)) | 24 | mandatory-y := $(filter-out $(generated-y), $(mandatory-y)) |
| 19 | generic-y += $(foreach f, $(mandatory-y), $(if $(wildcard $(srctree)/$(src)/$(f)),,$(f))) | 25 | generic-y += $(foreach f, $(mandatory-y), $(if $(wildcard $(srctree)/$(src)/$(f)),,$(f))) |