1. 05 9月, 2012 2 次提交
    • B
      hvc_vio: Improve registration of udbg backend · d1cfc0ce
      Benjamin Herrenschmidt 提交于
      The pseries hvterm driver only registers a udbg backend (for xmon and
      other low level debugging mechanisms) when hvc0 is recognized as the
      firmware console at boot time, not if it's detected later on, for
      example because the firmware is using a graphics card.
      
      This can make debugging challenging especially under X11, and there's
      really no good reason for that limitation, so let's hookup udbg
      whenever hvc0 is detected instead.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      d1cfc0ce
    • B
      hvc_console: Better kernel console support · 92057a49
      Benjamin Herrenschmidt 提交于
      hvc_console has two methods to instanciate the consoles.
      
      hvc_instanciate is meant to be called at early boot, while hvc_alloc is
      called for more dynamically probed objects.
      
      Currently, it only deals with adding kernel consoles in the former case,
      which means for example that if a console only uses dynamic probing, it
      will never be usable as a kernel console even when specifying
      console=hvc0 explicitly, which could be considered annoying...
      
      More specifically, on pseries, we only do the early instanciate for the
      console currently used by the firmware, so if you have your firmware
      configured to go to a video card, for example, you cannot get your
      kernel console, oops messages, etc... on your serial port or hypervisor
      console, which would be handy to deal with oopses.
      
      This fixes it by checking if hvc_console.flags & CON_ENABLED is set when
      registering a new dynamic console, and if not, redo the index check and
      re-register the console if the index matches, allowing console=hvcN to
      work.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      92057a49
  2. 20 7月, 2012 1 次提交
  3. 10 7月, 2012 1 次提交
  4. 25 5月, 2012 3 次提交
  5. 21 5月, 2012 1 次提交
  6. 15 5月, 2012 1 次提交
  7. 14 4月, 2012 1 次提交
    • J
      TTY: hvc, fix TTY refcounting · a2f89206
      Jiri Slaby 提交于
      A -next commit "TTY: HVC, use tty from tty_port" switched the driver
      to use tty_port helper for tty refcounting. But it omitted to remove
      manual tty refcounting from open, close and hangup. So now we are
      getting random crashes caused by use-after-free:
      Unable to handle kernel paging request for data at address 0xc0000003f9d550
      Faulting instruction address: 0xc0000000001b7f40
      Oops: Kernel access of bad area, sig: 11 [#1]
      ...
      NIP: c0000000001b7f40 LR: c0000000001b7f14 CTR: c0000000000e04f0
      ...
      NIP [c0000000001b7f40] .__kmalloc+0x70/0x230
      LR [c0000000001b7f14] .__kmalloc+0x44/0x230
      Call Trace:
      [c0000003f68bf930] [c0000003f68bf9b0] 0xc0000003f68bf9b0 (unreliable)
      [c0000003f68bf9e0] [c0000000001e5424] .alloc_fdmem+0x24/0x70
      [c0000003f68bfa60] [c0000000001e54f8] .alloc_fdtable+0x88/0x130
      [c0000003f68bfaf0] [c0000000001e5924] .dup_fd+0x384/0x450
      [c0000003f68bfbd0] [c00000000009a310] .copy_process+0x880/0x11d0
      [c0000003f68bfcd0] [c00000000009aee0] .do_fork+0x70/0x400
      [c0000003f68bfdc0] [c0000000000141c4] .sys_clone+0x54/0x70
      [c0000003f68bfe30] [c000000000009aa0] .ppc_clone+0x8/0xc
      
      Fix that by complete removal of tty_kref_get/put in open/close/hangup
      paths.
      Signed-off-by: NJiri Slaby <jslaby@suse.cz>
      Reported-and-tested-by: NMichael Neuling <mikey@neuling.org>
      Cc: Stephen Rothwell <sfr@canb.auug.org.au>
      Cc: ppc-dev <linuxppc-dev@lists.ozlabs.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      a2f89206
  8. 10 4月, 2012 10 次提交
  9. 28 3月, 2012 1 次提交
  10. 21 3月, 2012 1 次提交
  11. 16 3月, 2012 1 次提交
  12. 14 3月, 2012 3 次提交
  13. 09 3月, 2012 3 次提交
  14. 27 1月, 2012 1 次提交
    • A
      serial: Kill off NO_IRQ · d4e33fac
      Alan Cox 提交于
      We transform the offenders into a test of irq <= 0 which will be ok while
      the ARM people get their platform sorted. Once that is done (or in a while
      if they don't do it anyway) then we will change them all to !irq checks.
      
      For arch specific drivers that are already using NO_IRQ = 0 we just test
      against zero so we don't need to re-review them later.
      Signed-off-by: NAlan Cox <alan@linux.intel.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      d4e33fac
  15. 16 11月, 2011 1 次提交
    • S
      tty: hvc_dcc: Fix duplicate character inputs · c2a3e84f
      Stephen Boyd 提交于
      Reading from the DCC grabs a character from the buffer and
      clears the status bit. Since this is a context-changing
      operation, instructions following the character read that rely on
      the status bit being accurate need to be synchronized with an
      ISB.
      
      In this case, the status bit check needs to execute after the
      character read otherwise we run the risk of reading the character
      and checking the status bit before the read can clear the status
      bit in the first place. When this happens, the user will see the
      same character they typed twice, instead of once.
      
      Add an ISB after the read and the write, so that the status check
      is synchronized with the read/write operations.
      Signed-off-by: NStephen Boyd <sboyd@codeaurora.org>
      Cc: stable <stable@vger.kernel.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      c2a3e84f
  16. 07 11月, 2011 2 次提交
  17. 01 11月, 2011 1 次提交
  18. 19 10月, 2011 1 次提交
  19. 23 9月, 2011 1 次提交
  20. 20 9月, 2011 2 次提交
  21. 26 8月, 2011 1 次提交
  22. 20 7月, 2011 1 次提交