)]}'
{
  "commit": "7f74d27b2bdf12aaab5f9b6ad3b8eda2f2e9fe8c",
  "tree": "86ede462066ddaab25cc90cde69bd20dce37cac8",
  "parents": [
    "c6e6c6f20d853493c70a33f3be38e8ef3a373dfa"
  ],
  "author": {
    "name": "Barret Rhoden",
    "email": "brho@cs.berkeley.edu",
    "time": "Fri Feb 14 14:19:31 2020 -0500"
  },
  "committer": {
    "name": "Barret Rhoden",
    "email": "brho@cs.berkeley.edu",
    "time": "Tue Mar 03 15:13:30 2020 -0500"
  },
  "message": "ioat: support running in a process\u0027s address space\n\nWhenever a device is assigned to a process, it\u0027s DMA *allocations* come\nfrom the process\u0027s dma_arena.  These addresses are user addresses: both\ndriver and device.  So when we operate in the driver and touch those\nbits, we need to be in the user\u0027s address space.\n\nNote that dma_map_page() will not return a user-address.  We could try\nto wire that up, but it\u0027s a bit of a pull.  The issue is that fresh\nallocations are easy, but taking an existing kernel page and mapping it\ninto the user is a little tougher.\n\nSigned-off-by: Barret Rhoden \u003cbrho@cs.berkeley.edu\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5c6622c91cee7eb390df06c6ea3b77c99c05595a",
      "old_mode": 33188,
      "old_path": "kern/drivers/dma/ioat/init.c",
      "new_id": "cb9ae765baf02f5371c1fa92031111504a216b19",
      "new_mode": 33188,
      "new_path": "kern/drivers/dma/ioat/init.c"
    }
  ]
}
