1. 19 May, 2010 5 commits
    • KOSAKI Motohiro's avatar
      cpumask: fix compat getaffinity · fa9dc265
      KOSAKI Motohiro authored
      Commit a45185d2 "cpumask: convert kernel/compat.c" broke libnuma, which
      abuses sched_getaffinity to find out NR_CPUS in order to parse
      /sys/devices/system/node/node*/cpumap.
      
      On NUMA systems with less than 32 possibly CPUs, the current
      compat_sys_sched_getaffinity now returns '4' instead of the actual
      NR_CPUS/8, which makes libnuma bail out when parsing the cpumap.
      
      The libnuma call sched_getaffinity(0, bitmap, 4096) at first.  It mean
      the libnuma expect the return value of sched_getaffinity() is either len
      argument or NR_CPUS.  But it doesn't expect to return nr_cpu_ids.
      
      Strictly speaking, userland requirement are
      
      1) Glibc assume the return value mean the lengh of initialized
         of mask argument. E.g. if sched_getaffinity(1024) return 128,
         glibc make zero fill rest 896 byte.
      2) Libnuma assume the return value can be used to guess NR_CPUS
         in kernel. It assume len-arg<NR_CPUS makes -EINVAL. But
         it try len=4096 at first and 4096 is always bigger than
         NR_CPUS. Then, if we remove strange min_length normalization,
         we never hit -EINVAL case.
      
      sched_getaffinity() already solved this issue.  This patch adapts
      compat_sys_sched_getaffinity() to match the non-compat case.
      Signed-off-by: default avatarKOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
      Acked-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      Acked-by: default avatarArnd Bergmann <arnd@arndb.de>
      Reported-by: default avatarKen Werner <ken.werner@web.de>
      Cc: stable@kernel.org
      Cc: Andi Kleen <andi@firstfloor.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      fa9dc265
    • Linus Torvalds's avatar
      Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 · cf77e988
      Linus Torvalds authored
      * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
        [IA64] Drop duplicated "config IOMMU_HELPER"
        [IA64] invoke oom-killer from page fault
        [IA64] use __ratelimit
        [IA64] Use set_cpus_allowed_ptr
        [IA64] Use set_cpus_allowed_ptr
        [IA64] arch/ia64/hp/common/sba_iommu.c: Rename dev_info to adi
        [IA64] removing redundant ifdef
      cf77e988
    • Linus Torvalds's avatar
      Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm · 1d3c6ff4
      Linus Torvalds authored
      * 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm: (224 commits)
        ARM: remove 'select GENERIC_TIME'
        ARM: 6136/1: ARCH_REQUIRE_GPIOLIB selects GENERIC_GPIO
        ARM: 6074/1: oprofile: convert from sysdev to platform device
        ARM: 6073/1: oprofile: remove old files and update KConfig
        ARM: 6072/1: oprofile: use perf-events framework as backend
        ARM: 6071/1: perf-events: allow modules to query the number of hardware counters
        ARM: 6070/1: perf-events: add support for xscale PMUs
        ARM: 6069/1: perf-events: use numeric ID to identify PMU
        ARM: 6064/1: pmu: register IRQs at runtime
        ARM: Optionally allow ARMv6 to use 'normal, bufferable' memory for DMA
        ARM: 6134/1: Handle instruction cache maintenance fault properly
        ARM: nwfpe: allow debugging output to be configured at runtime
        ARM: rename mach_cpu_disable() to platform_cpu_disable()
        ARM: 6132/1: PL330: Add common core driver
        ARM: 6094/1: Extend cache-l2x0 to support the 16-way PL310
        ARM: Move memory mapping into mmu.c
        ARM: Ensure meminfo is sorted prior to sanity_check_meminfo
        ARM: Remove useless linux/bootmem.h includes
        ARM: convert /proc/cpu/aligment to seq_file
        arm: use asm-generic/scatterlist.h
        ...
      1d3c6ff4
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6 · 7c7cbaf5
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6: (127 commits)
        sh: update defconfigs.
        sh: Fix up the NUMA build for recent LMB changes.
        sh64: provide a stub per_cpu_trap_init() definition.
        sh: fix up CONFIG_KEXEC=n build.
        sh: fixup the docbook paths for clock framework shuffling.
        driver core: Early dev_name() depends on slab_is_available().
        sh: simplify WARN usage in SH clock driver
        sh: Check return value of clk_get on ms7724
        sh: Check return value of clk_get on ecovec24
        sh: move sh clock-cpg.c contents to drivers/sh/clk-cpg.c
        sh: move sh clock.c contents to drivers/sh/clk.
        sh: move sh asm/clock.h contents to linux/sh_clk.h V2
        sh: remove unused clock lookup
        sh: switch boards to clkdev
        sh: switch sh4-202 to clkdev
        sh: switch shx3 to clkdev
        sh: switch sh7757 to clkdev
        sh: switch sh7763 to clkdev
        sh: switch sh7780 to clkdev
        sh: switch sh7786 to clkdev
        ...
      7c7cbaf5
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6 · ba0234ec
      Linus Torvalds authored
      * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: (24 commits)
        [S390] drivers/s390/char: Use kmemdup
        [S390] drivers/s390/char: Use kstrdup
        [S390] debug: enable exception-trace debug facility
        [S390] s390_hypfs: Add new attributes
        [S390] qdio: remove API wrappers
        [S390] qdio: set correct bit in dsci
        [S390] qdio: dont convert timestamps to microseconds
        [S390] qdio: remove memset hack
        [S390] qdio: prevent starvation on PCI devices
        [S390] qdio: count number of qdio interrupts
        [S390] user space fault: report fault before calling do_exit
        [S390] topology: expose core identifier
        [S390] dasd: remove uid from devmap
        [S390] dasd: add dynamic pav toleration
        [S390] vdso: add missing vdso_install target
        [S390] vdso: remove redundant check for CONFIG_64BIT
        [S390] avoid default_llseek in s390 drivers
        [S390] vmcp: disallow modular build
        [S390] add breaking event address for user space
        [S390] virtualization aware cpu measurement
        ...
      ba0234ec
  2. 18 May, 2010 35 commits