1. 14 Dec, 2018 5 commits
    • Masahiro Yamada's avatar
      microblaze: fix race condition in building boot images · 52e79c4f
      Masahiro Yamada authored
      I fixed a race condition in the parallel building of ARM in commit
      3939f334 ("ARM: 8418/1: add boot image dependencies to not
      generate invalid images").
      
      I see the same problem for MicroBlaze too.
      
      "make -j<N> ARCH=microblaze all linux.bin.ub" results in a broken build
      because two threads descend into arch/microblaze/boot simultaneously.
      
      Add proper dependencies to avoid it.
      Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
      Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
      52e79c4f
    • Masahiro Yamada's avatar
      microblaze: add linux.bin* and simpleImage.* to PHONY · 3dda563b
      Masahiro Yamada authored
      linux.bin, linux.bin.gz, and linux.bin.ub are phony targets to
      generate a corresponding image under arch/microblaze/boot/.
      
      simpleImage.% also works like a phony target, but a pattern that
      contains '%' cannot be a phony target. I replaced it with equivalent
      simpleImage.$(DTB).
      Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
      Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
      3dda563b
    • Masahiro Yamada's avatar
      microblaze: fix multiple bugs in arch/microblaze/boot/Makefile · 4722a3e6
      Masahiro Yamada authored
      This commit fixes some build issues.
      
      The first issue is the breakage of linux.bin.ub target since commit
      ece97f3a ("microblaze: Fix simpleImage format generation")
      because the addition of UIMAGE_{IN,OUT} affected it.
      
      make ARCH=microblaze CROSS_COMPILE=microblaze-linux- linux.bin.ub
        [ snip ]
        OBJCOPY arch/microblaze/boot/linux.bin
        UIMAGE  arch/microblaze/boot/linux.bin.ub.ub
      /usr/bin/mkimage: Can't open arch/microblaze/boot/linux.bin.ub: No such file or directory
      make[1]: *** [arch/microblaze/boot/Makefile;14: arch/microblaze/boot/linux.bin.ub] Error 1
      make: *** [arch/microblaze/Makefile;83: linux.bin.ub] Error 2
      
      The second issue is the use of the "if_changed" multiple times for
      the same target.
      
      As commit 92a47286 ("x86/boot: Fix if_changed build flip/flop bug")
      pointed out, this never works properly. Moreover, generating multiple
      images as a side-effect is confusing.
      
      Let's split the build recipe for each image.
      
      simpleImage.<dt>*.unstrip is just a copy of vmlinux.
      
      simpleImage.<dt> and simpleImage.<dt>.ub are created in the same way
      as linux.bin and linux.bin.ub, respectively.
      
      I kept simpleImage.* recipes independent of linux.bin.* ones to not
      change the behavior.
      
      Lastly, this commit fixes "make ARCH=microblaze clean". Previously,
      it only cleaned up the unstrip image. Now, all the simpleImage files
      are cleaned.
      Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
      Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
      4722a3e6
    • Masahiro Yamada's avatar
      microblaze: move "... is ready" messages to arch/microblaze/Makefile · 2e14f94c
      Masahiro Yamada authored
      To prepare for more fixes, move this to arch/microblaze/Makefile.
      Otherwise, the same "... is ready" would be printed multiple times.
      Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
      Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
      2e14f94c
    • Masahiro Yamada's avatar
      microblaze: adjust the help to the real behavior · bafcc61d
      Masahiro Yamada authored
      "make ARCH=microblaze help" mentions simpleImage.<dt>.unstrip,
      but it is not a real Make target. It does not work because Makefile
      assumes "system.unstrip" is the name of DT.
      
      $ make ARCH=microblaze CROSS_COMPILE=microblaze-linux- simpleImage.system.unstrip
        [ snip ]
      make[1]: *** No rule to make target 'arch/microblaze/boot/dts/system.unstrip.dtb', needed by 'arch/microblaze/boot/dts/system.dtb'.  Stop.
      make: *** [Makefile;1060: arch/microblaze/boot/dts] Error 2
      make: *** Waiting for unfinished jobs....
      
      simpleImage.<dt> works like a phony target that generates multiple
      images. Reflect the real behavior. I removed the DT directory path
      information because it is already explained a few lines below.
      
      While I am here, I deleted the redundant *_defconfig explanation.
      
      The top-level Makefile caters to list available defconfig files:
      
        mmu_defconfig            - Build for mmu
        nommu_defconfig          - Build for nommu
      Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
      Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
      bafcc61d
  2. 16 Nov, 2018 3 commits
    • Firoz Khan's avatar
      microblaze: generate uapi header and system call table files · 1e17ab53
      Firoz Khan authored
      System call table generation script must be run to gener-
      ate unistd_32.h and syscall_table.h files. This patch will
      have changes which will invokes the script.
      
      This patch will generate unistd_32.h and syscall_table.h
      files by the syscall table generation script invoked by
      microblaze/Makefile and the generated files against the
      removed files must be identical.
      
      The generated uapi header file will be included in uapi/-
      asm/unistd.h and generated system call table header file
      will be included by kernel/syscall_table.S file.
      Signed-off-by: default avatarFiroz Khan <firoz.khan@linaro.org>
      Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
      1e17ab53
    • Firoz Khan's avatar
      microblaze: add system call table generation support · fc06bac3
      Firoz Khan authored
      The system call tables are in different format in all
      architecture and it will be difficult to manually add,
      modify or delete the syscall table entries in the res-
      pective files. To make it easy by keeping a script and
      which will generate the uapi header and syscall table
      file. This change will also help to unify the implemen-
      tation across all architectures.
      
      The system call table generation script is added in
      kernel/syscalls directory which contain the scripts to
      generate both uapi header file and system call table
      files. The syscall.tbl will be input for the scripts.
      
      syscall.tbl contains the list of available system calls
      along with system call number and corresponding entry
      point. Add a new system call in this architecture will
      be possible by adding new entry in the syscall.tbl file.
      
      Adding a new table entry consisting of:
        	- System call number.
      	- ABI.
      	- System call name.
      	- Entry point name.
      
      syscallhdr.sh and syscalltbl.sh will generate uapi header
      unistd_32.h and syscall_table.h files respectively. Both
      .sh files will parse the content syscall.tbl to generate
      the header and table files. unistd_32.h will be included
      by uapi/asm/unistd.h and syscall_table.h is included by
      kernel/syscall_table.S - the real system call table.
      
      ARM, s390 and x86 architecuture does have similar support.
      I leverage their implementation to come up with a generic
      solution.
      Signed-off-by: default avatarFiroz Khan <firoz.khan@linaro.org>
      Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
      fc06bac3
    • Firoz Khan's avatar
      microblaze: move __NR_syscalls macro from asm/unistd.h · c0b2826a
      Firoz Khan authored
      __NR_syscalls holds the number of system call exist in
      microblaze architecture. We have to change the value of
      __NR_syscalls, if we add or delete a system call.
      
      One of the patch in this patch series has a script which
      will generate a uapi header based on syscall.tbl file.
      The syscall.tbl file contains the total number of system
      calls information. So we have two option to update __NR-
      _syscalls value.
      
      1. Update __NR_syscalls in asm/unistd.h manually by count-
         ing the no.of system calls. No need to update NR_sys-
         calls until we either add a new system call or delete
         existing system call.
      
      2. We can keep this feature it above mentioned script,
         that will count the number of syscalls and keep it in
         a generated file. In this case we don't need to expli-
         citly update __NR_syscalls in asm/unistd.h file.
      
      The 2nd option will be the recommended one. For that, I
      moved the __NR_syscalls macro from asm/unistd.h to uapi-
      /asm/unistd.h. While __NR_syscalls isn't strictly part of
      the uapi, having it as part of the generated header to
      simplifies the implementation. We also need to enclose
      this macro with #ifdef __KERNEL__ to avoid side effects.
      Signed-off-by: default avatarFiroz Khan <firoz.khan@linaro.org>
      Signed-off-by: default avatarMichal Simek <michal.simek@xilinx.com>
      c0b2826a
  3. 07 Nov, 2018 1 commit
  4. 04 Nov, 2018 9 commits
    • Linus Torvalds's avatar
      Linux 4.20-rc1 · 65102238
      Linus Torvalds authored
      65102238
    • Linus Torvalds's avatar
      Merge tag 'tags/upstream-4.20-rc1' of git://git.infradead.org/linux-ubifs · 42bd06e9
      Linus Torvalds authored
      Pull UBIFS updates from Richard Weinberger:
      
       - Full filesystem authentication feature, UBIFS is now able to have the
         whole filesystem structure authenticated plus user data encrypted and
         authenticated.
      
       - Minor cleanups
      
      * tag 'tags/upstream-4.20-rc1' of git://git.infradead.org/linux-ubifs: (26 commits)
        ubifs: Remove unneeded semicolon
        Documentation: ubifs: Add authentication whitepaper
        ubifs: Enable authentication support
        ubifs: Do not update inode size in-place in authenticated mode
        ubifs: Add hashes and HMACs to default filesystem
        ubifs: authentication: Authenticate super block node
        ubifs: Create hash for default LPT
        ubfis: authentication: Authenticate master node
        ubifs: authentication: Authenticate LPT
        ubifs: Authenticate replayed journal
        ubifs: Add auth nodes to garbage collector journal head
        ubifs: Add authentication nodes to journal
        ubifs: authentication: Add hashes to index nodes
        ubifs: Add hashes to the tree node cache
        ubifs: Create functions to embed a HMAC in a node
        ubifs: Add helper functions for authentication support
        ubifs: Add separate functions to init/crc a node
        ubifs: Format changes for authentication support
        ubifs: Store read superblock node
        ubifs: Drop write_node
        ...
      42bd06e9
    • Linus Torvalds's avatar
      Merge tag 'nfs-for-4.20-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · 4710e789
      Linus Torvalds authored
      Pull NFS client bugfixes from Trond Myklebust:
       "Highlights include:
      
        Bugfix:
         - Fix build issues on architectures that don't provide 64-bit cmpxchg
      
        Cleanups:
         - Fix a spelling mistake"
      
      * tag 'nfs-for-4.20-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
        NFS: fix spelling mistake, EACCESS -> EACCES
        SUNRPC: Use atomic(64)_t for seq_send(64)
      4710e789
    • Linus Torvalds's avatar
      Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 35e74524
      Linus Torvalds authored
      Pull more timer updates from Thomas Gleixner:
       "A set of commits for the new C-SKY architecture timers"
      
      * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        dt-bindings: timer: gx6605s SOC timer
        clocksource/drivers/c-sky: Add gx6605s SOC system timer
        dt-bindings: timer: C-SKY Multi-processor timer
        clocksource/drivers/c-sky: Add C-SKY SMP timer
      35e74524
    • Linus Torvalds's avatar
      Merge tag 'ntb-4.20' of git://github.com/jonmason/ntb · 04578e84
      Linus Torvalds authored
      Pull NTB updates from Jon Mason:
       "Fairly minor changes and bug fixes:
      
        NTB IDT thermal changes and hook into hwmon, ntb_netdev clean-up of
        private struct, and a few bug fixes"
      
      * tag 'ntb-4.20' of git://github.com/jonmason/ntb:
        ntb: idt: Alter the driver info comments
        ntb: idt: Discard temperature sensor IRQ handler
        ntb: idt: Add basic hwmon sysfs interface
        ntb: idt: Alter temperature read method
        ntb_netdev: Simplify remove with client device drvdata
        NTB: transport: Try harder to alloc an aligned MW buffer
        ntb: ntb_transport: Mark expected switch fall-throughs
        ntb: idt: Set PCIe bus address to BARLIMITx
        NTB: ntb_hw_idt: replace IS_ERR_OR_NULL with regular NULL checks
        ntb: intel: fix return value for ndev_vec_mask()
        ntb_netdev: fix sleep time mismatch
      04578e84
    • Linus Torvalds's avatar
      Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 71e56028
      Linus Torvalds authored
      Pull scheduler fixes from Ingo Molnar:
       "A memory (under-)allocation fix and a comment fix"
      
      * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/topology: Fix off by one bug
        sched/rt: Update comment in pick_next_task_rt()
      71e56028
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 601a8807
      Linus Torvalds authored
      Pull x86 fixes from Ingo Molnar:
       "A number of fixes and some late updates:
      
         - make in_compat_syscall() behavior on x86-32 similar to other
           platforms, this touches a number of generic files but is not
           intended to impact non-x86 platforms.
      
         - objtool fixes
      
         - PAT preemption fix
      
         - paravirt fixes/cleanups
      
         - cpufeatures updates for new instructions
      
         - earlyprintk quirk
      
         - make microcode version in sysfs world-readable (it is already
           world-readable in procfs)
      
         - minor cleanups and fixes"
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        compat: Cleanup in_compat_syscall() callers
        x86/compat: Adjust in_compat_syscall() to generic code under !COMPAT
        objtool: Support GCC 9 cold subfunction naming scheme
        x86/numa_emulation: Fix uniform-split numa emulation
        x86/paravirt: Remove unused _paravirt_ident_32
        x86/mm/pat: Disable preemption around __flush_tlb_all()
        x86/paravirt: Remove GPL from pv_ops export
        x86/traps: Use format string with panic() call
        x86: Clean up 'sizeof x' => 'sizeof(x)'
        x86/cpufeatures: Enumerate MOVDIR64B instruction
        x86/cpufeatures: Enumerate MOVDIRI instruction
        x86/earlyprintk: Add a force option for pciserial device
        objtool: Support per-function rodata sections
        x86/microcode: Make revision and processor flags world-readable
      601a8807
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 01897f3e
      Linus Torvalds authored
      Pull perf updates and fixes from Ingo Molnar:
       "These are almost all tooling updates: 'perf top', 'perf trace' and
        'perf script' fixes and updates, an UAPI header sync with the merge
        window versions, license marker updates, much improved Sparc support
        from David Miller, and a number of fixes"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (66 commits)
        perf intel-pt/bts: Calculate cpumode for synthesized samples
        perf intel-pt: Insert callchain context into synthesized callchains
        perf tools: Don't clone maps from parent when synthesizing forks
        perf top: Start display thread earlier
        tools headers uapi: Update linux/if_link.h header copy
        tools headers uapi: Update linux/netlink.h header copy
        tools headers: Sync the various kvm.h header copies
        tools include uapi: Update linux/mmap.h copy
        perf trace beauty: Use the mmap flags table generated from headers
        perf beauty: Wire up the mmap flags table generator to the Makefile
        perf beauty: Add a generator for MAP_ mmap's flag constants
        tools include uapi: Update asound.h copy
        tools arch uapi: Update asm-generic/unistd.h and arm64 unistd.h copies
        tools include uapi: Update linux/fs.h copy
        perf callchain: Honour the ordering of PERF_CONTEXT_{USER,KERNEL,etc}
        perf cs-etm: Correct CPU mode for samples
        perf unwind: Take pgoff into account when reporting elf to libdwfl
        perf top: Do not use overwrite mode by default
        perf top: Allow disabling the overwrite mode
        perf trace: Beautify mount's first pathname arg
        ...
      01897f3e
    • Linus Torvalds's avatar
      Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e9ebc215
      Linus Torvalds authored
      Pull irq fixes from Ingo Molnar:
       "An irqchip driver fix and a memory (over-)allocation fix"
      
      * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        irqchip/irq-mvebu-sei: Fix a NULL vs IS_ERR() bug in probe function
        irq/matrix: Fix memory overallocation
      e9ebc215
  5. 03 Nov, 2018 22 commits