1. 04 11月, 2017 7 次提交
  2. 23 10月, 2017 6 次提交
  3. 20 10月, 2017 24 次提交
  4. 04 10月, 2017 3 次提交
    • J
      vt: Use consistent logging style · bccf1da3
      Joe Perches 提交于
      vt has a mixture of pr_<level> and printk.
      Convert to using only pr_<level>.
      
      Miscellanea:
      
      o Coalesce formats
      o Realign arguments
      o Add missing braces around an if/else with the printk conversion
      Signed-off-by: NJoe Perches <joe@perches.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      bccf1da3
    • J
      sysrq : fix Show Regs call trace on ARM · b00bebbc
      Jibin Xu 提交于
      When kernel configuration SMP,PREEMPT and DEBUG_PREEMPT are enabled,
      echo 1 >/proc/sys/kernel/sysrq
      echo p >/proc/sysrq-trigger
      kernel will print call trace as below:
      
      sysrq: SysRq : Show Regs
      BUG: using __this_cpu_read() in preemptible [00000000] code: sh/435
      caller is __this_cpu_preempt_check+0x18/0x20
      Call trace:
      [<ffffff8008088e80>] dump_backtrace+0x0/0x1d0
      [<ffffff8008089074>] show_stack+0x24/0x30
      [<ffffff8008447970>] dump_stack+0x90/0xb0
      [<ffffff8008463950>] check_preemption_disabled+0x100/0x108
      [<ffffff8008463998>] __this_cpu_preempt_check+0x18/0x20
      [<ffffff80084c9194>] sysrq_handle_showregs+0x1c/0x40
      [<ffffff80084c9c7c>] __handle_sysrq+0x12c/0x1a0
      [<ffffff80084ca140>] write_sysrq_trigger+0x60/0x70
      [<ffffff8008251e00>] proc_reg_write+0x90/0xd0
      [<ffffff80081f1788>] __vfs_write+0x48/0x90
      [<ffffff80081f241c>] vfs_write+0xa4/0x190
      [<ffffff80081f3354>] SyS_write+0x54/0xb0
      [<ffffff80080833f0>] el0_svc_naked+0x24/0x28
      
      This can be seen on a common board like an r-pi3.
      This happens because when echo p >/proc/sysrq-trigger,
      get_irq_regs() is called outside of IRQ context,
      if preemption is enabled in this situation,kernel will
      print the call trace. Since many prior discussions on
      the mailing lists have made it clear that get_irq_regs
      either just returns NULL or stale data when used outside
      of IRQ context,we simply avoid calling it outside of
      IRQ context.
      Signed-off-by: NJibin Xu <jibin.xu@windriver.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      b00bebbc
    • E
      serial: 8250_dw: Improve clock rate setting · de9e33bd
      Ed Blake 提交于
      Currently dw8250_set_termios sets the input clock to the nearest
      achievable rate to baudx16.  If necessary, the input clock is then
      divided down to baudx16 using an integer divider within the UART
      device, with the divisor calculated in the 8250 core driver.
      
      However, the clock rate set by dw8250_set_termios and subsequently
      divided down could be considerably different to the target baudx16
      rate, resulting in incorrect operation.  This patch fixes this by
      iteratively searching for an input clock rate that is within +/-1.6%
      of an integer multiple of the target baudx16 rate.
      Signed-off-by: NEd Blake <ed.blake@sondrel.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      de9e33bd