#!/bin/bash # SPDX-License-Identifier: GPL-2.0-only # Translate the bits making up a GFP mask # (c) 2009, Mel Gorman SOURCE= GFPMASK=none # Helper function to report failures and exit die() { echo ERROR: $@ if [ "$TMPFILE" != "" ]; then rm -f $TMPFILE fi exit -1 } usage() { echo "usage: gfp-translate [-h] [ --source DIRECTORY ] gfpmask" exit 0 } # Parse command-line arguments while [ $# -gt 0 ]; do case $1 in --source) SOURCE=$2 shift 2 ;; -h) usage ;; --help) usage ;; *) GFPMASK=$1 shift ;; esac done # Guess the kernel source directory if it's not set. Preference is in order of # o current directory # o /usr/src/linux if [ "$SOURCE" = "" ]; then if [ -r "/usr/src/linux/Makefile" ]; then SOURCE=/usr/src/linux fi if [ -r "`pwd`/Makefile" ]; then SOURCE=`pwd` fi fi # Confirm that a source directory exists if [ ! -r "$SOURCE/Makefile" ]; then die "Could not locate kernel source directory or it is invalid" fi # Confirm that a GFP mask has been specified if [ "$GFPMASK" = "none" ]; then usage fi # Extract GFP flags from the kernel source TMPFILE=`mktemp -t gfptranslate-XXXXXX.c` || exit 1 echo Source: $SOURCE echo Parsing: $GFPMASK ( cat < #include // Try to fool compiler.h into not including extra stuff #define __ASSEMBLY__ 1 #include #include static const char *masks[] = { EOF sed -nEe 's/^[[:space:]]+(___GFP_.*)_BIT,.*$/\1/p' $SOURCE/include/linux/gfp_types.h | while read b; do cat < 0) [${b}_BIT] = "$b", #endif EOF done cat < $TMPFILE ${CC:-gcc} -Wall -o ${TMPFILE}.bin -I $SOURCE/include $TMPFILE && ${TMPFILE}.bin rm -f $TMPFILE ${TMPFILE}.bin exit 0 ms that use kernel services by normal system calls - this is merely considered normal use of the kernel, and does *not* fall under the heading of "derived work". otherwise syscall usage would not be possible. Update the files which contain no license information with an SPDX license identifier. The chosen identifier is 'GPL-2.0 WITH Linux-syscall-note' which is the officially assigned identifier for the Linux syscall exception. SPDX license identifiers are a legally binding shorthand, which can be used instead of the full boiler plate text. This patch is based on work done by Thomas Gleixner and Kate Stewart and Philippe Ombredanne. See the previous patch in this series for the methodology of how this patch was researched. Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org> Reviewed-by: Philippe Ombredanne <pombredanne@nexb.com> Reviewed-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> uapi: export all headers under uapi directories 2017-05-10T15:21:54Z Nicolas Dichtel nicolas.dichtel@6wind.com 2017-03-27T12:20:15Z urn:sha1:fcc8487d477a3452a1d0ccbdd4c5e0e1e3cb8bed Regularly, when a new header is created in include/uapi/, the developer forgets to add it in the corresponding Kbuild file. This error is usually detected after the release is out. In fact, all headers under uapi directories should be exported, thus it's useless to have an exhaustive list. After this patch, the following files, which were not exported, are now exported (with make headers_install_all): asm-arc/kvm_para.h asm-arc/ucontext.h asm-blackfin/shmparam.h asm-blackfin/ucontext.h asm-c6x/shmparam.h asm-c6x/ucontext.h asm-cris/kvm_para.h asm-h8300/shmparam.h asm-h8300/ucontext.h asm-hexagon/shmparam.h asm-m32r/kvm_para.h asm-m68k/kvm_para.h asm-m68k/shmparam.h asm-metag/kvm_para.h asm-metag/shmparam.h asm-metag/ucontext.h asm-mips/hwcap.h asm-mips/reg.h asm-mips/ucontext.h asm-nios2/kvm_para.h asm-nios2/ucontext.h asm-openrisc/shmparam.h asm-parisc/kvm_para.h asm-powerpc/perf_regs.h asm-sh/kvm_para.h asm-sh/ucontext.h asm-tile/shmparam.h asm-unicore32/shmparam.h asm-unicore32/ucontext.h asm-x86/hwcap2.h asm-xtensa/kvm_para.h drm/armada_drm.h drm/etnaviv_drm.h drm/vgem_drm.h linux/aspeed-lpc-ctrl.h linux/auto_dev-ioctl.h linux/bcache.h linux/btrfs_tree.h linux/can/vxcan.h linux/cifs/cifs_mount.h linux/coresight-stm.h linux/cryptouser.h linux/fsmap.h linux/genwqe/genwqe_card.h linux/hash_info.h linux/kcm.h linux/kcov.h linux/kfd_ioctl.h linux/lightnvm.h linux/module.h linux/nbd-netlink.h linux/nilfs2_api.h linux/nilfs2_ondisk.h linux/nsfs.h linux/pr.h linux/qrtr.h linux/rpmsg.h linux/sched/types.h linux/sed-opal.h linux/smc.h linux/smc_diag.h linux/stm.h linux/switchtec_ioctl.h linux/vfio_ccw.h linux/wil6210_uapi.h rdma/bnxt_re-abi.h Note that I have removed from this list the files which are generated in every exported directories (like .install or .install.cmd). Thanks to Julien Floret <julien.floret@6wind.com> for the tip to get all subdirs with a pure makefile command. For the record, note that exported files for asm directories are a mix of files listed by: - include/uapi/asm-generic/Kbuild.asm; - arch/<arch>/include/uapi/asm/Kbuild; - arch/<arch>/include/asm/Kbuild. Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com> Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch> Acked-by: Russell King <rmk+kernel@armlinux.org.uk> Acked-by: Mark Salter <msalter@redhat.com> Acked-by: Michael Ellerman <mpe@ellerman.id.au> (powerpc) Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> mmc: block: Change MMC_IOC_MAX_BYTES 2016-11-29T08:00:30Z Jeonghan Kim jh4u.kim@samsung.com 2016-10-19T10:48:02Z urn:sha1:417b1bf8367edb7e68bd9f3275c104871aeca530 It is used for limitation of buffer size during IOCTL such as FFU. However, eMMC FW size is bigger than (512L*256). (For instance, currently, Samsung eMMC FW size is over 300KB.) So, it needs to increase to execute FFU. Signed-off-by: Jeonghan Kim <jh4u.kim@samsung.com> Acked-by: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> mmc: block: Add new ioctl to send multi commands 2015-10-26T15:00:00Z Jon Hunter jonathanh@nvidia.com 2015-09-22T09:27:53Z urn:sha1:a5f5774c55a2e3ed75f4d6c5556b7bfcb726e6f0 Certain eMMC devices allow vendor specific device information to be read via a sequence of vendor commands. These vendor commands must be issued in sequence and an atomic fashion. One way to support this would be to add an ioctl function for sending a sequence of commands to the device atomically as proposed here. These multi commands are simple array of the existing mmc_ioc_cmd structure. The structure passed via the ioctl uses a __u64 type to specify the number of commands (so that the structure is aligned on a 64-bit boundary) and a zero length array as a header for list of commands to be issued. The maximum number of commands that can be sent is determined by MMC_IOC_MAX_CMDS (which defaults to 255 and should be more than sufficient). This based upon work by Seshagiri Holi <sholi@nvidia.com>. Signed-off-by: Seshagiri Holi <sholi@nvidia.com> Signed-off-by: Jon Hunter <jonathanh@nvidia.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> UAPI: (Scripted) Disintegrate include/linux/mmc 2012-10-11T21:27:54Z David Howells dhowells@redhat.com 2012-10-09T08:48:45Z urn:sha1:60fe5771be6aa3f37d5887aa01c04f733130a559 Signed-off-by: David Howells <dhowells@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Michael Kerrisk <mtk.manpages@gmail.com> Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Acked-by: Dave Jones <davej@redhat.com> Signed-off-by: Chris Ball <cjb@laptop.org> UAPI: (Scripted) Set up UAPI Kbuild files 2012-10-02T17:01:35Z David Howells dhowells@redhat.com 2012-10-02T17:01:35Z urn:sha1:4413e16d9d21673bb5048a2e542f1aaa00015c2e Set up empty UAPI Kbuild files to be populated by the header splitter. Signed-off-by: David Howells <dhowells@redhat.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com> Acked-by: Dave Jones <davej@redhat.com>