1. 27 1月, 2009 5 次提交
  2. 20 1月, 2009 1 次提交
  3. 17 1月, 2009 1 次提交
  4. 16 1月, 2009 19 次提交
  5. 15 1月, 2009 2 次提交
  6. 14 1月, 2009 12 次提交
    • H
      26689452
    • H
      ed6bb619
    • B
      [CVE-2009-0029] powerpc: Enable syscall wrappers for 64-bit · ee6a0932
      Benjamin Herrenschmidt 提交于
      This enables the use of syscall wrappers to do proper sign extension
      for 64-bit programs.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      ee6a0932
    • H
      [CVE-2009-0029] System call wrapper infrastructure · 1a94bc34
      Heiko Carstens 提交于
      From: Martin Schwidefsky <schwidefsky@de.ibm.com>
      
      By selecting HAVE_SYSCALL_WRAPPERS architectures can activate
      system call wrappers in order to sign extend system call arguments.
      
      All architectures where the ABI defines that the caller of a function
      has to perform sign extension probably need this.
      Reported-by: NChristian Borntraeger <borntraeger@de.ibm.com>
      Acked-by: NRalf Baechle <ralf@linux-mips.org>
      Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      1a94bc34
    • H
      [CVE-2009-0029] Remove __attribute__((weak)) from sys_pipe/sys_pipe2 · 1134723e
      Heiko Carstens 提交于
      Remove __attribute__((weak)) from common code sys_pipe implemantation.
      IA64, ALPHA, SUPERH (32bit) and SPARC (32bit) have own implemantations
      with the same name. Just rename them.
      For sys_pipe2 there is no architecture specific implementation.
      
      Cc: Richard Henderson <rth@twiddle.net>
      Cc: David S. Miller <davem@davemloft.net>
      Cc: Paul Mundt <lethal@linux-sh.org>
      Cc: Tony Luck <tony.luck@intel.com>
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      1134723e
    • H
      [CVE-2009-0029] Rename old_readdir to sys_old_readdir · e55380ed
      Heiko Carstens 提交于
      This way it matches the generic system call name convention.
      Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
      e55380ed
    • D
      sparc64: Fix UP build failure. · 7a6046eb
      David S. Miller 提交于
      sparc_ksyms_64.c includes asm/spinlock.h directly, which is
      a no-no.
      
      Even better, none of these exports are even necessary.  All
      of these functions are inlines.
      
      Reported by Meelis Roos and Alexander Beregalov.
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      7a6046eb
    • A
      powerpc/83xx: Move mcu_mpc8349emitx driver out of drivers/i2c/chips/ · ea0105ea
      Anton Vorontsov 提交于
      This patch is used to help Jean Delvare to get rid of drivers/i2c/chips/
      directory. The new location suggested by Kumar Gala: as the driver is
      83xx specific it's placed into arch/powerpc/platforms/83xx/.
      Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com>
      Acked-by: NJean Delvare <khali@linux-fr.org>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      ea0105ea
    • A
      powerpc/83xx: Make serial ports work on MPC8315E-RDB w/ FSL U-Boots · 6c9789de
      Anton Vorontsov 提交于
      FSL U-Boots use /soc8315@e0000000 node to search and fixup serial
      nodes' clock-frequency properties. Though in upstream kernels we use
      new naming convention -- for IMMR address space dts files specify
      /immr@e0000000 nodes.
      
      This makes FSL U-Boots fail to fixup the clock frequencies, and that
      leads to serial ports misbehaviour. We can workaround the issue by
      filling the clock frequency values manually.
      
      p.s. For the same reason FSL U-Boots fail to fixup MAC addresses for
      ethernet nodes, so users should either change the .dts file locally
      or set MAC address via `ifconfig hw ether' command.
      Signed-off-by: NAnton Vorontsov <avorontsov@ru.mvista.com>
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      6c9789de
    • K
      powerpc/e500mc: Doorbells need to be taken w/exceptions disabled · 5597b25c
      Kumar Gala 提交于
      We use Doorbell interrupts for IPIs and thus we need to make sure we aren't
      interrupted in the process of processing the IPI.
      Signed-off-by: NKumar Gala <galak@kernel.crashing.org>
      Acked-by: NDave Liu <daveliu@freescale.com>
      5597b25c
    • V
      x86 PAT: remove CPA WARN_ON for zero pte · 58dab916
      venkatesh.pallipadi@intel.com 提交于
      Impact: reduce scope of debug check - avoid warnings
      
      The logic to find whether identity map exists or not using
      high_memory or max_low_pfn_mapped/max_pfn_mapped are not complete
      as the memory withing the range may not be mapped if there is a
      unusable hole in e820.
      
      Specifically, on my test system I started seeing these warnings with
      tools like hwinfo, acpidump trying to map ACPI region.
      
      [   27.400018] ------------[ cut here ]------------
      [   27.400344] WARNING: at /home/venkip/src/linus/linux-2.6/arch/x86/mm/pageattr.c:560 __change_page_attr_set_clr+0xf3/0x8b8()
      [   27.400821] Hardware name: X7DB8
      [   27.401070] CPA: called for zero pte. vaddr = ffff8800cff6a000 cpa->vaddr = ffff8800cff6a000
      [   27.401569] Modules linked in:
      [   27.401882] Pid: 4913, comm: dmidecode Not tainted 2.6.28-05716-gfe0bdec6 #586
      [   27.402141] Call Trace:
      [   27.402488]  [<ffffffff80237c21>] warn_slowpath+0xd3/0x10f
      [   27.402749]  [<ffffffff80274ade>] ? find_get_page+0xb3/0xc9
      [   27.403028]  [<ffffffff80274a2b>] ? find_get_page+0x0/0xc9
      [   27.403333]  [<ffffffff80226425>] __change_page_attr_set_clr+0xf3/0x8b8
      [   27.403628]  [<ffffffff8028ec99>] ? __purge_vmap_area_lazy+0x192/0x1a1
      [   27.403883]  [<ffffffff8028eb52>] ? __purge_vmap_area_lazy+0x4b/0x1a1
      [   27.404172]  [<ffffffff80290268>] ? vm_unmap_aliases+0x1ab/0x1bb
      [   27.404512]  [<ffffffff80290105>] ? vm_unmap_aliases+0x48/0x1bb
      [   27.404766]  [<ffffffff80226d28>] change_page_attr_set_clr+0x13e/0x2e6
      [   27.405026]  [<ffffffff80698fa7>] ? _spin_unlock+0x26/0x2a
      [   27.405292]  [<ffffffff80227e6a>] ? reserve_memtype+0x19b/0x4e3
      [   27.405590]  [<ffffffff80226ffd>] _set_memory_wb+0x22/0x24
      [   27.405844]  [<ffffffff80225d28>] ioremap_change_attr+0x26/0x28
      [   27.406097]  [<ffffffff80228355>] reserve_pfn_range+0x1a3/0x235
      [   27.406427]  [<ffffffff80228430>] track_pfn_vma_new+0x49/0xb3
      [   27.406686]  [<ffffffff80286c46>] remap_pfn_range+0x94/0x32c
      [   27.406940]  [<ffffffff8022878d>] ? phys_mem_access_prot_allowed+0xb5/0x1a8
      [   27.407209]  [<ffffffff803e9bf4>] mmap_mem+0x75/0x9d
      [   27.407523]  [<ffffffff8028b3b4>] mmap_region+0x2cf/0x53e
      [   27.407776]  [<ffffffff8028b8cc>] do_mmap_pgoff+0x2a9/0x30d
      [   27.408034]  [<ffffffff8020f4a4>] sys_mmap+0x92/0xce
      [   27.408339]  [<ffffffff8020b65b>] system_call_fastpath+0x16/0x1b
      [   27.408614] ---[ end trace 4b16ad70c09a602d ]---
      [   27.408871] dmidecode:4913 reserve_pfn_range ioremap_change_attr failed write-back for cff6a000-cff6b000
      
      This is wih track_pfn_vma_new trying to keep identity map in sync.
      The address cff6a000 is the ACPI region according to e820.
      
      [    0.000000] BIOS-provided physical RAM map:
      [    0.000000]  BIOS-e820: 0000000000000000 - 000000000009c000 (usable)
      [    0.000000]  BIOS-e820: 000000000009c000 - 00000000000a0000 (reserved)
      [    0.000000]  BIOS-e820: 00000000000cc000 - 00000000000d0000 (reserved)
      [    0.000000]  BIOS-e820: 00000000000e4000 - 0000000000100000 (reserved)
      [    0.000000]  BIOS-e820: 0000000000100000 - 00000000cff60000 (usable)
      [    0.000000]  BIOS-e820: 00000000cff60000 - 00000000cff69000 (ACPI data)
      [    0.000000]  BIOS-e820: 00000000cff69000 - 00000000cff80000 (ACPI NVS)
      [    0.000000]  BIOS-e820: 00000000cff80000 - 00000000d0000000 (reserved)
      [    0.000000]  BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
      [    0.000000]  BIOS-e820: 00000000fec00000 - 00000000fec10000 (reserved)
      [    0.000000]  BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved)
      [    0.000000]  BIOS-e820: 00000000ff000000 - 0000000100000000 (reserved)
      [    0.000000]  BIOS-e820: 0000000100000000 - 0000000230000000 (usable)
      
      And is not mapped as per init_memory_mapping.
      
      [    0.000000] init_memory_mapping: 0000000000000000-00000000cff60000
      [    0.000000] init_memory_mapping: 0000000100000000-0000000230000000
      
      We can add logic to check for this. But, there can also be other holes in
      identity map when we have 1GB of aligned reserved space in e820.
      
      This patch handles it by removing the WARN_ON and returning a specific
      error value (EFAULT) to indicate that the address does not have any
      identity mapping.
      
      The code that tries to keep identity map in sync can ignore
      this error, with other callers of cpa still getting error here.
      Signed-off-by: NVenkatesh Pallipadi <venkatesh.pallipadi@intel.com>
      Signed-off-by: NSuresh Siddha <suresh.b.siddha@intel.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      58dab916
    • V
      x86 PAT: return compatible mapping to remap_pfn_range callers · cdecff68
      venkatesh.pallipadi@intel.com 提交于
      Impact: avoid warning message, potentially solve 3D performance regression
      
      Change x86 PAT code to return compatible memtype if the exact memtype that
      was requested in remap_pfn_rage and friends is not available due to some
      conflict.
      
      This is done by returning the compatible type in pgprot parameter of
      track_pfn_vma_new(), and the caller uses that memtype for page table.
      
      Note that track_pfn_vma_copy() which is basically called during fork gets the
      prot from existing page table and should not have any conflict. Hence we use
      strict memtype check there and do not allow compatible memtypes.
      
      This patch fixes the bug reported here:
      
        http://marc.info/?l=linux-kernel&m=123108883716357&w=2
      
      Specifically the error message:
      
        X:5010 map pfn expected mapping type write-back for d0000000-d0101000,
        got write-combining
      
      Should go away.
      Reported-and-bisected-by: NKevin Winchester <kjwinchester@gmail.com>
      Signed-off-by: NVenkatesh Pallipadi <venkatesh.pallipadi@intel.com>
      Signed-off-by: NSuresh Siddha <suresh.b.siddha@intel.com>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      cdecff68