1. 03 7月, 2017 3 次提交
    • T
      parisc: DMA API: return error instead of BUG_ON for dma ops on non dma devs · 33f9e024
      Thomas Bogendoerfer 提交于
      Enabling parport pc driver on a B2600 (and probably other 64bit PARISC
      systems) produced following BUG:
      
      CPU: 0 PID: 1 Comm: swapper Not tainted 4.12.0-rc5-30198-g1132d5e7 #156
      task: 000000009e050000 task.stack: 000000009e04c000
      
           YZrvWESTHLNXBCVMcbcbcbcbOGFRQPDI
      PSW: 00001000000001101111111100001111 Not tainted
      r00-03  000000ff0806ff0f 000000009e04c990 0000000040871b78 000000009e04cac0
      r04-07  0000000040c14de0 ffffffffffffffff 000000009e07f098 000000009d82d200
      r08-11  000000009d82d210 0000000000000378 0000000000000000 0000000040c345e0
      r12-15  0000000000000005 0000000040c345e0 0000000000000000 0000000040c9d5e0
      r16-19  0000000040c345e0 00000000f00001c4 00000000f00001bc 0000000000000061
      r20-23  000000009e04ce28 0000000000000010 0000000000000010 0000000040b89e40
      r24-27  0000000000000003 0000000000ffffff 000000009d82d210 0000000040c14de0
      r28-31  0000000000000000 000000009e04ca90 000000009e04cb40 0000000000000000
      sr00-03  0000000000000000 0000000000000000 0000000000000000 0000000000000000
      sr04-07  0000000000000000 0000000000000000 0000000000000000 0000000000000000
      
      IASQ: 0000000000000000 0000000000000000 IAOQ: 00000000404aece0 00000000404aece4
       IIR: 03ffe01f    ISR: 0000000010340000  IOR: 000001781304cac8
       CPU:        0   CR30: 000000009e04c000 CR31: 00000000e2976de2
       ORIG_R28: 0000000000000200
       IAOQ[0]: sba_dma_supported+0x80/0xd0
       IAOQ[1]: sba_dma_supported+0x84/0xd0
       RP(r2): parport_pc_probe_port+0x178/0x1200
      
      Cause is a call to dma_coerce_mask_and_coherenet in parport_pc_probe_port,
      which PARISC DMA API doesn't handle very nicely. This commit gives back
      DMA_ERROR_CODE for DMA API calls, if device isn't capable of DMA
      transaction.
      
      Cc: <stable@vger.kernel.org> # v3.13+
      Signed-off-by: NThomas Bogendoerfer <tsbogend@alpha.franken.de>
      Signed-off-by: NHelge Deller <deller@gmx.de>
      33f9e024
    • H
      parisc: Report SIGSEGV instead of SIGBUS when running out of stack · 24746231
      Helge Deller 提交于
      When a process runs out of stack the parisc kernel wrongly faults with SIGBUS
      instead of the expected SIGSEGV signal.
      
      This example shows how the kernel faults:
      do_page_fault() command='a.out' type=15 address=0xfaac2000 in libc-2.24.so[f8308000+16c000]
      trap #15: Data TLB miss fault, vm_start = 0xfa2c2000, vm_end = 0xfaac2000
      
      The vma->vm_end value is the first address which does not belong to the vma, so
      adjust the check to include vma->vm_end to the range for which to send the
      SIGSEGV signal.
      
      This patch unbreaks building the debian libsigsegv package.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: NHelge Deller <deller@gmx.de>
      24746231
    • E
      parisc: use compat_sys_keyctl() · b0f94efd
      Eric Biggers 提交于
      Architectures with a compat syscall table must put compat_sys_keyctl()
      in it, not sys_keyctl().  The parisc architecture was not doing this;
      fix it.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: NEric Biggers <ebiggers@google.com>
      Acked-by: NHelge Deller <deller@gmx.de>
      Signed-off-by: NHelge Deller <deller@gmx.de>
      b0f94efd
  2. 09 6月, 2017 4 次提交
  3. 12 5月, 2017 1 次提交
    • H
      parisc: Add Page Deallocation Table (PDT) support · c9c2877d
      Helge Deller 提交于
      The firmare in most parisc machines maintains a Page Deallocation Table (PDT)
      which holds a list of physical memory addresses where hardware detected memory
      errors (single bit and double bit errors).
      
      This patch adds the missing PDC firmware calls and the logic to read the PDT
      from firmware, report all current PDT entries and exclude the reported bad
      memory from being used by Linux.
      Signed-off-by: NHelge Deller <deller@gmx.de>
      c9c2877d
  4. 10 5月, 2017 5 次提交
  5. 09 5月, 2017 16 次提交
  6. 06 5月, 2017 2 次提交
    • A
      Revert "ARCv2: Allow enabling PAE40 w/o HIGHMEM" · cf4100d1
      Alexey Brodkin 提交于
      This reverts commit 7cab91b8.
      
      Now when we have a real hardware platform with PAE40 enabled
      (here I mean axs103 with firmware v1.2) and 1 Gb of DDR mapped to
      0x1_a000_0000-0x1_ffff_ffff we're really targeting memory above 4Gb
      when PAE40 is enabled. This in its turn requires HIGHMEM to be enabled
      otherwise user won't see any difference with enabling PAE in
      kernel configuration as only lowmem will be used anyways.
      Signed-off-by: NAlexey Brodkin <abrodkin@synopsys.com>
      Signed-off-by: NVineet Gupta <vgupta@synopsys.com>
      cf4100d1
    • V
      ARC: mm: fix build failure in linux-next for UP builds · 868a6530
      Vineet Gupta 提交于
      kisskb build service reported ARC defconfig build failures in linux-next
      
      | arch/arc/include/asm/mmu.h:75:21: error: 'NR_CPUS' undeclared here (not in a function)
      | make[3]: *** [arch/arc/mm/ioremap.o] Error 1
      | make[2]: *** [arch/arc/mm] Error 2
      | make[1]: *** [arch/arc] Error 2
      
      which I bisected to a subtle side-effect of a totally benign mm patch
      ("mm, vmalloc: properly track vmalloc users") which caused a header
      include chain deviation - asm/mmu.h using NR_CPUS before including
      linux/threads.h
      
      Fix that by adding the dependnet header and while it at fix a related
      header to include linux headers aheads of asm headers as sometimes that
      slso triggers such issues !
      
      Reported-by: noreply@ellerman.id.au
      Signed-off-by: NVineet Gupta <vgupta@synopsys.com>
      868a6530
  7. 05 5月, 2017 2 次提交
  8. 04 5月, 2017 2 次提交
  9. 03 5月, 2017 5 次提交