)]}'
{
  "commit": "02c6ccc6dde90dcbf5975b1cfe2ab199e525ec11",
  "tree": "0a4286587fa357224cdaebe6c14ff2255b9b84ef",
  "parents": [
    "03a36f17d7788e4a1e07b3341b18028aa0206845"
  ],
  "author": {
    "name": "Alex Horn",
    "email": "alex.horn@cs.ox.ac.uk",
    "time": "Mon Nov 26 17:32:54 2012 +0100"
  },
  "committer": {
    "name": "Anthony Liguori",
    "email": "aliguori@us.ibm.com",
    "time": "Tue Nov 27 11:04:33 2012 -0600"
  },
  "message": "rtc: Only call rtc_set_cmos when Register B SET flag is disabled.\n\nThis bug occurs when the SET flag of Register B is enabled. When an RTC\ndata register (i.e. any of the ten time/calender CMOS bytes) is set, the\ndata is (as expected) correctly stored in the cmos_data array. However,\nsince the SET flag is enabled, the function rtc_set_time is not invoked.\nAs a result, the field base_rtc in RTCState remains uninitialized. This\ncauses a problem on subsequent writes which can end up overwriting data.\nTo see this, consider writing data to Register A after having written\ndata to any of the RTC data registers; the following figure illustrates\nthe call stack for the Register A write operation:\n\n +- cmos_io_port_write\n +-- check_update_timer\n +---- get_next_alarm\n +------ rtc_update_time\n\nIn rtc_update_time, get_guest_rtc calculates the wrong time and\noverwrites the previously written RTC data register values.\n\nSigned-off-by: Alex Horn \u003calex.horn@cs.ox.ac.uk\u003e\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\nSigned-off-by: Anthony Liguori \u003caliguori@us.ibm.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7d84ce3d74e38edbabedba51b2c63985c599af4d",
      "old_mode": 33188,
      "old_path": "hw/mc146818rtc.c",
      "new_id": "c79fca7d6839c03ebe5258b272360d6a829dbfbc",
      "new_mode": 33188,
      "new_path": "hw/mc146818rtc.c"
    },
    {
      "type": "modify",
      "old_id": "7fdc94a3de81a22526dff6eaf3a10897ef6b8cd1",
      "old_mode": 33188,
      "old_path": "tests/rtc-test.c",
      "new_id": "02edbf5727c208b7b671f3e3c601262f2fd1b4ab",
      "new_mode": 33188,
      "new_path": "tests/rtc-test.c"
    }
  ]
}
