# git rev-parse -q --verify f0f7fe1ac35330f077357c787ec5bd8958bf300d^{commit} f0f7fe1ac35330f077357c787ec5bd8958bf300d already have revision, skipping fetch # git checkout -q -f -B kisskb f0f7fe1ac35330f077357c787ec5bd8958bf300d # git clean -qxdf # git log -1 commit f0f7fe1ac35330f077357c787ec5bd8958bf300d Author: Michael Ellerman Date: Mon Nov 21 21:14:35 2016 +1100 powerpc/boot: Fix rebuild when changing kernel endian Now that we don't set ARCH incorrectly when calling the boot Makefile, we can use the generic cpp_lds_S rule for converting our zImage.lds.S into zImage.lds. The main advantage of using the generic rule is that it correctly uses if_changed, which means we correctly regenerate the linker script when switching endian. Fixing that means we are finally able to build one endian and then rebuild the other endian without requiring to clean between builds. Signed-off-by: Michael Ellerman # < /opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-gcc --version # < git log --format=%s --max-count=1 f0f7fe1ac35330f077357c787ec5bd8958bf300d # < make -j 48 ARCH=powerpc O=/home/kisskb/slave/build/powerpc-next_powerpc-allnoconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- allnoconfig # make -j 48 ARCH=powerpc O=/home/kisskb/slave/build/powerpc-next_powerpc-allnoconfig_powerpc CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- make[1]: Entering directory '/home/kisskb/slave/build/powerpc-next_powerpc-allnoconfig_powerpc' GEN ./Makefile scripts/kconfig/conf --silentoldconfig Kconfig CHK include/config/kernel.release GEN ./Makefile UPD include/config/kernel.release WRAP arch/powerpc/include/generated/asm/clkdev.h WRAP arch/powerpc/include/generated/asm/export.h WRAP arch/powerpc/include/generated/asm/irq_regs.h WRAP arch/powerpc/include/generated/asm/irq_work.h WRAP arch/powerpc/include/generated/asm/div64.h WRAP arch/powerpc/include/generated/asm/mcs_spinlock.h WRAP arch/powerpc/include/generated/asm/local64.h WRAP arch/powerpc/include/generated/asm/preempt.h WRAP arch/powerpc/include/generated/asm/rwsem.h WRAP arch/powerpc/include/generated/asm/vtime.h CHK include/generated/uapi/linux/version.h UPD include/generated/uapi/linux/version.h CHK include/generated/utsrelease.h UPD include/generated/utsrelease.h Using /home/kisskb/slave/src as source for kernel HOSTCC scripts/sortextable HOSTCC scripts/dtc/dtc.o CC scripts/mod/empty.o HOSTCC scripts/dtc/flattree.o HOSTCC scripts/mod/mk_elfconfig HOSTCC scripts/dtc/fstree.o HOSTCC scripts/dtc/data.o HOSTCC scripts/dtc/livetree.o CC scripts/mod/devicetable-offsets.s HOSTCC scripts/dtc/treesource.o HOSTCC scripts/dtc/srcpos.o HOSTCC scripts/dtc/checks.o HOSTCC scripts/dtc/util.o SHIPPED scripts/dtc/dtc-parser.tab.c SHIPPED scripts/dtc/dtc-lexer.lex.c SHIPPED scripts/dtc/dtc-parser.tab.h HOSTCC scripts/dtc/dtc-parser.tab.o HOSTCC scripts/dtc/dtc-lexer.lex.o GEN scripts/mod/devicetable-offsets.h MKELF scripts/mod/elfconfig.h HOSTCC scripts/mod/modpost.o HOSTCC scripts/mod/file2alias.o HOSTCC scripts/mod/sumversion.o HOSTLD scripts/dtc/dtc HOSTLD scripts/mod/modpost CHK include/generated/timeconst.h CC kernel/bounds.s UPD include/generated/timeconst.h CHK include/generated/bounds.h UPD include/generated/bounds.h CC arch/powerpc/kernel/asm-offsets.s CHK include/generated/asm-offsets.h UPD include/generated/asm-offsets.h CALL /home/kisskb/slave/src/scripts/checksyscalls.sh CC init/main.o CHK include/generated/compile.h LD usr/built-in.o CC init/do_mounts.o CC init/init_task.o CC init/noinitramfs.o UPD include/generated/compile.h CC init/version.o CC arch/powerpc/mm/fault.o CC arch/powerpc/mm/mem.o LD arch/powerpc/sysdev/built-in.o AS arch/powerpc/lib/string.o CC arch/powerpc/mm/pgtable.o CC arch/powerpc/lib/alloc.o CC arch/powerpc/mm/mmap.o AS arch/powerpc/lib/crtsavres.o CC arch/powerpc/lib/feature-fixups.o CC arch/powerpc/lib/code-patching.o CC arch/powerpc/mm/init_32.o AS arch/powerpc/lib/copy_32.o LD arch/powerpc/platforms/built-in.o AS arch/powerpc/lib/checksum_32.o CC arch/powerpc/mm/ppc_mmu_32.o AS arch/powerpc/mm/hash_low_32.o CC arch/powerpc/mm/pgtable_32.o AS arch/powerpc/lib/div64.o CC arch/powerpc/mm/mmu_context_hash32.o CC arch/powerpc/lib/checksum_wrappers.o CC arch/powerpc/mm/tlb_hash32.o CC arch/powerpc/mm/hugetlbpage.o CC arch/powerpc/kernel/ptrace.o CC arch/powerpc/kernel/cputable.o CC arch/powerpc/kernel/align.o CC arch/powerpc/kernel/pmc.o LD arch/powerpc/math-emu/built-in.o CC arch/powerpc/kernel/vdso.o CC arch/powerpc/kernel/syscalls.o CC arch/powerpc/kernel/signal_32.o CC arch/powerpc/kernel/process.o CC arch/powerpc/kernel/irq.o CC arch/powerpc/kernel/signal.o CC arch/powerpc/kernel/cacheinfo.o CC arch/powerpc/kernel/time.o CPP arch/powerpc/kernel/systbl_chk.i CC arch/powerpc/kernel/idle.o CC arch/powerpc/kernel/setup-common.o CC arch/powerpc/kernel/udbg.o CC arch/powerpc/kernel/sysfs.o CC arch/powerpc/kernel/prom.o CC arch/powerpc/kernel/io.o CC arch/powerpc/kernel/traps.o AS arch/powerpc/kernel/misc.o CC arch/powerpc/kernel/dma.o AS arch/powerpc/kernel/misc_32.o CC arch/powerpc/kernel/prom_parse.o CC arch/powerpc/kernel/of_platform.o LD arch/powerpc/crypto/built-in.o AS arch/powerpc/kernel/idle_6xx.o AS arch/powerpc/kernel/l2cr_6xx.o AS arch/powerpc/kernel/cpu_setup_6xx.o AS arch/powerpc/kernel/entry_32.o LD arch/powerpc/net/built-in.o CC arch/powerpc/kernel/setup_32.o CC arch/powerpc/kernel/pci_32.o CC arch/powerpc/kernel/pci-common.o CC arch/powerpc/kernel/pci_of_scan.o CC arch/powerpc/kernel/iomap.o AS arch/powerpc/kernel/head_32.o LDS arch/powerpc/kernel/vmlinux.lds AS arch/powerpc/kernel/fpu.o LDS arch/powerpc/kernel/vdso32/vdso32.lds CALL /home/kisskb/slave/src/arch/powerpc/kernel/systbl_chk.sh VDSO32A arch/powerpc/kernel/vdso32/sigtramp.o VDSO32A arch/powerpc/kernel/vdso32/gettimeofday.o VDSO32A arch/powerpc/kernel/vdso32/datapage.o LD arch/powerpc/lib/built-in.o VDSO32A arch/powerpc/kernel/vdso32/cacheflush.o VDSO32A arch/powerpc/kernel/vdso32/note.o AS arch/powerpc/kernel/systbl.o LD certs/built-in.o VDSO32L arch/powerpc/kernel/vdso32/vdso32.so.dbg OBJCOPY arch/powerpc/kernel/vdso32/vdso32.so AS arch/powerpc/kernel/vdso32/vdso32_wrapper.o LD ipc/built-in.o LD arch/powerpc/kernel/vdso32/built-in.o CC security/commoncap.o LD arch/powerpc/mm/built-in.o CC security/min_addr.o LD crypto/built-in.o LD init/mounts.o CC kernel/fork.o CC kernel/exec_domain.o CC fs/open.o CC kernel/panic.o CC kernel/softirq.o CC kernel/exit.o CC fs/read_write.o CC kernel/cpu.o CC kernel/resource.o CC fs/file_table.o CC kernel/sysctl.o CC kernel/sysctl_binary.o CC fs/super.o CC fs/char_dev.o CC fs/exec.o CC kernel/user.o LD block/built-in.o CC kernel/ptrace.o CC fs/stat.o CC fs/pipe.o CC kernel/capability.o CC fs/namei.o CC kernel/kmod.o CC kernel/signal.o CC kernel/sys.o CC kernel/workqueue.o CC kernel/pid.o CC fs/ioctl.o CC fs/readdir.o CC fs/fcntl.o CC fs/select.o CC kernel/task_work.o CC fs/dcache.o CC kernel/extable.o LD init/built-in.o CC mm/filemap.o CC fs/inode.o CC kernel/params.o CC kernel/kthread.o LD sound/built-in.o CC mm/mempool.o CC kernel/sys_ni.o CC mm/oom_kill.o CC kernel/nsproxy.o LD firmware/built-in.o CC kernel/notifier.o CC mm/maccess.o LD net/built-in.o CC mm/page_alloc.o CC kernel/ksysfs.o CC kernel/cred.o CC fs/attr.o CC kernel/reboot.o LD arch/powerpc/kernel/built-in.o CC fs/bad_inode.o CC kernel/async.o CC kernel/range.o CC kernel/smpboot.o CC kernel/ucount.o LD virt/lib/built-in.o CC fs/file.o CC fs/filesystems.o LD kernel/livepatch/built-in.o CC fs/namespace.o LD virt/built-in.o CC fs/seq_file.o CC kernel/power/qos.o CC fs/xattr.o CC kernel/irq/irqdesc.o LD security/built-in.o CC kernel/printk/printk.o CC fs/libfs.o CC fs/fs-writeback.o CC mm/page-writeback.o CC kernel/locking/mutex.o CC fs/pnode.o CC kernel/rcu/update.o CC fs/splice.o CC kernel/dma.o CC kernel/up.o CC kernel/elfcore.o CC fs/sync.o CC kernel/memremap.o CC kernel/rcu/sync.o CC fs/utimes.o CC mm/readahead.o CC fs/stack.o LD drivers/amba/built-in.o CC kernel/sched/core.o CC mm/swap.o CC lib/lockref.o CC fs/fs_struct.o LD drivers/auxdisplay/built-in.o CC kernel/time/time.o CC fs/statfs.o LD drivers/bus/built-in.o CC fs/fs_pin.o LD drivers/block/built-in.o LD drivers/cdrom/built-in.o CC kernel/irq/handle.o CC fs/nsfs.o CC fs/no-block.o CC kernel/irq/manage.o CC mm/truncate.o CC lib/bcd.o LD fs/devpts/built-in.o LD drivers/char/ipmi/built-in.o CC lib/div64.o LD drivers/clocksource/built-in.o CC kernel/rcu/tiny.o CC drivers/char/random.o CC drivers/char/mem.o LD fs/exofs/built-in.o LD fs/quota/built-in.o CC fs/binfmt_elf.o CC lib/sort.o LD drivers/clk/bcm/built-in.o CC fs/ramfs/inode.o /home/kisskb/slave/src/kernel/printk/printk.c: In function 'devkmsg_sysctl_set_loglvl': /home/kisskb/slave/src/kernel/printk/printk.c:183:16: warning: 'old' may be used uninitialized in this function [-Wuninitialized] CC kernel/sched/loadavg.o LD fs/notify/dnotify/built-in.o CC fs/ramfs/file-mmu.o LD fs/notify/fanotify/built-in.o LD drivers/firewire/built-in.o LD fs/notify/inotify/built-in.o CC drivers/base/component.o CC drivers/base/core.o CC drivers/base/bus.o CC drivers/base/dd.o CC drivers/base/syscore.o LD fs/notify/built-in.o LD drivers/clk/mvebu/built-in.o CC drivers/base/driver.o LD drivers/clk/ti/built-in.o CC kernel/locking/semaphore.o CC drivers/base/class.o CC drivers/base/platform.o LD kernel/power/built-in.o LD drivers/hwtracing/intel_th/built-in.o LD drivers/gpu/vga/built-in.o CC lib/parser.o CC drivers/base/cpu.o CC lib/halfmd4.o LD drivers/firmware/broadcom/built-in.o LD drivers/clk/built-in.o LD kernel/printk/built-in.o CC drivers/base/firmware.o CC kernel/sched/cputime.o CC kernel/sched/clock.o CC drivers/base/init.o LD drivers/firmware/meson/built-in.o CC drivers/base/map.o LD drivers/firmware/built-in.o CC kernel/irq/spurious.o CC kernel/irq/resend.o CC lib/debug_locks.o CC mm/vmscan.o LD drivers/gpu/drm/bridge/built-in.o LD drivers/i2c/algos/built-in.o CC mm/shmem.o LD drivers/idle/built-in.o CC lib/random32.o CC lib/bust_spinlocks.o CC kernel/time/timer.o CC drivers/irqchip/irqchip.o CC drivers/base/devres.o CC mm/util.o LD drivers/gpu/drm/hisilicon/built-in.o LD drivers/i2c/busses/built-in.o LD drivers/lguest/built-in.o LD drivers/macintosh/built-in.o CC lib/kasprintf.o CC lib/bitmap.o CC kernel/sched/idle_task.o CC lib/scatterlist.o LD fs/ramfs/ramfs.o LD kernel/rcu/built-in.o LD drivers/i2c/muxes/built-in.o CC kernel/sched/fair.o LD fs/ramfs/built-in.o LD drivers/gpu/drm/i2c/built-in.o LD drivers/mfd/built-in.o CC drivers/char/misc.o CC drivers/base/attribute_container.o CC kernel/locking/rwsem.o CC drivers/base/transport_class.o CC drivers/base/topology.o LD drivers/i2c/built-in.o LD drivers/gpu/drm/panel/built-in.o CC mm/mmzone.o LD drivers/gpu/drm/omapdrm/displays/built-in.o CC drivers/base/container.o CC mm/vmstat.o CC drivers/base/property.o CC drivers/base/cacheinfo.o CC kernel/irq/chip.o CC drivers/base/dma-mapping.o LD drivers/gpu/drm/tilcdc/built-in.o LD drivers/base/power/built-in.o CC mm/backing-dev.o LD drivers/irqchip/built-in.o LD drivers/mmc/built-in.o CC kernel/irq/dummychip.o CC kernel/locking/percpu-rwsem.o LD drivers/gpu/drm/omapdrm/dss/built-in.o CC kernel/sched/rt.o CC mm/mmu_context.o CC mm/mm_init.o LD drivers/net/built-in.o LD drivers/nfc/built-in.o LD drivers/char/agp/built-in.o CC lib/gcd.o CC kernel/irq/devres.o LD drivers/misc/cb710/built-in.o CC kernel/locking/rwsem-xadd.o LD drivers/gpu/drm/omapdrm/built-in.o CC lib/lcm.o CC lib/list_sort.o LD drivers/nvme/host/built-in.o CC kernel/sched/stop_task.o CC kernel/sched/deadline.o LD drivers/misc/eeprom/built-in.o LD drivers/gpu/drm/built-in.o CC kernel/sched/swait.o CC kernel/sched/wait.o CC lib/uuid.o CC mm/percpu.o CC kernel/sched/completion.o CC lib/flex_array.o LD drivers/misc/lis3lv02d/built-in.o LD drivers/media/common/saa7146/built-in.o LD drivers/media/common/b2c2/built-in.o CC mm/slab_common.o LD drivers/nvme/target/built-in.o CC lib/iov_iter.o CC mm/compaction.o CC lib/clz_ctz.o CC lib/bsearch.o LD drivers/nvme/built-in.o LD drivers/misc/ti-st/built-in.o CC mm/vmacache.o CC drivers/of/base.o LD drivers/char/built-in.o CC lib/find_bit.o LD drivers/media/common/siano/built-in.o LD drivers/media/common/v4l2-tpg/built-in.o CC mm/interval_tree.o LD drivers/gpu/built-in.o CC mm/list_lru.o LD drivers/misc/mic/bus/built-in.o CC mm/workingset.o CC lib/llist.o CC kernel/time/hrtimer.o CC kernel/irq/irqdomain.o LD drivers/platform/built-in.o CC lib/kfifo.o CC mm/debug.o CC lib/memweight.o LD drivers/misc/mic/built-in.o CC lib/percpu-refcount.o LD drivers/media/common/built-in.o LD drivers/pwm/built-in.o LD drivers/power/built-in.o CC lib/percpu_ida.o CC mm/gup.o CC lib/rhashtable.o LD kernel/locking/built-in.o LD drivers/misc/built-in.o CC kernel/sched/idle.o CC drivers/of/device.o CC mm/highmem.o CC drivers/pci/access.o CC lib/reciprocal_div.o CC lib/once.o LD drivers/usb/host/built-in.o CC lib/string_helpers.o LD drivers/soc/fsl/built-in.o LD drivers/video/backlight/built-in.o LD drivers/soc/bcm/built-in.o CC lib/hexdump.o LD drivers/tty/ipwireless/built-in.o LD drivers/usb/built-in.o LD drivers/tty/serial/built-in.o CC mm/memory.o CC mm/mlock.o CC mm/mincore.o LD drivers/media/firewire/built-in.o CC lib/kstrtox.o LD drivers/video/fbdev/core/built-in.o LD drivers/soc/built-in.o CC drivers/pci/bus.o CC mm/mprotect.o LD fs/built-in.o CC mm/mmap.o CC lib/pci_iomap.o CC lib/iomap_copy.o LD drivers/tty/vt/built-in.o CC lib/devres.o LD drivers/tty/built-in.o CC lib/bitrev.o HOSTCC lib/gen_crc32table CC lib/hweight.o CC lib/syscall.o CC drivers/pci/probe.o CC mm/mremap.o LD drivers/media/mmc/siano/built-in.o CC kernel/time/itimer.o CC lib/atomic64.o LD drivers/media/i2c/soc_camera/built-in.o CC mm/msync.o CC lib/strncpy_from_user.o CC mm/vmalloc.o CC mm/rmap.o CC lib/strnlen_user.o CC lib/argv_split.o LD drivers/video/fbdev/omap2/omapfb/displays/built-in.o LD drivers/media/mmc/built-in.o CC lib/chacha20.o LD drivers/media/i2c/built-in.o CC mm/pagewalk.o CC lib/cmdline.o CC mm/pgtable-generic.o CC lib/ctype.o LD drivers/video/fbdev/omap2/omapfb/dss/built-in.o LD drivers/media/platform/omap/built-in.o CC lib/dec_and_lock.o CC mm/init-mm.o CC lib/decompress.o LD drivers/media/rc/keymaps/built-in.o CC lib/dma-noop.o LD drivers/media/platform/built-in.o CC lib/dump_stack.o LD drivers/video/fbdev/omap2/omapfb/built-in.o CC lib/earlycpio.o LD drivers/media/rc/built-in.o LD kernel/sched/built-in.o LD drivers/media/pci/b2c2/built-in.o CC lib/extable.o LD drivers/base/built-in.o CC mm/nobootmem.o CC mm/dmapool.o CC mm/memblock.o LD kernel/irq/built-in.o CC lib/fdt.o CC lib/fdt_empty_tree.o LD drivers/media/spi/built-in.o LD drivers/video/fbdev/omap2/built-in.o LD drivers/media/tuners/built-in.o CC lib/fdt_ro.o CC lib/fdt_rw.o LD drivers/media/pci/ddbridge/built-in.o LD drivers/video/fbdev/built-in.o CC mm/slub.o LD drivers/media/pci/dm1105/built-in.o CC lib/fdt_strerror.o CC lib/fdt_sw.o CC lib/fdt_wip.o CC kernel/time/posix-timers.o CC lib/flex_proportions.o CC lib/int_sqrt.o CC lib/ioremap.o CC lib/idr.o LD drivers/media/pci/netup_unidvb/built-in.o LD drivers/media/pci/ngene/built-in.o LD drivers/video/built-in.o LD drivers/media/pci/mantis/built-in.o CC lib/irq_regs.o CC kernel/time/posix-cpu-timers.o CC lib/is_single_threaded.o LD drivers/media/pci/pluto2/built-in.o CC drivers/of/platform.o CC drivers/of/fdt.o CC lib/kobject.o CC drivers/of/fdt_address.o CC lib/klist.o CC drivers/pci/host-bridge.o CC lib/kobject_uevent.o CC lib/nmi_backtrace.o CC lib/md5.o LD drivers/media/pci/pt1/built-in.o CC lib/nodemask.o LD drivers/media/pci/pt3/built-in.o LD drivers/media/pci/saa7146/built-in.o CC lib/plist.o CC kernel/time/timekeeping.o LD drivers/media/pci/smipcie/built-in.o CC lib/radix-tree.o LD drivers/media/pci/ttpci/built-in.o CC lib/ratelimit.o LD drivers/media/usb/b2c2/built-in.o LD drivers/media/usb/dvb-usb/built-in.o CC lib/rbtree.o LD drivers/media/usb/s2255/built-in.o LD drivers/media/usb/dvb-usb-v2/built-in.o LD drivers/media/usb/siano/built-in.o CC lib/sha1.o LD drivers/media/usb/stkwebcam/built-in.o LD drivers/media/usb/ttusb-budget/built-in.o CC lib/seq_buf.o CC lib/show_mem.o CC kernel/time/ntp.o CC lib/string.o CC lib/timerqueue.o LD drivers/media/pci/built-in.o LD drivers/media/usb/ttusb-dec/built-in.o CC lib/vsprintf.o LD drivers/media/usb/zr364xx/built-in.o CC lib/win_minmax.o CC drivers/of/address.o CC drivers/pci/remove.o CC drivers/of/irq.o CC drivers/of/of_pci.o CC drivers/pci/pci.o CC drivers/pci/pci-driver.o CC kernel/time/clocksource.o CC drivers/pci/search.o CC drivers/pci/pci-sysfs.o GEN lib/crc32table.h LD drivers/media/usb/built-in.o CC lib/crc32.o CC drivers/pci/rom.o CC kernel/time/jiffies.o CC drivers/pci/setup-res.o CC kernel/time/timer_list.o CC drivers/of/of_pci_irq.o CC kernel/time/timeconv.o CC drivers/of/of_reserved_mem.o CC kernel/time/timecounter.o CC kernel/time/posix-clock.o CC drivers/pci/irq.o LD drivers/media/built-in.o CC kernel/time/alarmtimer.o CC drivers/pci/vpd.o CC drivers/pci/setup-bus.o CC kernel/time/clockevents.o CC drivers/pci/vc.o CC kernel/time/tick-common.o CC drivers/pci/syscall.o CC drivers/pci/of.o LD drivers/pci/host/built-in.o LD drivers/of/built-in.o LD mm/built-in.o AR lib/lib.a EXPORTS lib/lib-ksyms.o LD lib/built-in.o LD kernel/time/built-in.o LD kernel/built-in.o LD drivers/pci/built-in.o LD drivers/built-in.o LD vmlinux.o MODPOST vmlinux.o GEN .version CHK include/generated/compile.h UPD include/generated/compile.h CC init/version.o LD init/built-in.o LD vmlinux SORTEX vmlinux SYSMAP System.map /opt/cross/kisskb/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-strip -s -R .comment vmlinux -o arch/powerpc/boot/vmlinux.strip make[1]: Leaving directory '/home/kisskb/slave/build/powerpc-next_powerpc-allnoconfig_powerpc' Completed OK # rm -rf /home/kisskb/slave/build/powerpc-next_powerpc-allnoconfig_powerpc # Build took: 0:00:11.622702