One of linux scripts (arch/x86/kernel/vmlinux.lds) has next line:
.notes : AT(ADDR(.notes) - 0xffffffff80000000) { __start_notes = .; *(.note.*) __stop_notes = .; } :text :note
when built with --build-id, we create allocatable .note.gnu.build-id, what is fine.
And another .note.* section which script wants to combine is non-allocatable and we error out.
Patch allows combining note sections with different flags.