1. 10 Nov, 2011 3 commits
    • Maksim Rayskiy's avatar
      MIPS: ASID conflict after CPU hotplug · 5c200197
      Maksim Rayskiy authored
      I am running SMP Linux 2.6.37-rc1 on BMIPS5000 (single core dual thread)
      and observe some abnormalities when doing system suspend/resume which I
      narrowed down to cpu hotplugging. The suspend brings the second thread
      processor down and then restarts it, after which I see memory corruption
      in userspace. I started digging and found out that problem occurs because
      while doing execve() the child process is getting the same ASID as the
      parent, which obviously corrupts parent's address space.
      
      Further digging showed that activate_mm() calls get_new_mmu_context() to
      get a new ASID, but at this time ASID field in entryHi is 1, and
      asid_cache(cpu) is 0x100 (it was just reset to ASID_FIRST_VERSION when
      the secondary TP was booting).
      
      So, get_new_mmu_context() increments the asid_cache(cpu) value to
      0x101, and thus puts 0x01 into entryHi. The result - ASID field does
      not get changed as it was supposed to.
      
      My solution is very simple - do not reset asid_cache(cpu) on TP warm
      restart.
      
      Patchwork: https://patchwork.linux-mips.org/patch/1797/Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
      5c200197
    • David Daney's avatar
      MIPS: Octeon: Fix compile error in arch/mips/cavium-octeon/flash_setup.c · b2f90941
      David Daney authored
      The parse_mtd_partitions() and mtd_device_register() functions were
      combined into mtd_device_parse_register().  So call that instead.
      Signed-off-by: default avatarDavid Daney <david.daney@cavium.com>
      To: linux-mips@linux-mips.org
      Patchwork: https://patchwork.linux-mips.org/patch/2923/Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
      b2f90941
    • Aaro Koskinen's avatar
      MIPS: errloongson2_clock: Fix build error by including linux/module.h · 54b2edf4
      Aaro Koskinen authored
      Fix the following compilation failure with v3.2-rc1 by including module.h:
      
        CC [M]  arch/mips/kernel/cpufreq/loongson2_clock.o
      arch/mips/kernel/cpufreq/loongson2_clock.c:39:1: error: data definition has no type or storage class [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:39:1: error: type defaults to 'int' in declaration of 'EXPORT_SYMBOL_GPL' [-Werror=implicit-int]
      arch/mips/kernel/cpufreq/loongson2_clock.c:39:1: error: parameter names (without types) in function declaration [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:51:1: error: data definition has no type or storage class [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:51:1: error: type defaults to 'int' in declaration of 'EXPORT_SYMBOL' [-Werror=implicit-int]
      arch/mips/kernel/cpufreq/loongson2_clock.c:51:1: error: parameter names (without types) in function declaration [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:71:1: error: data definition has no type or storage class [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:71:1: error: type defaults to 'int' in declaration of 'EXPORT_SYMBOL' [-Werror=implicit-int]
      arch/mips/kernel/cpufreq/loongson2_clock.c:71:1: error: parameter names (without types) in function declaration [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:76:1: error: data definition has no type or storage class [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:76:1: error: type defaults to 'int' in declaration of 'EXPORT_SYMBOL' [-Werror=implicit-int]
      arch/mips/kernel/cpufreq/loongson2_clock.c:76:1: error: parameter names (without types) in function declaration [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:82:1: error: data definition has no type or storage class [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:82:1: error: type defaults to 'int' in declaration of 'EXPORT_SYMBOL' [-Werror=implicit-int]
      arch/mips/kernel/cpufreq/loongson2_clock.c:82:1: error: parameter names (without types) in function declaration [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:87:1: error: data definition has no type or storage class [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:87:1: error: type defaults to 'int' in declaration of 'EXPORT_SYMBOL' [-Werror=implicit-int]
      arch/mips/kernel/cpufreq/loongson2_clock.c:87:1: error: parameter names (without types) in function declaration [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:93:1: error: data definition has no type or storage class [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:93:1: error: type defaults to 'int' in declaration of 'EXPORT_SYMBOL_GPL' [-Werror=implicit-int]
      arch/mips/kernel/cpufreq/loongson2_clock.c:93:1: error: parameter names (without types) in function declaration [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:131:1: error: data definition has no type or storage class [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:131:1: error: type defaults to 'int' in declaration of 'EXPORT_SYMBOL_GPL' [-Werror=implicit-int]
      arch/mips/kernel/cpufreq/loongson2_clock.c:131:1: error: parameter names (without types) in function declaration [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:147:1: error: data definition has no type or storage class [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:147:1: error: type defaults to 'int' in declaration of 'EXPORT_SYMBOL_GPL' [-Werror=implicit-int]
      arch/mips/kernel/cpufreq/loongson2_clock.c:147:1: error: parameter names (without types) in function declaration [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:166:1: error: data definition has no type or storage class [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:166:1: error: type defaults to 'int' in declaration of 'EXPORT_SYMBOL_GPL' [-Werror=implicit-int]
      arch/mips/kernel/cpufreq/loongson2_clock.c:166:1: error: parameter names (without types) in function declaration [-Werror]
      arch/mips/kernel/cpufreq/loongson2_clock.c:168:15: error: expected declaration specifiers or '...' before string constant
      arch/mips/kernel/cpufreq/loongson2_clock.c:169:20: error: expected declaration specifiers or '...' before string constant
      arch/mips/kernel/cpufreq/loongson2_clock.c:170:16: error: expected declaration specifiers or '...' before string constant
      Signed-off-by: default avatarAaro Koskinen <aaro.koskinen@iki.fi>
      To: linux-mips@linux-mips.org
      To: linux-kernel@vger.kernel.org
      Patchwork: https://patchwork.linux-mips.org/patch/2922/Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
      54b2edf4
  2. 09 Nov, 2011 2 commits
  3. 08 Nov, 2011 7 commits
  4. 07 Nov, 2011 28 commits