)]}'
{
  "commit": "284e5f6bf04a781679f867cd2d1ef81630be6e9e",
  "tree": "16891ac99a11324725469e4e67c2df832f5ec610",
  "parents": [
    "15e005cc4bb60bd0feef6bb24e150956c673ed40"
  ],
  "author": {
    "name": "George Kennedy",
    "email": "george.kennedy@oracle.com",
    "time": "Wed Jul 17 07:24:38 2024 -0500"
  },
  "committer": {
    "name": "Oleksandr Tymoshenko",
    "email": "ovt@google.com",
    "time": "Fri Sep 13 22:33:16 2024 +0000"
  },
  "message": "serial: core: check uartclk for zero to avoid divide by zero\n\ncommit 6eabce6608d6f3440f4c03aa3d3ef50a47a3d193 upstream.\n\nCalling ioctl TIOCSSERIAL with an invalid baud_base can\nresult in uartclk being zero, which will result in a\ndivide by zero error in uart_get_divisor(). The check for\nuartclk being zero in uart_set_info() needs to be done\nbefore other settings are made as subsequent calls to\nioctl TIOCSSERIAL for the same port would be impacted if\nthe uartclk check was done where uartclk gets set.\n\nOops: divide error: 0000  PREEMPT SMP KASAN PTI\nRIP: 0010:uart_get_divisor (drivers/tty/serial/serial_core.c:580)\nCall Trace:\n \u003cTASK\u003e\nserial8250_get_divisor (drivers/tty/serial/8250/8250_port.c:2576\n    drivers/tty/serial/8250/8250_port.c:2589)\nserial8250_do_set_termios (drivers/tty/serial/8250/8250_port.c:502\n    drivers/tty/serial/8250/8250_port.c:2741)\nserial8250_set_termios (drivers/tty/serial/8250/8250_port.c:2862)\nuart_change_line_settings (./include/linux/spinlock.h:376\n    ./include/linux/serial_core.h:608 drivers/tty/serial/serial_core.c:222)\nuart_port_startup (drivers/tty/serial/serial_core.c:342)\nuart_startup (drivers/tty/serial/serial_core.c:368)\nuart_set_info (drivers/tty/serial/serial_core.c:1034)\nuart_set_info_user (drivers/tty/serial/serial_core.c:1059)\ntty_set_serial (drivers/tty/tty_io.c:2637)\ntty_ioctl (drivers/tty/tty_io.c:2647 drivers/tty/tty_io.c:2791)\n__x64_sys_ioctl (fs/ioctl.c:52 fs/ioctl.c:907\n    fs/ioctl.c:893 fs/ioctl.c:893)\ndo_syscall_64 (arch/x86/entry/common.c:52\n    (discriminator 1) arch/x86/entry/common.c:83 (discriminator 1))\nentry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130)\n\nBUG\u003db/365947139\nTEST\u003dpresubmit\nRELEASE_NOTE\u003dFixes CVE-2024-43893 in the Linux kernel\n\ncos-patch: security-moderate\nReported-by: syzkaller \u003csyzkaller@googlegroups.com\u003e\nCc: stable@vger.kernel.org\nChange-Id: Ie58b4349495642717a05381984221a81027cbfb5\nSigned-off-by: George Kennedy \u003cgeorge.kennedy@oracle.com\u003e\nRule: add\nLink: https://lore.kernel.org/stable/1721148848-9784-1-git-send-email-george.kennedy%40oracle.com\nLink: https://lore.kernel.org/r/1721219078-3209-1-git-send-email-george.kennedy@oracle.com\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nSigned-off-by: Kernel CVE Triage Automation \u003ccloud-image-kernel-cve-triage-automation@prod.google.com\u003e\nReviewed-on: https://cos-review.googlesource.com/c/third_party/kernel/+/80781\nTested-by: Cusky Presubmit Bot \u003cpresubmit@cos-infra-prod.iam.gserviceaccount.com\u003e\nReviewed-by: Kevin Berry \u003ckpberry@google.com\u003e\nReviewed-by: Oleksandr Tymoshenko \u003covt@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b638b2fd2d3d245ee11c483f4ca6504706b0c67b",
      "old_mode": 33188,
      "old_path": "drivers/tty/serial/serial_core.c",
      "new_id": "7cd12ea88c0b007712caf6ea881729ca54549c3b",
      "new_mode": 33188,
      "new_path": "drivers/tty/serial/serial_core.c"
    }
  ]
}
