)]}'
{
  "commit": "5381f14d98d75aecc547a33ef33dc49f4898cea3",
  "tree": "e7a4225fe6e6484e1c5c8d42fa492675eb15176e",
  "parents": [
    "2f2926a32d4807d175bf151a42926b4af10a5686"
  ],
  "author": {
    "name": "Al Viro",
    "email": "viro@zeniv.linux.org.uk",
    "time": "Tue Aug 09 17:00:13 2022 -0400"
  },
  "committer": {
    "name": "Al Viro",
    "email": "viro@zeniv.linux.org.uk",
    "time": "Fri Aug 19 16:10:24 2022 -0400"
  },
  "message": "termios: get rid of non-UAPI asm/termios.h\n\n\tThere are exactly two places where we include \u003casm/termios.h\u003e -\ninclude/uapi/linux/termios.h and include/linux/termios-internal.h.\nThe latter cares about the conversion functions; the former does\nnot.\n\n\tSo take those into asm/termios-internal.h and have\nlinux/termios-internal.h include that in addition to asm/termios.h\n(conditional upon the config symbol selected by the both architectures\nwhere such non-default functions exist - alpha and sparc, that is).\n\n\tThat would leave non-UAPI asm/termios.h consisting of include\nof its UAPI counterpart and possibly an include of linux/uaccess.h.\n\n\tThe latter can\u0027t be simply removed, even though nothing in\nlinux/termios.h doesn\u0027t depend upon it anymore - there are several\nplaces that rely upon that indirect chain of includes to pull\nlinux/uaccess.h.  So the include needs to be lifted out of there -\nwe lift into tty_driver.h, serdev.h and places that pull asm/termios.h,\nbut none of\n\t* linux/uaccess.h (obvious)\n\t* net/sock.h (pulls uaccess.h)\n\t* linux/{tty,tty_driver,serdev}.h (tty.h pulls tty_driver.h)\n\nThat leaves us just with the include of UAPI asm/termios.h, which is\nwhat \u003casm/termios.h\u003e will resolve to if we simply remove non-UAPI header.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f330410da63a6f940431170e7d0e29d6cd48ee38",
      "old_mode": 33188,
      "old_path": "arch/Kconfig",
      "new_id": "c9e1387d11944b60e925faf62bbfc864bf760784",
      "new_mode": 33188,
      "new_path": "arch/Kconfig"
    },
    {
      "type": "modify",
      "old_id": "97fce7386b0028d8d5b86287c41e9d0760362e65",
      "old_mode": 33188,
      "old_path": "arch/alpha/Kconfig",
      "new_id": "4b9d2941760ed5ac4f82be1956a1ca1f0d7243bb",
      "new_mode": 33188,
      "new_path": "arch/alpha/Kconfig"
    },
    {
      "type": "rename",
      "old_id": "c676067a1da7780a438558cbab0cd768620a7309",
      "old_mode": 33188,
      "old_path": "arch/alpha/include/asm/termios.h",
      "new_id": "c73cc96f96a305e33ee012cc0bd06ccf3ab6c87d",
      "new_mode": 33188,
      "new_path": "arch/alpha/include/asm/termios-internal.h",
      "score": 96
    },
    {
      "type": "modify",
      "old_id": "2d58e273c96dd9e874f15b38b129a959e4caafb7",
      "old_mode": 33188,
      "old_path": "arch/arm/mach-ep93xx/core.c",
      "new_id": "95e731676cea4f1e84d300e245ce3655eb8010c0",
      "new_mode": 33188,
      "new_path": "arch/arm/mach-ep93xx/core.c"
    },
    {
      "type": "modify",
      "old_id": "e216fac917d09bf99257dcda15506051827c1940",
      "old_mode": 33188,
      "old_path": "arch/arm/mach-versatile/integrator_ap.c",
      "new_id": "4bd6712e9f525d66a040a6e4d783da5b798914cd",
      "new_mode": 33188,
      "new_path": "arch/arm/mach-versatile/integrator_ap.c"
    },
    {
      "type": "delete",
      "old_id": "1cef027014015b7531479ddd7bc67da3a931ce5b",
      "old_mode": 33188,
      "old_path": "arch/ia64/include/asm/termios.h",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "12bc56857bf1498fff0fd70224b4c038ed3bd9e4",
      "old_mode": 33188,
      "old_path": "arch/mips/include/asm/termios.h",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "1850a90befb34b9d080095487030a835fb4a16dc",
      "old_mode": 33188,
      "old_path": "arch/parisc/include/asm/termios.h",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "83794533f607defb9402072b8374a1d6c17cb7e9",
      "old_mode": 33188,
      "old_path": "arch/powerpc/include/asm/termios.h",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "0e26fe97b0d41dcb9f7efe9da2b1999cde451e27",
      "old_mode": 33188,
      "old_path": "arch/s390/include/asm/termios.h",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "1c852bb530ecc949de22242c36cd8802c63f94f9",
      "old_mode": 33188,
      "old_path": "arch/sparc/Kconfig",
      "new_id": "9aaf980b5bffac9207512cb7066da32a1c9c0247",
      "new_mode": 33188,
      "new_path": "arch/sparc/Kconfig"
    },
    {
      "type": "rename",
      "old_id": "ba4b7517a3bb9236dbc772ed22720d16265a052a",
      "old_mode": 33188,
      "old_path": "arch/sparc/include/asm/termios.h",
      "new_id": "9d14a4bc40cfd67ef605e3d036cb997ed494424b",
      "new_mode": 33188,
      "new_path": "arch/sparc/include/asm/termios-internal.h",
      "score": 98
    },
    {
      "type": "modify",
      "old_id": "b8c7843730edfcd2eec0f5a5afa4dc2f0c684a1a",
      "old_mode": 33188,
      "old_path": "drivers/net/wwan/wwan_core.c",
      "new_id": "62e9f7d6c9fe97d2d5bc87038a2753a8317cd965",
      "new_mode": 33188,
      "new_path": "drivers/net/wwan/wwan_core.c"
    },
    {
      "type": "delete",
      "old_id": "da3b0fe25442b81e957695c5e8a5c86e4e2d9226",
      "old_mode": 33188,
      "old_path": "include/asm-generic/termios.h",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "3368c261ab623a91aa98dd5a85f8312f6664b047",
      "old_mode": 33188,
      "old_path": "include/linux/serdev.h",
      "new_id": "66f624fc618ca3bb4d216a8dba8615af84c911d1",
      "new_mode": 33188,
      "new_path": "include/linux/serdev.h"
    },
    {
      "type": "modify",
      "old_id": "7c92d64a79892d9f994264491fa2dd9a8b5cd16b",
      "old_mode": 33188,
      "old_path": "include/linux/termios_internal.h",
      "new_id": "60e9a8efc5b8f57594e0d07c2928022869edd32e",
      "new_mode": 33188,
      "new_path": "include/linux/termios_internal.h"
    },
    {
      "type": "modify",
      "old_id": "4841d8069c072bae22e7936be443b30f64148e1c",
      "old_mode": 33188,
      "old_path": "include/linux/tty_driver.h",
      "new_id": "fbbec811859faaa6f3397401d14fbbac19f34ccd",
      "new_mode": 33188,
      "new_path": "include/linux/tty_driver.h"
    }
  ]
}
