)]}'
{
  "log": [
    {
      "commit": "556e2d17cae620d549c5474b1ece053430cd50bc",
      "tree": "0716a75d50866006a4849dc8ebe2eb36311ab692",
      "parents": [
        "ec2d264ae4bb624f1b48a6f6ee1c47d7ea385f0a",
        "2a965d1b15d28065b35ab4ebd1e51558fcd91aa5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 19 09:58:55 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 19 09:58:55 2024 -0800"
      },
      "message": "Merge tag \u0027ceph-for-6.8-rc1\u0027 of https://github.com/ceph/ceph-client\n\nPull ceph updates from Ilya Dryomov:\n \"Assorted CephFS fixes and cleanups with nothing standing out\"\n\n* tag \u0027ceph-for-6.8-rc1\u0027 of https://github.com/ceph/ceph-client:\n  ceph: get rid of passing callbacks in __dentry_leases_walk()\n  ceph: d_obtain_{alias,root}(ERR_PTR(...)) will do the right thing\n  ceph: fix invalid pointer access if get_quota_realm return ERR_PTR\n  ceph: remove duplicated code in ceph_netfs_issue_read()\n  ceph: send oldest_client_tid when renewing caps\n  ceph: rename create_session_open_msg() to create_session_full_msg()\n  ceph: select FS_ENCRYPTION_ALGS if FS_ENCRYPTION\n  ceph: fix deadlock or deadcode of misusing dget()\n  ceph: try to allocate a smaller extent map for sparse read\n  libceph: remove MAX_EXTENTS check for sparse reads\n  ceph: reinitialize mds feature bit even when session in open\n  ceph: skip reconnecting if MDS is not ready\n"
    },
    {
      "commit": "ec2d264ae4bb624f1b48a6f6ee1c47d7ea385f0a",
      "tree": "6fc6cd0aaece1ebc202d6bc58847a3f9146f3684",
      "parents": [
        "8cb1bb178cdbdf005b7ac07bb67a1e1f3e365e5a",
        "d61b40bf15ce453f3aa71f6b423938e239e7f8f8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 19 09:57:08 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 19 09:57:08 2024 -0800"
      },
      "message": "Merge tag \u0027xfs-6.8-merge-4\u0027 of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux\n\nPull xfs fix from Chandan Babu:\n\n - Fix per-inode space accounting bug\n\n* tag \u0027xfs-6.8-merge-4\u0027 of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:\n  xfs: fix backwards logic in xfs_bmap_alloc_account\n"
    },
    {
      "commit": "8cb1bb178cdbdf005b7ac07bb67a1e1f3e365e5a",
      "tree": "d40198c6794a35f2bef3025533b2939d5fcad54b",
      "parents": [
        "16df6e07d6a88dc3049a5674654ed44dfbc74d81",
        "77bebd186442a7d703b796784db7495129cc3e70"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 19 09:31:59 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 19 09:31:59 2024 -0800"
      },
      "message": "Merge tag \u00276.8-rc-smb-server-fixes-part2\u0027 of git://git.samba.org/ksmbd\n\nPull more smb server updates from Steve French:\n\n - Fix for incorrect oplock break on directories when leases disabled\n\n - UAF fix for race between create and destroy of tcp connection\n\n - Important session setup SPNEGO fix\n\n - Update ksmbd feature status summary\n\n* tag \u00276.8-rc-smb-server-fixes-part2\u0027 of git://git.samba.org/ksmbd:\n  ksmbd: only v2 leases handle the directory\n  ksmbd: fix UAF issue in ksmbd_tcp_new_connection()\n  ksmbd: validate mech token in session setup\n  ksmbd: update feature status in documentation\n"
    },
    {
      "commit": "16df6e07d6a88dc3049a5674654ed44dfbc74d81",
      "tree": "a20acefcc36e8f7db865b1d5e28e92f43082fb1d",
      "parents": [
        "9d1694dc91ce7b80bc96d6d8eaf1a1eca668d847",
        "1d5911d43cab5fb99229b02bce173b0c6d9da7d2"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 19 09:10:23 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Jan 19 09:10:23 2024 -0800"
      },
      "message": "Merge tag \u0027vfs-6.8.netfs\u0027 of gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs\n\nPull netfs updates from Christian Brauner:\n \"This extends the netfs helper library that network filesystems can use\n  to replace their own implementations. Both afs and 9p are ported. cifs\n  is ready as well but the patches are way bigger and will be routed\n  separately once this is merged. That will remove lots of code as well.\n\n  The overal goal is to get high-level I/O and knowledge of the page\n  cache and ouf of the filesystem drivers. This includes knowledge about\n  the existence of pages and folios\n\n  The pull request converts afs and 9p. This removes about 800 lines of\n  code from afs and 300 from 9p. For 9p it is now possible to do writes\n  in larger than a page chunks. Additionally, multipage folio support\n  can be turned on for 9p. Separate patches exist for cifs removing\n  another 2000+ lines. I\u0027ve included detailed information in the\n  individual pulls I took.\n\n  Summary:\n\n   - Add NFS-style (and Ceph-style) locking around DIO vs buffered I/O\n     calls to prevent these from happening at the same time.\n\n   - Support for direct and unbuffered I/O.\n\n   - Support for write-through caching in the page cache.\n\n   - O_*SYNC and RWF_*SYNC writes use write-through rather than writing\n     to the page cache and then flushing afterwards.\n\n   - Support for write-streaming.\n\n   - Support for write grouping.\n\n   - Skip reads for which the server could only return zeros or EOF.\n\n   - The fscache module is now part of the netfs library and the\n     corresponding maintainer entry is updated.\n\n   - Some helpers from the fscache subsystem are renamed to mark them as\n     belonging to the netfs library.\n\n   - Follow-up fixes for the netfs library.\n\n   - Follow-up fixes for the 9p conversion\"\n\n* tag \u0027vfs-6.8.netfs\u0027 of gitolite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs: (50 commits)\n  netfs: Fix wrong #ifdef hiding wait\n  cachefiles: Fix signed/unsigned mixup\n  netfs: Fix the loop that unmarks folios after writing to the cache\n  netfs: Fix interaction between write-streaming and cachefiles culling\n  netfs: Count DIO writes\n  netfs: Mark netfs_unbuffered_write_iter_locked() static\n  netfs: Fix proc/fs/fscache symlink to point to \"netfs\" not \"../netfs\"\n  netfs: Rearrange netfs_io_subrequest to put request pointer first\n  9p: Use length of data written to the server in preference to error\n  9p: Do a couple of cleanups\n  9p: Fix initialisation of netfs_inode for 9p\n  cachefiles: Fix __cachefiles_prepare_write()\n  9p: Use netfslib read/write_iter\n  afs: Use the netfs write helpers\n  netfs: Export the netfs_sreq tracepoint\n  netfs: Optimise away reads above the point at which there can be no data\n  netfs: Implement a write-through caching option\n  netfs: Provide a launder_folio implementation\n  netfs: Provide a writepages implementation\n  netfs, cachefiles: Pass upper bound length to allow expansion\n  ...\n"
    },
    {
      "commit": "9d1694dc91ce7b80bc96d6d8eaf1a1eca668d847",
      "tree": "d9093aecb9261cccaea1f0a58887fcd9db542172",
      "parents": [
        "e9a5a78d1ad8ceb4e3df6d6ad93360094c84ac40",
        "b2e792ae883a0aa976d4176dfa7dc933263440ea"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 18:22:40 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 18:22:40 2024 -0800"
      },
      "message": "Merge tag \u0027for-6.8/block-2024-01-18\u0027 of git://git.kernel.dk/linux\n\nPull block fixes from Jens Axboe:\n\n - NVMe pull request via Keith:\n      - tcp, fc, and rdma target fixes (Maurizio, Daniel, Hannes,\n        Christoph)\n      - discard fixes and improvements (Christoph)\n      - timeout debug improvements (Keith, Max)\n      - various cleanups (Daniel, Max, Giuxen)\n      - trace event string fixes (Arnd)\n      - shadow doorbell setup on reset fix (William)\n      - a write zeroes quirk for SK Hynix (Jim)\n\n - MD pull request via Song:\n      - Sparse warning since v6.0 (Bart)\n      - /proc/mdstat regression since v6.7 (Yu Kuai)\n\n - Use symbolic error value (Christian)\n\n - IO Priority documentation update (Christian)\n\n - Fix for accessing queue limits without having entered the queue\n   (Christoph, me)\n\n - Fix for loop dio support (Christoph)\n\n - Move null_blk off deprecated ida interface (Christophe)\n\n - Ensure nbd initializes full msghdr (Eric)\n\n - Fix for a regression with the folio conversion, which is now easier\n   to hit because of an unrelated change (Matthew)\n\n - Remove redundant check in virtio-blk (Li)\n\n - Fix for a potential hang in sbitmap (Ming)\n\n - Fix for partial zone appending (Damien)\n\n - Misc changes and fixes (Bart, me, Kemeng, Dmitry)\n\n* tag \u0027for-6.8/block-2024-01-18\u0027 of git://git.kernel.dk/linux: (45 commits)\n  Documentation: block: ioprio: Update schedulers\n  loop: fix the the direct I/O support check when used on top of block devices\n  blk-mq: Remove the hctx \u0027run\u0027 debugfs attribute\n  nbd: always initialize struct msghdr completely\n  block: Fix iterating over an empty bio with bio_for_each_folio_all\n  block: bio-integrity: fix kcalloc() arguments order\n  virtio_blk: remove duplicate check if queue is broken in virtblk_done\n  sbitmap: remove stale comment in sbq_calc_wake_batch\n  block: Correct a documentation comment in blk-cgroup.c\n  null_blk: Remove usage of the deprecated ida_simple_xx() API\n  block: ensure we hold a queue reference when using queue limits\n  blk-mq: rename blk_mq_can_use_cached_rq\n  block: print symbolic error name instead of error code\n  blk-mq: fix IO hang from sbitmap wakeup race\n  nvmet-rdma: avoid circular locking dependency on install_queue()\n  nvmet-tcp: avoid circular locking dependency on install_queue()\n  nvme-pci: set doorbell config before unquiescing\n  block: fix partial zone append completion handling in req_bio_endio()\n  block/iocost: silence warning on \u0027last_period\u0027 potentially being unused\n  md/raid1: Use blk_opf_t for read and write operations\n  ...\n"
    },
    {
      "commit": "e9a5a78d1ad8ceb4e3df6d6ad93360094c84ac40",
      "tree": "743d1966043208e133cdae58232b382afabfeae9",
      "parents": [
        "6f3625006b157c5a460970ca4d651b100bfa67bf",
        "b4bc35cf8704db86203c0739711dab1804265bf3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 18:17:57 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 18:17:57 2024 -0800"
      },
      "message": "Merge tag \u0027for-6.8/io_uring-2024-01-18\u0027 of git://git.kernel.dk/linux\n\nPull io_uring fixes from Jens Axboe:\n \"Nothing major in here, just a few fixes and cleanups that arrived\n  after the initial merge window pull request got finalized, as well as\n  a fix for a patch that got merged earlier\"\n\n* tag \u0027for-6.8/io_uring-2024-01-18\u0027 of git://git.kernel.dk/linux:\n  io_uring: combine cq_wait_nr checks\n  io_uring: clean *local_work_add var naming\n  io_uring: clean up local tw add-wait sync\n  io_uring: adjust defer tw counting\n  io_uring/register: guard compat syscall with CONFIG_COMPAT\n  io_uring/rsrc: improve code generation for fixed file assignment\n  io_uring/rw: cleanup io_rw_done()\n"
    },
    {
      "commit": "6f3625006b157c5a460970ca4d651b100bfa67bf",
      "tree": "324afccda64dc1e6ccc629d03a647a5d0320bef9",
      "parents": [
        "b5f66ba2d07180706ffa10df07f202335df190f1",
        "2b872b0f466d2acb4491da845c66b49246d5cdf9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 18:12:26 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 18:12:26 2024 -0800"
      },
      "message": "Merge tag \u0027erofs-for-6.8-rc1-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs\n\nPull erofs fixes from Gao Xiang:\n\n - Fix a \"BUG: kernel NULL pointer dereference\" issue due to\n   inconsistent on-disk indices of compressed inodes against\n   per-sb `available_compr_algs` generated by Syzkaller\n\n - Don\u0027t use certain unnecessary folio_*() helpers if the folio\n   type (page cache) is known\n\n* tag \u0027erofs-for-6.8-rc1-fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs:\n  erofs: Don\u0027t use certain unnecessary folio_*() functions\n  erofs: fix inconsistent per-file compression format\n"
    },
    {
      "commit": "b5f66ba2d07180706ffa10df07f202335df190f1",
      "tree": "87db99cd5e7014327479606dee2fe1d827eb8bd0",
      "parents": [
        "2a668d217676c642bec02ee3b5b73a623f194f7a",
        "6185d32170b683abadddf1e68be998e24f3cc5de"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:57:07 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:57:07 2024 -0800"
      },
      "message": "Merge tag \u0027kbuild-v6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild\n\nPull Kbuild updates from Masahiro Yamada:\n\n - Make Kconfig parse the input .config more precisely\n\n - Support W\u003dc and W\u003de options for Kconfig\n\n - Set Kconfig int/hex symbols to zero if the \u0027default\u0027 property is\n   missing\n\n - Add .editorconfig\n\n - Add scripts/git.orderFile\n\n - Add a script to detect backward-incompatible changes in UAPI headers\n\n - Resolve the symlink passed to O\u003d option properly\n\n - Use the user-supplied mtime for all files in the builtin initramfs,\n   which provides better reproducible builds\n\n - Fix the direct execution of debian/rules for Debian package builds\n\n - Use build ID instead of the .gnu_debuglink section for the Debian dbg\n   package\n\n* tag \u0027kbuild-v6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild: (53 commits)\n  kbuild: deb-pkg: use debian/\u003cpackage\u003e for tmpdir\n  kbuild: deb-pkg: move \u0027make headers\u0027 to build-arch\n  kbuild: deb-pkg: do not search for \u0027scripts\u0027 directory under arch/\n  kbuild: deb-pkg: use build ID instead of debug link for dbg package\n  kbuild: deb-pkg: use more debhelper commands in builddeb\n  kbuild: deb-pkg: remove unneeded \u0027-f $srctree/Makefile\u0027 in debian/rules\n  kbuild: deb-pkg: allow to run debian/rules from output directory\n  kbuild: deb-pkg: set DEB_* variables if debian/rules is directly executed\n  kbuild: deb-pkg: squash scripts/package/deb-build-option to debian/rules\n  kbuild: deb-pkg: factor out common Make options in debian/rules\n  kbuild: deb-pkg: hard-code Build-Depends\n  kbuild: deb-pkg: split debian/copyright from the mkdebian script\n  gen_init_cpio: Apply mtime supplied by user to all file types\n  kbuild: resolve symlinks for O\u003d properly\n  docs: dev-tools: Add UAPI checker documentation\n  check-uapi: Introduce check-uapi.sh\n  scripts: Introduce a default git.orderFile\n  kconfig: WERROR unmet symbol dependency\n  Add .editorconfig file for basic formatting\n  kconfig: Use KCONFIG_CONFIG instead of .config\n  ...\n"
    },
    {
      "commit": "2a668d217676c642bec02ee3b5b73a623f194f7a",
      "tree": "ad0cbbd0c764b8bf0364a94605838380ec9b7ba6",
      "parents": [
        "736b5545d39ca59d4332a60e56cc8a1a5e264a8e",
        "4f41d30cd6dc865c3cbc1a852372321eba6d4e4c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:53:22 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:53:22 2024 -0800"
      },
      "message": "Merge tag \u0027kgdb-6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/danielt/linux\n\nPull kgdb update from Daniel Thompson:\n \"The entire changeset for kgdb this cycle is a single two-line change\n  to remove some deadcode that, had it not been dead, would have called\n  strncpy() in an unsafe manner.\n\n  To be fair there were other modest clean ups were discussed this cycle\n  but they are not finalized and will have to wait until next time\"\n\n* tag \u0027kgdb-6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/danielt/linux:\n  kdb: Fix a potential buffer overflow in kdb_local()\n"
    },
    {
      "commit": "736b5545d39ca59d4332a60e56cc8a1a5e264a8e",
      "tree": "3200528110fab00e0f0d3a311b6e3ad2fcd86edd",
      "parents": [
        "ed8d84530ab0a3b7b370e8b28f12179314dcfcc3",
        "925781a471d8156011e8f8c1baf61bbe020dac55"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:33:50 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:33:50 2024 -0800"
      },
      "message": "Merge tag \u0027net-6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net\n\nPull networking fixes from Jakub Kicinski:\n \"Including fixes from bpf and netfilter.\n\n  Previous releases - regressions:\n\n   - Revert \"net: rtnetlink: Enslave device before bringing it up\",\n     breaks the case inverse to the one it was trying to fix\n\n   - net: dsa: fix oob access in DSA\u0027s netdevice event handler\n     dereference netdev_priv() before check its a DSA port\n\n   - sched: track device in tcf_block_get/put_ext() only for clsact\n     binder types\n\n   - net: tls, fix WARNING in __sk_msg_free when record becomes full\n     during splice and MORE hint set\n\n   - sfp-bus: fix SFP mode detect from bitrate\n\n   - drv: stmmac: prevent DSA tags from breaking COE\n\n  Previous releases - always broken:\n\n   - bpf: fix no forward progress in in bpf_iter_udp if output buffer is\n     too small\n\n   - bpf: reject variable offset alu on registers with a type of\n     PTR_TO_FLOW_KEYS to prevent oob access\n\n   - netfilter: tighten input validation\n\n   - net: add more sanity check in virtio_net_hdr_to_skb()\n\n   - rxrpc: fix use of Don\u0027t Fragment flag on RESPONSE packets, avoid\n     infinite loop\n\n   - amt: do not use the portion of skb-\u003ecb area which may get clobbered\n\n   - mptcp: improve validation of the MPTCPOPT_MP_JOIN MCTCP option\n\n  Misc:\n\n   - spring cleanup of inactive maintainers\"\n\n* tag \u0027net-6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net: (88 commits)\n  i40e: Include types.h to some headers\n  ipv6: mcast: fix data-race in ipv6_mc_down / mld_ifc_work\n  selftests: mlxsw: qos_pfc: Adjust the test to support 8 lanes\n  selftests: mlxsw: qos_pfc: Remove wrong description\n  mlxsw: spectrum_router: Register netdevice notifier before nexthop\n  mlxsw: spectrum_acl_tcam: Fix stack corruption\n  mlxsw: spectrum_acl_tcam: Fix NULL pointer dereference in error path\n  mlxsw: spectrum_acl_erp: Fix error flow of pool allocation failure\n  ethtool: netlink: Add missing ethnl_ops_begin/complete\n  selftests: bonding: Add more missing config options\n  selftests: netdevsim: add a config file\n  libbpf: warn on unexpected __arg_ctx type when rewriting BTF\n  selftests/bpf: add tests confirming type logic in kernel for __arg_ctx\n  bpf: enforce types for __arg_ctx-tagged arguments in global subprogs\n  bpf: extract bpf_ctx_convert_map logic and make it more reusable\n  libbpf: feature-detect arg:ctx tag support in kernel\n  ipvs: avoid stat macros calls from preemptible context\n  netfilter: nf_tables: reject NFT_SET_CONCAT with not field length description\n  netfilter: nf_tables: skip dead set elements in netlink dump\n  netfilter: nf_tables: do not allow mismatch field size and set key length\n  ...\n"
    },
    {
      "commit": "ed8d84530ab0a3b7b370e8b28f12179314dcfcc3",
      "tree": "9cf2cf895c9d673cef367e888fa02a732cf1fb55",
      "parents": [
        "378de6df19800dc2c18c355c8c2c5528f98e879a",
        "4503538d3066f6dd0a66ecc902b382912b97d8a1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:29:01 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:29:01 2024 -0800"
      },
      "message": "Merge tag \u0027i2c-for-6.8-rc1-rebased\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux\n\nPull i2c updates from Wolfram Sang:\n \"This removes the currently unused CLASS_DDC support (controllers set\n  the flag, but there is no client to use it).\n\n  Also, CLASS_SPD support gets simplified to prepare removal in the\n  future. Class based instantiation is not recommended these days\n  anyhow.\n\n  Furthermore, I2C core now creates a debugfs directory per I2C adapter.\n  Current bus driver users were converted to use it.\n\n  Finally, quite some driver updates. Standing out are patches for the\n  wmt-driver which is refactored to support more variants.\n\n  This is the rebased pull request where a large series for the\n  designware driver was dropped\"\n\n* tag \u0027i2c-for-6.8-rc1-rebased\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux: (38 commits)\n  MAINTAINERS: use proper email for my I2C work\n  i2c: stm32f7: add support for stm32mp25 soc\n  i2c: stm32f7: perform I2C_ISR read once at beginning of event isr\n  dt-bindings: i2c: document st,stm32mp25-i2c compatible\n  i2c: stm32f7: simplify status messages in case of errors\n  i2c: stm32f7: perform most of irq job in threaded handler\n  i2c: stm32f7: use dev_err_probe upon calls of devm_request_irq\n  i2c: i801: Add lis3lv02d for Dell XPS 15 7590\n  i2c: i801: Add lis3lv02d for Dell Precision 3540\n  i2c: wmt: Reduce redundant: REG_CR setting\n  i2c: wmt: Reduce redundant: function parameter\n  i2c: wmt: Reduce redundant: clock mode setting\n  i2c: wmt: Reduce redundant: wait event complete\n  i2c: wmt: Reduce redundant: bus busy check\n  i2c: mux: reg: Remove class-based device auto-detection support\n  i2c: make i2c_bus_type const\n  dt-bindings: at24: add ROHM BR24G04\n  eeprom: at24: use of_match_ptr()\n  i2c: cpm: Remove linux,i2c-index conversion from be32\n  i2c: imx: Make SDA actually optional for bus recovering\n  ...\n"
    },
    {
      "commit": "378de6df19800dc2c18c355c8c2c5528f98e879a",
      "tree": "947d175d46e565f358f52e49b4279b3e684f8d33",
      "parents": [
        "0f289bdd4102fc870c8b97652c57d41952040d70",
        "14688f1a91e1f37bc6bf50ff5241e857f24338e0"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:25:39 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:25:39 2024 -0800"
      },
      "message": "Merge tag \u0027rtc-6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux\n\nPull RTC updates from Alexandre Belloni:\n \"There are three new drivers this cycle. Also the cmos driver is\n  getting fixes for longstanding wakeup issues on AMD.\n\n  New drivers:\n   - Analog Devices MAX31335\n   - Nuvoton ma35d1\n   - Texas Instrument TPS6594 PMIC RTC\n\n  Drivers:\n   - cmos: use ACPI alarm instead of HPET on recent AMD platforms\n   - nuvoton: add NCT3015Y-R and NCT3018Y-R support\n   - rv8803: proper suspend/resume and wakeup-source support\"\n\n* tag \u0027rtc-6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: (26 commits)\n  rtc: nuvoton: Compatible with NCT3015Y-R and NCT3018Y-R\n  rtc: da9063: Use dev_err_probe()\n  rtc: da9063: Use device_get_match_data()\n  rtc: da9063: Make IRQ as optional\n  rtc: max31335: Fix comparison in max31335_volatile_reg()\n  rtc: max31335: use regmap_update_bits_check\n  rtc: max31335: remove unecessary locking\n  rtc: max31335: add driver support\n  dt-bindings: rtc: max31335: add max31335 bindings\n  rtc: rv8803: add wakeup-source support\n  rtc: ac100: remove misuses of kernel-doc\n  rtc: class: Remove usage of the deprecated ida_simple_xx() API\n  rtc: MAINTAINERS: drop Alessandro Zummo\n  rtc: ma35d1: remove hardcoded UIE support\n  dt-bindings: rtc: qcom-pm8xxx: fix inconsistent example\n  rtc: rv8803: Add power management support\n  rtc: ds3232: avoid unused-const-variable warning\n  rtc: lpc24xx: add missing dependency\n  rtc: tps6594: Add driver for TPS6594 RTC\n  rtc: Add driver for Nuvoton ma35d1 rtc controller\n  ...\n"
    },
    {
      "commit": "0f289bdd4102fc870c8b97652c57d41952040d70",
      "tree": "abb62778d9e3dd30c1731db5698a06e13c86ea87",
      "parents": [
        "33a9caa49938eff19a3cc5ffab195649d702540b",
        "58f65f9db7e0de366a5a115c2e2c0703858bba69"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:21:35 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:21:35 2024 -0800"
      },
      "message": "Merge tag \u0027input-for-v6.8-rc0\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input\n\nPull input updates from Dmitry Torokhov:\n\n - a new driver for Adafruit Seesaw gamepad device\n\n - Zforce touchscreen will handle standard device properties for axis\n   swap/inversion\n\n - handling of advanced sensitivity settings in Microchip CAP11xx\n   capacitive sensor driver\n\n - more drivers have been converted to use newer gpiod API\n\n - support for dedicated wakeup IRQs in gpio-keys dirver\n\n - support for slider gestures and OTP variants in iqs269a driver\n\n - atkbd will report keyboard version as 0xab83 in cases when GET ID\n   command was skipped (to deal with problematic firmware on newer\n   laptops), restoring the previous behavior\n\n - other assorted cleanups and changes\n\n* tag \u0027input-for-v6.8-rc0\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (44 commits)\n  Input: atkbd - use ab83 as id when skipping the getid command\n  Input: driver for Adafruit Seesaw Gamepad\n  dt-bindings: input: bindings for Adafruit Seesaw Gamepad\n  Input: da9063_onkey - avoid explicitly setting input\u0027s parent\n  Input: da9063_onkey - avoid using OF-specific APIs\n  Input: iqs269a - add support for OTP variants\n  dt-bindings: input: iqs269a: Add bindings for OTP variants\n  Input: iqs269a - add support for slider gestures\n  dt-bindings: input: iqs269a: Add bindings for slider gestures\n  Input: gpio-keys - filter gpio_keys -EPROBE_DEFER error messages\n  Input: zforce_ts - accept standard touchscreen properties\n  dt-bindings: touchscreen: neonode,zforce: Use standard properties\n  dt-bindings: touchscreen: convert neonode,zforce to json-schema\n  dt-bindings: input: convert drv266x to json-schema\n  Input: da9063 - use dev_err_probe()\n  Input: da9063 - drop redundant prints in probe()\n  Input: da9063 - simplify obtaining OF match data\n  Input: as5011 - convert to GPIO descriptor\n  Input: omap-keypad - drop optional GPIO support\n  Input: tca6416-keypad - drop unused include\n  ...\n"
    },
    {
      "commit": "33a9caa49938eff19a3cc5ffab195649d702540b",
      "tree": "7836bc68dd662619ad63097bbfd636d19422ae42",
      "parents": [
        "4d5d604cc48a7babeb30e97aeb443679415573af",
        "2029e71482fcd94dcc7df2c66c7fa635479748bf"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:11:43 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:11:43 2024 -0800"
      },
      "message": "Merge tag \u0027phy-for-6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy\n\nPull phy updates from Vinod Koul:\n \"New Support:\n\n   - Qualcomm SM8650 UFS, PCIe and USB/DP Combo PHY, eUSB2 PHY, SDX75\n     USB3, X1E80100 USB3 support\n\n   - Mediatek MT8195 support\n\n   - Rockchip RK3128 usb2 support\n\n   - TI SGMII mode for J784S4\n\n  Updates:\n\n   - Qualcomm v7 register offsets updates\n\n   - Mediatek tphy support for force phy mode switch\"\n\n* tag \u0027phy-for-6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy: (34 commits)\n  phy: ti: j721e-wiz: Add SGMII support in WIZ driver for J784S4\n  phy: ti: gmii-sel: Enable SGMII mode for J784S4\n  phy: qcom-qmp-usb: Add Qualcomm X1E80100 USB3 PHY support\n  dt-bindings: phy: qcom,sc8280xp-qmp-usb3-uni: Add X1E80100 USB PHY binding\n  phy: qcom-qmp-combo: Add x1e80100 USB/DP combo phys\n  dt-bindings: phy: qcom,sc8280xp-qmp-usb43dp-phy: Document X1E80100 compatible\n  dt-bindings: phy: qcom: snps-eusb2: Document the X1E80100 compatible\n  phy: mediatek: tphy: add support force phy mode switch\n  dt-bindings: phy: mediatek: tphy: add a property for force-mode switch\n  phy: phy-can-transceiver: insert space after include\n  phy: qualcomm: phy-qcom-qmp-ufs: Rectify SM8550 UFS HS-G4 PHY Settings\n  dt-bindings: phy: qcom,sc8280xp-qmp-usb43dp-phy: fix path to header\n  phy: renesas: phy-rcar-gen2: use select for GENERIC_PHY\n  phy: qcom-qmp: qserdes-txrx: Add v7 register offsets\n  phy: qcom-qmp: qserdes-txrx: Add V6 N4 register offsets\n  phy: qcom-qmp: qserdes-com: Add v7 register offsets\n  phy: qcom-qmp: pcs-usb: Add v7 register offsets\n  phy: qcom-qmp: pcs: Add v7 register offsets\n  phy: qcom-qmp: qserdes-txrx: Add some more v6.20 register offsets\n  phy: qcom-qmp: qserdes-com: Add some more v6 register offsets\n  ...\n"
    },
    {
      "commit": "4d5d604cc48a7babeb30e97aeb443679415573af",
      "tree": "ee5a6d9beb27393da3ee0d7b2c365324c04b0c89",
      "parents": [
        "345513583974110107300824375a91ff602d72ba",
        "becfce5233a78956654f36555f1b9187f8d11d56"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:08:31 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:08:31 2024 -0800"
      },
      "message": "Merge tag \u0027soundwire-6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/soundwire\n\nPull soundwire updates from Vinod Koul:\n\n - Core: add concept of controller_id to deal with clear Controller /\n   Manager hierarchy\n\n - bunch of qcom driver refactoring for qcom_swrm_stream_alloc_ports(),\n   qcom_swrm_stream_alloc_ports() and setting controller id to hw master\n   id\n\n* tag \u0027soundwire-6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/vkoul/soundwire:\n  soundwire: amd: drop bus freq calculation and set \u0027max_clk_freq\u0027\n  soundwire: generic_bandwidth_allocation use bus-\u003eparams.max_dr_freq\n  soundwire: qcom: set controller id to hw master id\n  soundwire: fix initializing sysfs for same devices on different buses\n  soundwire: bus: introduce controller_id\n  soundwire: stream: constify sdw_port_config when adding devices\n  soundwire: qcom: move sconfig in qcom_swrm_stream_alloc_ports() out of critical section\n  soundwire: qcom: drop unneeded qcom_swrm_stream_alloc_ports() cleanup\n"
    },
    {
      "commit": "345513583974110107300824375a91ff602d72ba",
      "tree": "5aa725bf9910cccf929b0ed81f7f284a3ef543fe",
      "parents": [
        "5c93506983626419fb8719a7301b53faea1e0bb3",
        "efb8235bfdbe661c460f803150b50840a73b5f03"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:03:51 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 17:03:51 2024 -0800"
      },
      "message": "Merge tag \u0027gpio-fixes-for-v6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux\n\nPull gpio fixes from Bartosz Golaszewski:\n \"Apart from some regular driver fixes there\u0027s a relatively big revert\n  of the locking changes that were introduced to GPIOLIB in this merge\n  window.\n\n  This is because it turned out that some legacy GPIO interfaces - that\n  need to translate a number from the global GPIO numberspace to the\n  address of the relevant descriptor, thus running a GPIO device lookup\n  and taking the GPIO device list lock - are still used in old code from\n  atomic context resulting in \"scheduling while atomic\" errors.\n\n  I\u0027ll try to make the read-only part of the list access entirely\n  lockless using SRCU but this will take some time so let\u0027s go back to\n  the old global spinlock for now.\n\n  Summary:\n\n   - revert the changes aiming to use a read-write semaphore to protect\n     the list of GPIO devices due to calls to legacy API taking that\n     lock from atomic context in old code\n\n   - fix inverted logic in DEFINE_FREE() for GPIO device references\n\n   - check the return value of bgpio_init() in gpio-mlxbf3\n\n   - fix node address in the DT bindings example for gpio-xilinx\n\n   - fix signedness bug in gpio-rtd\n\n   - fix kernel-doc warnings in gpio-en7523\"\n\n* tag \u0027gpio-fixes-for-v6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux:\n  gpiolib: revert the attempt to protect the GPIO device list with an rwsem\n  gpio: EN7523: fix kernel-doc warnings\n  gpiolib: Fix scope-based gpio_device refcounting\n  gpio: mlxbf3: add an error code check in mlxbf3_gpio_probe\n  dt-bindings: gpio: xilinx: Fix node address in gpio\n  gpio: rtd: Fix signedness bug in probe\n"
    },
    {
      "commit": "5c93506983626419fb8719a7301b53faea1e0bb3",
      "tree": "c54f852593ec7e02aa89e921ccca798cb73d4b65",
      "parents": [
        "21c91bb9367716f61f46a352aafdeda61cb91c73",
        "9320fc509b87b4d795fb37112931e2f4f8b5c55f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 16:58:21 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 16:58:21 2024 -0800"
      },
      "message": "Merge tag \u0027pwm/for-6.8-2\u0027 of gitolite.kernel.org:pub/scm/linux/kernel/git/ukleinek/linux\n\nPull pwm fixes from Uwe Kleine-König:\n\n - fix a duplicate cleanup in an error path introduced in\n   this merge window\n\n - fix an out-of-bounds access\n\n   In practise it doesn\u0027t happen - otherwise someone would have noticed\n   since v5.17-rc1 I guess - because the device tree binding for the two\n   drivers using of_pwm_single_xlate() only have args-\u003eargs_count \u003d\u003d 1.\n\n   A device-tree that doesn\u0027t conform to the respective bindings could\n   trigger that easily however.\n\n - correct the request callback of the jz4740 pwm driver which used\n   dev_err_probe() long after .probe() completed.\n\n   This is conceptually wrong because dev_err_probe() might call\n   device_set_deferred_probe_reason() which is nonsensical after the\n   driver is bound.\n\n* tag \u0027pwm/for-6.8-2\u0027 of gitolite.kernel.org:pub/scm/linux/kernel/git/ukleinek/linux:\n  pwm: jz4740: Don\u0027t use dev_err_probe() in .request()\n  pwm: Fix out-of-bounds access in of_pwm_single_xlate()\n  pwm: bcm2835: Remove duplicate call to clk_rate_exclusive_put()\n"
    },
    {
      "commit": "21c91bb9367716f61f46a352aafdeda61cb91c73",
      "tree": "12556f1966acf24d93b7de7f416133f448819d1e",
      "parents": [
        "17e232b6d2feddd0285e59dbe641c0efe67a5ee6",
        "7d84a63a39b78443d09f2b4edf7ecb1d586379b4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 16:53:35 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 16:53:35 2024 -0800"
      },
      "message": "Merge tag \u0027backlight-next-6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight\n\nPull backlight updates from Lee Jones:\n \"New Drivers:\n   - Add support for Monolithic Power Systems MP3309C WLED Step-up Converter\n\n  Fix-ups:\n   - Use/convert to new/better APIs/helpers/MACROs instead of\n     hand-rolling implementations\n   - Device Tree Binding updates\n   - Demote non-kerneldoc header comments\n   - Improve error handling; return proper error values, simplify, avoid\n     duplicates, etc\n   - Convert over to the new (kinda) GPIOD API\n\n  Bug Fixes:\n   - Fix uninitialised local variable\"\n\n* tag \u0027backlight-next-6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/lee/backlight:\n  backlight: hx8357: Convert to agnostic GPIO API\n  backlight: ili922x: Add an error code check in ili922x_write()\n  backlight: ili922x: Drop kernel-doc for local macros\n  backlight: mp3309c: Fix uninitialized local variable\n  backlight: pwm_bl: Use dev_err_probe\n  backlight: mp3309c: Add support for MPS MP3309C\n  dt-bindings: backlight: mp3309c: Remove two required properties\n"
    },
    {
      "commit": "17e232b6d2feddd0285e59dbe641c0efe67a5ee6",
      "tree": "598584ca5d9aa5a86f4cfea1a0363c1af8d07de5",
      "parents": [
        "77c9622d87d21d989eb1a866e4df8eb5e3ce00e0",
        "7c65aa3cc072cee76f577262fbe381a111a98774"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 16:49:34 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 16:49:34 2024 -0800"
      },
      "message": "Merge tag \u0027dma-mapping-6.8-2024-01-18\u0027 of git://git.infradead.org/users/hch/dma-mapping\n\nPull dma-mapping fixes from Christoph Hellwig:\n\n - fix kerneldoc warnings (Randy Dunlap)\n\n - better bounds checking in swiotlb (ZhangPeng)\n\n* tag \u0027dma-mapping-6.8-2024-01-18\u0027 of git://git.infradead.org/users/hch/dma-mapping:\n  dma-debug: fix kernel-doc warnings\n  swiotlb: check alloc_size before the allocation of a new memory pool\n"
    },
    {
      "commit": "77c9622d87d21d989eb1a866e4df8eb5e3ce00e0",
      "tree": "9a341f4099b7374cc8c27356f3be61535fd6f3eb",
      "parents": [
        "0b7359ccddaaa844044c62000734f0cb92ab6310",
        "2159bd4e905704b1765b6b883ea15e51ad986a6a"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 16:46:18 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 16:46:18 2024 -0800"
      },
      "message": "Merge tag \u0027memblock-v6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock\n\nPull memblock update from Mike Rapoport:\n \"Code readability improvement.\n\n  Use NUMA_NO_NODE instead of -1 as return value of\n  memblock_search_pfn_nid() to improve code readability\n  and consistency with the callers of that function\"\n\n* tag \u0027memblock-v6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rppt/memblock:\n  memblock: Return NUMA_NO_NODE instead of -1 to improve code readability\n"
    },
    {
      "commit": "0b7359ccddaaa844044c62000734f0cb92ab6310",
      "tree": "f37be5ed54ec934208fbcb0d2af81c81d364d6c6",
      "parents": [
        "da3c45c721e2807b2effdea8f41ece96bbf47b15",
        "f16d65124380ac6de8055c4a8e5373a1043bb09b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 16:44:03 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 16:44:03 2024 -0800"
      },
      "message": "Merge tag \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost\n\nPull virtio updates from Michael Tsirkin:\n\n - vdpa/mlx5: support for resumable vqs\n\n - virtio_scsi: mq_poll support\n\n - 3virtio_pmem: support SHMEM_REGION\n\n - virtio_balloon: stay awake while adjusting balloon\n\n - virtio: support for no-reset virtio PCI PM\n\n - Fixes, cleanups\n\n* tag \u0027for_linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost:\n  vdpa/mlx5: Add mkey leak detection\n  vdpa/mlx5: Introduce reference counting to mrs\n  vdpa/mlx5: Use vq suspend/resume during .set_map\n  vdpa/mlx5: Mark vq state for modification in hw vq\n  vdpa/mlx5: Mark vq addrs for modification in hw vq\n  vdpa/mlx5: Introduce per vq and device resume\n  vdpa/mlx5: Allow modifying multiple vq fields in one modify command\n  vdpa/mlx5: Expose resumable vq capability\n  vdpa: Block vq property changes in DRIVER_OK\n  vdpa: Track device suspended state\n  scsi: virtio_scsi: Add mq_poll support\n  virtio_pmem: support feature SHMEM_REGION\n  virtio_balloon: stay awake while adjusting balloon\n  vdpa: Remove usage of the deprecated ida_simple_xx() API\n  virtio: Add support for no-reset virtio PCI PM\n  virtio_net: fix missing dma unmap for resize\n  vhost-vdpa: account iommu allocations\n  vdpa: Fix an error handling path in eni_vdpa_probe()\n"
    },
    {
      "commit": "da3c45c721e2807b2effdea8f41ece96bbf47b15",
      "tree": "3df275b823e1150e1e22c9f820824588756c1781",
      "parents": [
        "db5ccb9eb23189e99e244a4915dd31eedd8d428b",
        "2539b15d504c3f9fd8ca82032bf9c80c9864412c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 16:42:18 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 16:42:18 2024 -0800"
      },
      "message": "Merge tag \u0027hwmon-for-v6.8-p2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging\n\nPull hwmonfix from Guenter Roeck:\n \"Fix crash seen when instantiating npcm750-pwm-fan\"\n\n* tag \u0027hwmon-for-v6.8-p2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:\n  hwmon: (npcm750-pwm-fan) Fix crash observed when instantiating nuvoton,npcm750-pwm-fan\n"
    },
    {
      "commit": "db5ccb9eb23189e99e244a4915dd31eedd8d428b",
      "tree": "eed8eb6ba062c6cc531286e38088fb64e4cd2285",
      "parents": [
        "244aefb1c64ad562b48929e6d85e07bc79e331d6",
        "73bf93edeeea866b0b6efbc8d2595bdaaba7f1a5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 16:22:43 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 16:22:43 2024 -0800"
      },
      "message": "Merge tag \u0027cxl-for-6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl\n\nPull CXL (Compute Express Link) updates from Dan Williams:\n \"The bulk of this update is support for enumerating the performance\n  capabilities of CXL memory targets and connecting that to a platform\n  CXL memory QoS class. Some follow-on work remains to hook up this data\n  into core-mm policy, but that is saved for v6.9.\n\n  The next significant update is unifying how CXL event records (things\n  like background scrub errors) are processed between so called\n  \"firmware first\" and native error record retrieval. The CXL driver\n  handler that processes the record retrieved from the device mailbox is\n  now the handler for that same record format coming from an EFI/ACPI\n  notification source.\n\n  This also contains miscellaneous feature updates, like Get Timestamp,\n  and other fixups.\n\n  Summary:\n\n   - Add support for parsing the Coherent Device Attribute Table (CDAT)\n\n   - Add support for calculating a platform CXL QoS class from CDAT data\n\n   - Unify the tracing of EFI CXL Events with native CXL Events.\n\n   - Add Get Timestamp support\n\n   - Miscellaneous cleanups and fixups\"\n\n* tag \u0027cxl-for-6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/cxl/cxl: (41 commits)\n  cxl/core: use sysfs_emit() for attr\u0027s _show()\n  cxl/pci: Register for and process CPER events\n  PCI: Introduce cleanup helpers for device reference counts and locks\n  acpi/ghes: Process CXL Component Events\n  cxl/events: Create a CXL event union\n  cxl/events: Separate UUID from event structures\n  cxl/events: Remove passing a UUID to known event traces\n  cxl/events: Create common event UUID defines\n  cxl/events: Promote CXL event structures to a core header\n  cxl: Refactor to use __free() for cxl_root allocation in cxl_endpoint_port_probe()\n  cxl: Refactor to use __free() for cxl_root allocation in cxl_find_nvdimm_bridge()\n  cxl: Fix device reference leak in cxl_port_perf_data_calculate()\n  cxl: Convert find_cxl_root() to return a \u0027struct cxl_root *\u0027\n  cxl: Introduce put_cxl_root() helper\n  cxl/port: Fix missing target list lock\n  cxl/port: Fix decoder initialization when nr_targets \u003e interleave_ways\n  cxl/region: fix x9 interleave typo\n  cxl/trace: Pass UUID explicitly to event traces\n  cxl/region: use %pap format to print resource_size_t\n  cxl/region: Add dev_dbg() detail on failure to allocate HPA space\n  ...\n"
    },
    {
      "commit": "244aefb1c64ad562b48929e6d85e07bc79e331d6",
      "tree": "d98bb8e0c9533278f8ee4341a9dd8752eedcbd15",
      "parents": [
        "86c4d58a99ab1ccfa03860d4dead157be51eb2b6",
        "78f70c02bdbccb5e9b0b0c728185d4aeb7044ace"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 15:57:25 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 15:57:25 2024 -0800"
      },
      "message": "Merge tag \u0027vfio-v6.8-rc1\u0027 of https://github.com/awilliam/linux-vfio\n\nPull VFIO updates from Alex Williamson:\n\n - Add debugfs support, initially used for reporting device migration\n   state (Longfang Liu)\n\n - Fixes and support for migration dirty tracking across multiple IOVA\n   regions in the pds-vfio-pci driver (Brett Creeley)\n\n - Improved IOMMU allocation accounting visibility (Pasha Tatashin)\n\n - Virtio infrastructure and a new virtio-vfio-pci variant driver, which\n   provides emulation of a legacy virtio interfaces on modern virtio\n   hardware for virtio-net VF devices where the PF driver exposes\n   support for legacy admin queues, ie. an emulated IO BAR on an SR-IOV\n   VF to provide driver ABI compatibility to legacy devices (Yishai\n   Hadas \u0026 Feng Liu)\n\n - Migration fixes for the hisi-acc-vfio-pci variant driver (Shameer\n   Kolothum)\n\n - Kconfig dependency fix for new virtio-vfio-pci variant driver (Arnd\n   Bergmann)\n\n* tag \u0027vfio-v6.8-rc1\u0027 of https://github.com/awilliam/linux-vfio: (22 commits)\n  vfio/virtio: fix virtio-pci dependency\n  hisi_acc_vfio_pci: Update migration data pointer correctly on saving/resume\n  vfio/virtio: Declare virtiovf_pci_aer_reset_done() static\n  vfio/virtio: Introduce a vfio driver over virtio devices\n  vfio/pci: Expose vfio_pci_core_iowrite/read##size()\n  vfio/pci: Expose vfio_pci_core_setup_barmap()\n  virtio-pci: Introduce APIs to execute legacy IO admin commands\n  virtio-pci: Initialize the supported admin commands\n  virtio-pci: Introduce admin commands\n  virtio-pci: Introduce admin command sending function\n  virtio-pci: Introduce admin virtqueue\n  virtio: Define feature bit for administration virtqueue\n  vfio/type1: account iommu allocations\n  vfio/pds: Add multi-region support\n  vfio/pds: Move seq/ack bitmaps into region struct\n  vfio/pds: Pass region info to relevant functions\n  vfio/pds: Move and rename region specific info\n  vfio/pds: Only use a single SGL for both seq and ack\n  vfio/pds: Fix calculations in pds_vfio_dirty_sync\n  MAINTAINERS: Add vfio debugfs interface doc link\n  ...\n"
    },
    {
      "commit": "86c4d58a99ab1ccfa03860d4dead157be51eb2b6",
      "tree": "eba89e86aae53b99fca9088de71632a68df1431f",
      "parents": [
        "0dde2bf67bcf37f54c829c6c42fa8c4fca78a224",
        "47f2bd2ff382e5fe766b1322e354558a8da4a470"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 15:28:15 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 15:28:15 2024 -0800"
      },
      "message": "Merge tag \u0027for-linus-iommufd\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd\n\nPull iommufd updates from Jason Gunthorpe:\n \"This brings the first of three planned user IO page table invalidation\n  operations:\n\n   - IOMMU_HWPT_INVALIDATE allows invalidating the IOTLB integrated into\n     the iommu itself. The Intel implementation will also generate an\n     ATC invalidation to flush the device IOTLB as it unambiguously\n     knows the device, but other HW will not.\n\n  It goes along with the prior PR to implement userspace IO page tables\n  (aka nested translation for VMs) to allow Intel to have full\n  functionality for simple cases. An Intel implementation of the\n  operation is provided.\n\n  Also fix a small bug in the selftest mock iommu driver probe\"\n\n* tag \u0027for-linus-iommufd\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jgg/iommufd:\n  iommufd/selftest: Check the bus type during probe\n  iommu/vt-d: Add iotlb flush for nested domain\n  iommufd: Add data structure for Intel VT-d stage-1 cache invalidation\n  iommufd/selftest: Add coverage for IOMMU_HWPT_INVALIDATE ioctl\n  iommufd/selftest: Add IOMMU_TEST_OP_MD_CHECK_IOTLB test op\n  iommufd/selftest: Add mock_domain_cache_invalidate_user support\n  iommu: Add iommu_copy_struct_from_user_array helper\n  iommufd: Add IOMMU_HWPT_INVALIDATE\n  iommu: Add cache_invalidate_user op\n"
    },
    {
      "commit": "0dde2bf67bcf37f54c829c6c42fa8c4fca78a224",
      "tree": "09d380b93df127e616dccd47bf683b4cef76e811",
      "parents": [
        "e7ded27593bf0aff08d18258251e3de0a2697f47",
        "75f74f85a42eb294b657f847c33e1bb7921dbec9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 15:16:57 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 15:16:57 2024 -0800"
      },
      "message": "Merge tag \u0027iommu-updates-v6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu\n\nPull iommu updates from Joerg Roedel:\n \"Core changes:\n   - Fix race conditions in device probe path\n   - Retire IOMMU bus_ops\n   - Support for passing custom allocators to page table drivers\n   - Clean up Kconfig around IOMMU_SVA\n   - Support for sharing SVA domains with all devices bound to a mm\n   - Firmware data parsing cleanup\n   - Tracing improvements for iommu-dma code\n   - Some smaller fixes and cleanups\n\n  ARM-SMMU drivers:\n   - Device-tree binding updates:\n      - Add additional compatible strings for Qualcomm SoCs\n      - Document Adreno clocks for Qualcomm\u0027s SM8350 SoC\n   - SMMUv2:\n      - Implement support for the -\u003edomain_alloc_paging() callback\n      - Ensure Secure context is restored following suspend of Qualcomm\n        SMMU implementation\n   - SMMUv3:\n      - Disable stalling mode for the \"quiet\" context descriptor\n      - Minor refactoring and driver cleanups\n\n  Intel VT-d driver:\n   - Cleanup and refactoring\n\n  AMD IOMMU driver:\n   - Improve IO TLB invalidation logic\n   - Small cleanups and improvements\n\n  Rockchip IOMMU driver:\n   - DT binding update to add Rockchip RK3588\n\n  Apple DART driver:\n   - Apple M1 USB4/Thunderbolt DART support\n   - Cleanups\n\n  Virtio IOMMU driver:\n   - Add support for iotlb_sync_map\n   - Enable deferred IO TLB flushes\"\n\n* tag \u0027iommu-updates-v6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (66 commits)\n  iommu: Don\u0027t reserve 0-length IOVA region\n  iommu/vt-d: Move inline helpers to header files\n  iommu/vt-d: Remove unused vcmd interfaces\n  iommu/vt-d: Remove unused parameter of intel_pasid_setup_pass_through()\n  iommu/vt-d: Refactor device_to_iommu() to retrieve iommu directly\n  iommu/sva: Fix memory leak in iommu_sva_bind_device()\n  dt-bindings: iommu: rockchip: Add Rockchip RK3588\n  iommu/dma: Trace bounce buffer usage when mapping buffers\n  iommu/arm-smmu: Convert to domain_alloc_paging()\n  iommu/arm-smmu: Pass arm_smmu_domain to internal functions\n  iommu/arm-smmu: Implement IOMMU_DOMAIN_BLOCKED\n  iommu/arm-smmu: Convert to a global static identity domain\n  iommu/arm-smmu: Reorganize arm_smmu_domain_add_master()\n  iommu/arm-smmu-v3: Remove ARM_SMMU_DOMAIN_NESTED\n  iommu/arm-smmu-v3: Master cannot be NULL in arm_smmu_write_strtab_ent()\n  iommu/arm-smmu-v3: Add a type for the STE\n  iommu/arm-smmu-v3: disable stall for quiet_cd\n  iommu/qcom: restore IOMMU state if needed\n  iommu/arm-smmu-qcom: Add QCM2290 MDSS compatible\n  iommu/arm-smmu-qcom: Add missing GMU entry to match table\n  ...\n"
    },
    {
      "commit": "e7ded27593bf0aff08d18258251e3de0a2697f47",
      "tree": "183225b3019d1e2db5bb34c670d5e8b0e9c6ea4f",
      "parents": [
        "24f3a63e1fc36d5d240c1b3973c75618c20cf458",
        "6b9f29b81b155af023da95f560f738f29722b306"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 15:01:28 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 15:01:28 2024 -0800"
      },
      "message": "Merge tag \u0027percpu-for-6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dennis/percpu\n\nPull percpu updates from Dennis Zhou:\n \"Enable percpu page allocator for RISC-V.\n\n  There are RISC-V configurations with sparse NUMA configurations and\n  small vmalloc space causing dynamic percpu allocations to fail as the\n  backing chunk stride is too far apart\"\n\n* tag \u0027percpu-for-6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/dennis/percpu:\n  riscv: Enable pcpu page first chunk allocator\n  mm: Introduce flush_cache_vmap_early()\n"
    },
    {
      "commit": "24f3a63e1fc36d5d240c1b3973c75618c20cf458",
      "tree": "ed2bcfe71a8585649eeea0e63e5c1ce4b6a76e16",
      "parents": [
        "a2ded784cd7fd83e567829637068cd86aeffbeaf",
        "7a8e9cdf9405819105ae7405cd91e482bf574b01"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 14:45:33 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 14:45:33 2024 -0800"
      },
      "message": "Merge tag \u0027eventfs-v6.8-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace\n\nPull eventfs updates from Steven Rostedt:\n\n - Remove \"lookup\" parameter of create_dir_dentry() and\n   create_file_dentry(). These functions were called by lookup and the\n   readdir logic, where readdir needed it to up the ref count of the\n   dentry but the lookup did not. A \"lookup\" parameter was passed in to\n   tell it what to do, but this complicated the code. It is better to\n   just always up the ref count and require the caller to decrement it,\n   even for lookup.\n\n - Modify the .iterate_shared callback to not use the dcache_readdir()\n   logic and just handle what gets displayed by that one function. This\n   removes the need for eventfs to hijack the file-\u003eprivate_data from\n   the dcache_readdir() \"cursor\" pointer, and makes the code a bit more\n   sane\n\n - Use the root and instance inodes for default ownership. Instead of\n   walking the dentry tree and updating each dentry gid, use the\n   getattr(), setattr() and permission() callbacks to set the ownership\n   and permissions using the root or instance as the default\n\n - Some other optimizations with the eventfs iterate_shared logic\n\n - Hard-code the inodes for eventfs to the same number for files, and\n   the same number for directories\n\n - Have getdent() not create dentries/inodes in iterate_shared() as now\n   it has hard-coded inode numbers\n\n - Use kcalloc() instead of kzalloc() on a list of elements\n\n - Fix seq_buf warning and make static work properly.\n\n* tag \u0027eventfs-v6.8-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace:\n  seq_buf: Make DECLARE_SEQ_BUF() usable\n  eventfs: Use kcalloc() instead of kzalloc()\n  eventfs: Do not create dentries nor inodes in iterate_shared\n  eventfs: Have the inodes all for files and directories all be the same\n  eventfs: Shortcut eventfs_iterate() by skipping entries already read\n  eventfs: Read ei-\u003eentries before ei-\u003echildren in eventfs_iterate()\n  eventfs: Do ctx-\u003epos update for all iterations in eventfs_iterate()\n  eventfs: Have eventfs_iterate() stop immediately if ei-\u003eis_freed is set\n  tracefs/eventfs: Use root and instance inodes as default ownership\n  eventfs: Stop using dcache_readdir() for getdents()\n  eventfs: Remove \"lookup\" parameter from create_dir/file_dentry()\n"
    },
    {
      "commit": "a2ded784cd7fd83e567829637068cd86aeffbeaf",
      "tree": "9924ca8854858fc5558e59b136d1f32695bc8cc4",
      "parents": [
        "5b890ad456b16a5b45e7f86d9708d7248e73d0f8",
        "25742aeb135c4a44e92fb347e037adaa145b9484"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 14:35:29 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 14:35:29 2024 -0800"
      },
      "message": "Merge tag \u0027trace-v6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace\n\nPull tracing updates from Steven Rostedt:\n\n - Allow kernel trace instance creation to specify what events are\n   created\n\n   Inside the kernel, a subsystem may create a tracing instance that it\n   can use to send events to user space. This sub-system may not care\n   about the thousands of events that exist in eventfs. Allow the\n   sub-system to specify what sub-systems of events it cares about, and\n   only those events are exposed to this instance.\n\n - Allow the ring buffer to be broken up into bigger sub-buffers than\n   just the architecture page size.\n\n   A new tracefs file called \"buffer_subbuf_size_kb\" is created. The\n   user can now specify a minimum size the sub-buffer may be in\n   kilobytes. Note, that the implementation currently make the\n   sub-buffer size a power of 2 pages (1, 2, 4, 8, 16, ...) but the user\n   only writes in kilobyte size, and the sub-buffer will be updated to\n   the next size that it will can accommodate it. If the user writes in\n   10, it will change the size to be 4 pages on x86 (16K), as that is\n   the next available size that can hold 10K pages.\n\n - Update the debug output when a corrupt time is detected in the ring\n   buffer. If the ring buffer detects inconsistent timestamps, there\u0027s a\n   debug config options that will dump the contents of the meta data of\n   the sub-buffer that is used for debugging. Add some more information\n   to this dump that helps with debugging.\n\n - Add more timestamp debugging checks (only triggers when the config is\n   enabled)\n\n - Increase the trace_seq iterator to 2 page sizes.\n\n - Allow strings written into tracefs_marker to be larger. Up to just\n   under 2 page sizes (based on what trace_seq can hold).\n\n - Increase the trace_maker_raw write to be as big as a sub-buffer can\n   hold.\n\n - Remove 32 bit time stamp logic, now that the rb_time_cmpxchg() has\n   been removed.\n\n - More selftests were added.\n\n - Some code clean ups as well.\n\n* tag \u0027trace-v6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace: (29 commits)\n  ring-buffer: Remove stale comment from ring_buffer_size()\n  tracing histograms: Simplify parse_actions() function\n  tracing/selftests: Remove exec permissions from trace_marker.tc test\n  ring-buffer: Use subbuf_order for buffer page masking\n  tracing: Update subbuffer with kilobytes not page order\n  ringbuffer/selftest: Add basic selftest to test changing subbuf order\n  ring-buffer: Add documentation on the buffer_subbuf_order file\n  ring-buffer: Just update the subbuffers when changing their allocation order\n  ring-buffer: Keep the same size when updating the order\n  tracing: Stop the tracing while changing the ring buffer subbuf size\n  tracing: Update snapshot order along with main buffer order\n  ring-buffer: Make sure the spare sub buffer used for reads has same size\n  ring-buffer: Do no swap cpu buffers if order is different\n  ring-buffer: Clear pages on error in ring_buffer_subbuf_order_set() failure\n  ring-buffer: Read and write to ring buffers with custom sub buffer size\n  ring-buffer: Set new size of the ring buffer sub page\n  ring-buffer: Add interface for configuring trace sub buffer size\n  ring-buffer: Page size per ring buffer\n  ring-buffer: Have ring_buffer_print_page_header() be able to access ring_buffer_iter\n  ring-buffer: Check if absolute timestamp goes backwards\n  ...\n"
    },
    {
      "commit": "5b890ad456b16a5b45e7f86d9708d7248e73d0f8",
      "tree": "b9ccb1036930a1fe6668115ef4c65eb1039b14cd",
      "parents": [
        "302d1858654494dbbb8541e3ea5f0f884c0e683c",
        "9c556b7c3f520d42c435c0d78b25c719c060f8a1"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 14:21:22 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 14:21:22 2024 -0800"
      },
      "message": "Merge tag \u0027probes-v6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace\n\nPull probes update from Masami Hiramatsu:\n\n - Update the Kprobes trace event to show the actual function name in\n   notrace-symbol warning.\n\n   Instead of using the user specified symbol name, use \"%ps\" printk\n   format to show the actual symbol at the probe address. Since kprobe\n   event accepts the offset from symbol which is bigger than the symbol\n   size, the user specified symbol may not be the actual probed symbol.\n\n* tag \u0027probes-v6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace:\n  trace/kprobe: Display the actual notrace function when rejecting a probe\n"
    },
    {
      "commit": "302d1858654494dbbb8541e3ea5f0f884c0e683c",
      "tree": "50eb7d1da9af6f7b69888a8fdb4a2b0759854a78",
      "parents": [
        "b4442cadca2f97239c8b80f64af7937897b867b1",
        "b9bd10c43456d16abd97b717446f51afb3b88411"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 14:11:25 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 14:11:25 2024 -0800"
      },
      "message": "Merge tag \u0027s390-6.8-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux\n\nPull more s390 updates from Alexander Gordeev:\n\n - do not enable by default the support of 31-bit Enterprise Systems\n   Architecture (ESA) ELF binaries\n\n - drop automatic CONFIG_KEXEC selection, while set CONFIG_KEXEC\u003dy\n   explicitly for defconfig and debug_defconfig only\n\n - fix zpci_get_max_io_size() to allow PCI block stores where normal PCI\n   stores were used otherwise\n\n - remove unneeded tsk variable in do_exception() fault handler\n\n - __load_fpu_regs() is only called from the core kernel code.\n   Therefore, remove not needed EXPORT_SYMBOL.\n\n - remove leftover comment from s390_fpregs_set() callback\n\n - few cleanups to Processor Activity Instrumentation (PAI) code (which\n   perf framework is based on)\n\n - replace Wenjia Zhang with Thorsten Winkler as s390 Inter-User\n   Communication Vehicle (IUCV) networking maintainer\n\n - Fix all scenarios where queues previously removed from a guest\u0027s\n   Adjunct-Processor (AP) configuration do not re-appear in a reset\n   state when they are subsequently made available to a guest again\n\n* tag \u0027s390-6.8-2\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:\n  s390/vfio-ap: do not reset queue removed from host config\n  s390/vfio-ap: reset queues associated with adapter for queue unbound from driver\n  s390/vfio-ap: reset queues filtered from the guest\u0027s AP config\n  s390/vfio-ap: let on_scan_complete() callback filter matrix and update guest\u0027s APCB\n  s390/vfio-ap: loop over the shadow APCB when filtering guest\u0027s AP configuration\n  s390/vfio-ap: always filter entire AP matrix\n  s390/net: add Thorsten Winkler as maintainer\n  s390/pai_ext: split function paiext_push_sample\n  s390/pai_ext: rework function paiext_copy argments\n  s390/pai: rework paiXXX_start and paiXXX_stop functions\n  s390/pai_crypto: split function paicrypt_push_sample\n  s390/pai: rework paixxxx_getctr interface\n  s390/ptrace: remove leftover comment\n  s390/fpu: remove __load_fpu_regs() export\n  s390/mm,fault: remove not needed tsk variable\n  s390/pci: fix max size calculation in zpci_memcpy_toio()\n  s390/kexec: do not automatically select KEXEC option\n  s390/compat: change default for CONFIG_COMPAT to \"n\"\n"
    },
    {
      "commit": "b4442cadca2f97239c8b80f64af7937897b867b1",
      "tree": "1efd551d03fef6a587392e3b1be05521bcbbf1bc",
      "parents": [
        "ba7dd8570dc8ad4daa3d1c49a137a7b8479eae07",
        "83e1bdc94f32dcf52dfcd2025acc7a2b9376b1e8"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 13:41:48 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 13:41:48 2024 -0800"
      },
      "message": "Merge tag \u0027x86_tdx_for_6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 TDX updates from Dave Hansen:\n \"This contains the initial support for host-side TDX support so that\n  KVM can run TDX-protected guests. This does not include the actual\n  KVM-side support which will come from the KVM folks. The TDX host\n  interactions with kexec also needs to be ironed out before this is\n  ready for prime time, so this code is currently Kconfig\u0027d off when\n  kexec is on.\n\n  The majority of the code here is the kernel telling the TDX module\n  which memory to protect and handing some additional memory over to it\n  to use to store TDX module metadata. That sounds pretty simple, but\n  the TDX architecture is rather flexible and it takes quite a bit of\n  back-and-forth to say, \"just protect all memory, please.\"\n\n  There is also some code tacked on near the end of the series to handle\n  a hardware erratum. The erratum can make software bugs such as a\n  kernel write to TDX-protected memory cause a machine check and\n  masquerade as a real hardware failure. The erratum handling watches\n  out for these and tries to provide nicer user errors\"\n\n* tag \u0027x86_tdx_for_6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (21 commits)\n  x86/virt/tdx: Make TDX host depend on X86_MCE\n  x86/virt/tdx: Disable TDX host support when kexec is enabled\n  Documentation/x86: Add documentation for TDX host support\n  x86/mce: Differentiate real hardware #MCs from TDX erratum ones\n  x86/cpu: Detect TDX partial write machine check erratum\n  x86/virt/tdx: Handle TDX interaction with sleep and hibernation\n  x86/virt/tdx: Initialize all TDMRs\n  x86/virt/tdx: Configure global KeyID on all packages\n  x86/virt/tdx: Configure TDX module with the TDMRs and global KeyID\n  x86/virt/tdx: Designate reserved areas for all TDMRs\n  x86/virt/tdx: Allocate and set up PAMTs for TDMRs\n  x86/virt/tdx: Fill out TDMRs to cover all TDX memory regions\n  x86/virt/tdx: Add placeholder to construct TDMRs to cover all TDX memory regions\n  x86/virt/tdx: Get module global metadata for module initialization\n  x86/virt/tdx: Use all system memory when initializing TDX module as TDX memory\n  x86/virt/tdx: Add skeleton to enable TDX on demand\n  x86/virt/tdx: Add SEAMCALL error printing for module initialization\n  x86/virt/tdx: Handle SEAMCALL no entropy error in common code\n  x86/virt/tdx: Make INTEL_TDX_HOST depend on X86_X2APIC\n  x86/virt/tdx: Define TDX supported page sizes as macros\n  ...\n"
    },
    {
      "commit": "ba7dd8570dc8ad4daa3d1c49a137a7b8479eae07",
      "tree": "a363cd5d24cf2420c172d53f932de93ed9c97a8e",
      "parents": [
        "b0d326da462e20285236e11e4cbc32085de9f363",
        "981cf568a8644161c2f15c02278ebc2834b51ba6"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 13:23:53 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 13:23:53 2024 -0800"
      },
      "message": "Merge tag \u0027x86_sgx_for_6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull x86 SGX updates from Dave Hansen:\n \"This time, these are entirely confined to SGX selftests fixes.\n\n  The mini SGX enclave built by the selftests has garnered some\n  attention because it stands alone and does not need the sizable\n  infrastructure of the official SGX SDK. I think that\u0027s why folks are\n  suddently interested in cleaning it up.\n\n   - Clean up selftest compilation issues, mostly from non-gcc compilers\n\n   - Avoid building selftests when not on x86\"\n\n* tag \u0027x86_sgx_for_6.8\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  selftests/sgx: Skip non X86_64 platform\n  selftests/sgx: Remove incomplete ABI sanitization code in test enclave\n  selftests/sgx: Discard unsupported ELF sections\n  selftests/sgx: Ensure expected location of test enclave buffer\n  selftests/sgx: Ensure test enclave buffer is entirely preserved\n  selftests/sgx: Fix linker script asserts\n  selftests/sgx: Handle relocations in test enclave\n  selftests/sgx: Produce static-pie executable for test enclave\n  selftests/sgx: Remove redundant enclave base address save/restore\n  selftests/sgx: Specify freestanding environment for enclave compilation\n  selftests/sgx: Separate linker options\n  selftests/sgx: Include memory clobber for inline asm in test enclave\n  selftests/sgx: Fix uninitialized pointer dereferences in encl_get_entry\n  selftests/sgx: Fix uninitialized pointer dereference in error path\n"
    },
    {
      "commit": "925781a471d8156011e8f8c1baf61bbe020dac55",
      "tree": "ab16af86478e29f7fb5a6c6ecdd1b2eda2332571",
      "parents": [
        "4349efc52b83af3851df7a4199567ad50b3d1f03",
        "d6938c1c76c64f42363d0d1f051e1b4641c2ad40"
      ],
      "author": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Thu Jan 18 12:45:04 2024 -0800"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Thu Jan 18 12:45:05 2024 -0800"
      },
      "message": "Merge tag \u0027nf-24-01-18\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/netfilter/nf\n\nPablo Neira Ayuso says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nNetfilter fixes for net\n\nThe following batch contains Netfilter fixes for net. Slightly larger\nthan usual because this batch includes several patches to tighten the\nnf_tables control plane to reject inconsistent configuration:\n\n1) Restrict NFTA_SET_POLICY to NFT_SET_POL_PERFORMANCE and\n   NFT_SET_POL_MEMORY.\n\n2) Bail out if a nf_tables expression registers more than 16 netlink\n   attributes which is what struct nft_expr_info allows.\n\n3) Bail out if NFT_EXPR_STATEFUL provides no .clone interface, remove\n   existing fallback to memcpy() when cloning which might accidentally\n   duplicate memory reference to the same object.\n\n4) Fix br_netfilter interaction with neighbour layer. This requires\n   three preparation patches:\n\n   - Use nf_bridge_get_physinif() in nfnetlink_log\n   - Use nf_bridge_info_exists() to check in br_netfilter context\n     is available in nf_queue.\n   - Pass net to nf_bridge_get_physindev()\n\n   And finally, the fix which replaces physindev with physinif\n   in nf_bridge_info.\n\n   Patches from Pavel Tikhomirov.\n\n5) Catch-all deactivation happens in the transaction, hence this\n   oneliner to check for the next generation. This bug uncovered after\n   the removal of the _BUSY bit, which happened in set elements back in\n   summer 2023.\n\n6) Ensure set (total) key length size and concat field length description\n   is consistent, otherwise bail out.\n\n7) Skip set element with the _DEAD flag on from the netlink dump path.\n   A tests occasionally shows that dump is mismatching because GC might\n   lose race to get rid of this element while a netlink dump is in\n   progress.\n\n8) Reject NFT_SET_CONCAT for field_count \u003c 1.\n\n9) Use IP6_INC_STATS in ipvs to fix preemption BUG splat, patch\n   from Fedor Pchelkin.\n\n* tag \u0027nf-24-01-18\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/netfilter/nf:\n  ipvs: avoid stat macros calls from preemptible context\n  netfilter: nf_tables: reject NFT_SET_CONCAT with not field length description\n  netfilter: nf_tables: skip dead set elements in netlink dump\n  netfilter: nf_tables: do not allow mismatch field size and set key length\n  netfilter: nf_tables: check if catch-all set element is active in next generation\n  netfilter: bridge: replace physindev with physinif in nf_bridge_info\n  netfilter: propagate net to nf_bridge_get_physindev\n  netfilter: nf_queue: remove excess nf_bridge variable\n  netfilter: nfnetlink_log: use proper helper for fetching physinif\n  netfilter: nft_limit: do not ignore unsupported flags\n  netfilter: nf_tables: bail out if stateful expression provides no .clone\n  netfilter: nf_tables: validate .maxattr at expression registration\n  netfilter: nf_tables: reject invalid set policy\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nLink: https://lore.kernel.org/r/20240118161726.14838-1-pablo@netfilter.org\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "4503538d3066f6dd0a66ecc902b382912b97d8a1",
      "tree": "bd1ca5c9ec20322c8697342f45ba7fe93bc50564",
      "parents": [
        "90f9b1406236853bd524ddde86cc5a945690c6b7"
      ],
      "author": {
        "name": "Wolfram Sang",
        "email": "wsa+renesas@sang-engineering.com",
        "time": "Sat Jan 13 20:35:54 2024 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:44 2024 +0100"
      },
      "message": "MAINTAINERS: use proper email for my I2C work\n\nRenesas is solely funding my I2C maintenance meanwhile, give them credit\nfor that by using this email address.\n\nSigned-off-by: Wolfram Sang \u003cwsa+renesas@sang-engineering.com\u003e\n"
    },
    {
      "commit": "90f9b1406236853bd524ddde86cc5a945690c6b7",
      "tree": "ea1ffcb6e949f9081a7d2cf3ed5d5240f4c80191",
      "parents": [
        "a058b24c08023ea0ea0a7c38e6845f1d25139a22"
      ],
      "author": {
        "name": "Alain Volmat",
        "email": "alain.volmat@foss.st.com",
        "time": "Fri Dec 15 18:06:10 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:44 2024 +0100"
      },
      "message": "i2c: stm32f7: add support for stm32mp25 soc\n\nThe stm32mp25 has only a single interrupt line used for both\nevents and errors. In order to cope with that, reorganise the\nerror handling code so that it can be called either from the\ncommon handler (used in case of SoC having only a single IT line)\nand the error handler for others.\nThe CR1 register also embeds a new FMP bit, necessary when running\nat Fast Mode Plus frequency. This bit should be used instead of\nthe SYSCFG bit used on other platforms.\nAdd a new compatible to distinguish between the SoCs and two\nboolean within the setup structure in order to know if the\nplatform has a single/multiple IT lines and if the FMP bit\nwithin CR1 is available or not.\n\nSigned-off-by: Valentin Caron \u003cvalentin.caron@foss.st.com\u003e\nSigned-off-by: Alain Volmat \u003calain.volmat@foss.st.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "a058b24c08023ea0ea0a7c38e6845f1d25139a22",
      "tree": "3056e3b4a8f2017133303be886975c8c076884f1",
      "parents": [
        "bf12998e1a68a82d596ea33b00b3ebc75ce52bb5"
      ],
      "author": {
        "name": "Alain Volmat",
        "email": "alain.volmat@foss.st.com",
        "time": "Fri Dec 15 18:06:09 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:44 2024 +0100"
      },
      "message": "i2c: stm32f7: perform I2C_ISR read once at beginning of event isr\n\nMove readl_relaxed of I2C_ISR register at beginning of event isr\nso that it done once for both master \u0026 slave handling.\n\nSigned-off-by: Alain Volmat \u003calain.volmat@foss.st.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "bf12998e1a68a82d596ea33b00b3ebc75ce52bb5",
      "tree": "024c3b05c9c94e8e9c6260056a402af316bb9988",
      "parents": [
        "33a00d919253022aabafecae6bc88a6fad446589"
      ],
      "author": {
        "name": "Alain Volmat",
        "email": "alain.volmat@foss.st.com",
        "time": "Fri Dec 15 18:06:08 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:44 2024 +0100"
      },
      "message": "dt-bindings: i2c: document st,stm32mp25-i2c compatible\n\nAdd a new compatible st,stm32mp25-i2c for the STM32MP25 series which\nhas only one interrupt line for both events and errors and differs in\nterm of handling of FastModePlus.\n\nSigned-off-by: Alain Volmat \u003calain.volmat@foss.st.com\u003e\nReviewed-by: Conor Dooley \u003cconor.dooley@microchip.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "33a00d919253022aabafecae6bc88a6fad446589",
      "tree": "2644ff748d5d4bcd7978ca247d7d248213aee77d",
      "parents": [
        "e6103cd45ef0e14eb02f0666bc6b494902cfe821"
      ],
      "author": {
        "name": "Alain Volmat",
        "email": "alain.volmat@foss.st.com",
        "time": "Fri Dec 15 18:06:07 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:44 2024 +0100"
      },
      "message": "i2c: stm32f7: simplify status messages in case of errors\n\nAvoid usage of __func__ when reporting an error message\nsince dev_err/dev_dbg are already providing enough details\nto identify the source of the message.\n\nSigned-off-by: Alain Volmat \u003calain.volmat@foss.st.com\u003e\nReviewed-by: Andi Shyti \u003candi.shyti@kernel.org\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "e6103cd45ef0e14eb02f0666bc6b494902cfe821",
      "tree": "083186ce9728fc0cceac02f04e67450a64b6fc0d",
      "parents": [
        "a51e224c2f42417e95a3e1a672ade221bcd006ba"
      ],
      "author": {
        "name": "Alain Volmat",
        "email": "alain.volmat@foss.st.com",
        "time": "Fri Dec 15 18:06:06 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:44 2024 +0100"
      },
      "message": "i2c: stm32f7: perform most of irq job in threaded handler\n\nThe irq handling is currently split between the irq handler\nand the threaded irq handler.  Some of the handling (such as\ndma related stuffs) done within the irq handler might sleep or\ntake some time leading to issues if the kernel is built with\nrealtime constraints.  In order to fix that, perform an overall\nrework to perform most of the job within the threaded handler\nand only keep fifo access in the non threaded handler.\n\nSigned-off-by: Alain Volmat \u003calain.volmat@foss.st.com\u003e\nReviewed-by: Andi Shyti \u003candi.shyti@kernel.org\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "a51e224c2f42417e95a3e1a672ade221bcd006ba",
      "tree": "c677e6d53431c196d3e8c532f46cada6a8b795f8",
      "parents": [
        "2f189493ae32be9768b27072c9388e62b38d2dda"
      ],
      "author": {
        "name": "Alain Volmat",
        "email": "alain.volmat@foss.st.com",
        "time": "Fri Dec 15 18:06:05 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:44 2024 +0100"
      },
      "message": "i2c: stm32f7: use dev_err_probe upon calls of devm_request_irq\n\nConvert error handling upon calls of devm_request_irq functions during\nthe probe of the driver.\n\nSigned-off-by: Alain Volmat \u003calain.volmat@foss.st.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "2f189493ae32be9768b27072c9388e62b38d2dda",
      "tree": "fb7a8e46d314c0c726c3442a394b2937494f6d40",
      "parents": [
        "6d9450464ce1825d7d0e7ef5d33a9d2701f41c76"
      ],
      "author": {
        "name": "Paul Menzel",
        "email": "pmenzel@molgen.mpg.de",
        "time": "Wed Dec 20 17:10:02 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:43 2024 +0100"
      },
      "message": "i2c: i801: Add lis3lv02d for Dell XPS 15 7590\n\nOn the Dell XPS 15 7590/0VYV0G, BIOS 1.24.0 09/11/2023, Linux prints the\nwarning below.\n\n    i801_smbus 0000:00:1f.4: Accelerometer lis3lv02d is present on SMBus but its address is unknown, skipping registration\n\nFollowing the same suggestions by Wolfram Sang as for the Dell Precision\n3540 [1], the accelerometer can be successfully found on I2C bus 2 at\naddress 0x29.\n\n    $ echo lis3lv02d 0x29 | sudo tee /sys/bus/i2c/devices/i2c-2/new_device\n    lis3lv02d 0x29\n    $ dmesg | tail -5\n    [  549.522876] lis3lv02d_i2c 2-0029: supply Vdd not found, using dummy regulator\n    [  549.522904] lis3lv02d_i2c 2-0029: supply Vdd_IO not found, using dummy regulator\n    [  549.542486] lis3lv02d: 8 bits 3DC sensor found\n    [  549.630022] input: ST LIS3LV02DL Accelerometer as /devices/platform/lis3lv02d/input/input35\n    [  549.630586] i2c i2c-2: new_device: Instantiated device lis3lv02d at 0x29\n\nSo, the device has that accelerometer. Add the I2C address to the\nmapping list, and test it successfully on the device.\n\n[1]: https://lore.kernel.org/linux-i2c/97708c11-ac85-fb62-2c8e-d37739ca826f@molgen.mpg.de/\n\nSigned-off-by: Paul Menzel \u003cpmenzel@molgen.mpg.de\u003e\nAcked-by: Pali Rohár \u003cpali@kernel.org\u003e\nReviewed-by: Andi Shyti \u003candi.shyti@kernel.org\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "6d9450464ce1825d7d0e7ef5d33a9d2701f41c76",
      "tree": "16a0ba88ae5c3047425b55c4562f304006a43288",
      "parents": [
        "bb7c0209c4fead37fbc9fd07f9617f40ba21189e"
      ],
      "author": {
        "name": "Paul Menzel",
        "email": "pmenzel@molgen.mpg.de",
        "time": "Wed Dec 20 17:10:01 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:43 2024 +0100"
      },
      "message": "i2c: i801: Add lis3lv02d for Dell Precision 3540\n\nOn the Dell Precision 3540/0M14W7, BIOS 1.7.4 05/12/2020, Linux prints\nthe warning below.\n\n    i801_smbus 0000:00:1f.4: Accelerometer lis3lv02d is present on SMBus but its address is unknown, skipping registration\n\nWith the help of Wolfram Sang, the test to probe it on I2C bus 6 at address\n0x29 was successful.\n\n    $ echo lis3lv02d 0x29 | sudo tee /sys/bus/i2c/devices/i2c-6/new_device\n    [ 2110.787000] i2c i2c-6: new_device: Instantiated device lis3lv02d at 0x29\n    [ 2110.791932] lis3lv02d_i2c 6-0029: supply Vdd not found, using dummy regulator\n    [ 2110.791981] lis3lv02d_i2c 6-0029: supply Vdd_IO not found, using dummy regulator\n    [ 2110.809233] lis3lv02d: 8 bits 3DC sensor found\n    [ 2110.900668] input: ST LIS3LV02DL Accelerometer as /devices/platform/lis3lv02d/input/input23\n\nSo, the device has that accelerometer. Add the I2C address to the\nmapping list.\n\nLink: https://lore.kernel.org/linux-i2c/97708c11-ac85-fb62-2c8e-d37739ca826f@molgen.mpg.de/\nSigned-off-by: Paul Menzel \u003cpmenzel@molgen.mpg.de\u003e\nAcked-by: Pali Rohár \u003cpali@kernel.org\u003e\nReviewed-by: Andi Shyti \u003candi.shyti@kernel.org\u003e\n[wsa: shortened commit message a little]\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "bb7c0209c4fead37fbc9fd07f9617f40ba21189e",
      "tree": "8caf2552d240453b50ec75d154fb7c8b57a09338",
      "parents": [
        "4c541c6a66df396c35693a21c5bc40553cd4d2fa"
      ],
      "author": {
        "name": "Hans Hu",
        "email": "hanshu-oc@zhaoxin.com",
        "time": "Thu Nov 02 10:53:54 2023 +0800"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:43 2024 +0100"
      },
      "message": "i2c: wmt: Reduce redundant: REG_CR setting\n\nThese Settings for the same register, REG_CR,\ncan be put together to reduce code redundancy.\n\nSigned-off-by: Hans Hu \u003chanshu-oc@zhaoxin.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "4c541c6a66df396c35693a21c5bc40553cd4d2fa",
      "tree": "90137bb38d0ab08c88501c316aba78bcc5de68d7",
      "parents": [
        "7108ecf3cbc728ec4a72ce29136cbcfedf4a9242"
      ],
      "author": {
        "name": "Hans Hu",
        "email": "hanshu-oc@zhaoxin.com",
        "time": "Thu Nov 02 10:53:55 2023 +0800"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:43 2024 +0100"
      },
      "message": "i2c: wmt: Reduce redundant: function parameter\n\nUse more appropriate parameter passing to reduce the amount of code\n\nSigned-off-by: Hans Hu \u003chanshu-oc@zhaoxin.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "7108ecf3cbc728ec4a72ce29136cbcfedf4a9242",
      "tree": "81a5291560c76dcb96c6f6443fb3b3d2acc9c832",
      "parents": [
        "8a22991a48f2602aaab79df1301483d50bc51b2c"
      ],
      "author": {
        "name": "Hans Hu",
        "email": "hanshu-oc@zhaoxin.com",
        "time": "Thu Nov 02 10:53:53 2023 +0800"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:43 2024 +0100"
      },
      "message": "i2c: wmt: Reduce redundant: clock mode setting\n\nThe frequency setting mode is adjusted to reduce the code redundancy,\nand it is also convenient to share with zhaoxin\n\nSigned-off-by: Hans Hu \u003chanshu-oc@zhaoxin.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "8a22991a48f2602aaab79df1301483d50bc51b2c",
      "tree": "75b2e37ee236f565d9f3ec0834c1ef349b2213a3",
      "parents": [
        "462e9804d2c90bfffb494718b5aae5c374ff3b78"
      ],
      "author": {
        "name": "Hans Hu",
        "email": "hanshu-oc@zhaoxin.com",
        "time": "Thu Nov 02 10:53:52 2023 +0800"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:43 2024 +0100"
      },
      "message": "i2c: wmt: Reduce redundant: wait event complete\n\nPut the handling of interrupt events in a function class\nto reduce code redundancy.\n\nSigned-off-by: Hans Hu \u003chanshu-oc@zhaoxin.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "462e9804d2c90bfffb494718b5aae5c374ff3b78",
      "tree": "9731aadaa42135fbd0a912c2956bd00c9790c82e",
      "parents": [
        "a8355235dbd571b32c750ee756dd6dac216d18f2"
      ],
      "author": {
        "name": "Hans Hu",
        "email": "hanshu-oc@zhaoxin.com",
        "time": "Thu Nov 02 10:53:51 2023 +0800"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:43 2024 +0100"
      },
      "message": "i2c: wmt: Reduce redundant: bus busy check\n\nPut wmt_i2c_wait_bus_not_busy() in a more appropriate place\nto reduce code redundancy\n\nSigned-off-by: Hans Hu \u003chanshu-oc@zhaoxin.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "a8355235dbd571b32c750ee756dd6dac216d18f2",
      "tree": "64add0a9486bb562b5319f313d443f0e90d196eb",
      "parents": [
        "94959c0e796e41128483588d133b9a7003b409f9"
      ],
      "author": {
        "name": "Heiner Kallweit",
        "email": "hkallweit1@gmail.com",
        "time": "Wed Nov 08 07:38:07 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:43 2024 +0100"
      },
      "message": "i2c: mux: reg: Remove class-based device auto-detection support\n\nLegacy class-based device auto-detection shouldn\u0027t be used in new code.\nTherefore remove support in i2c-mux-reg as long as we don\u0027t have a\nuser of this feature yet.\n\nLink: https://lore.kernel.org/linux-i2c/a22978a4-88e4-46f4-b71c-032b22321599@gmail.com/\nSigned-off-by: Heiner Kallweit \u003chkallweit1@gmail.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "94959c0e796e41128483588d133b9a7003b409f9",
      "tree": "ae1f507d3f5736c9a688125e7d8a6c792f1178fa",
      "parents": [
        "614ef4d30fe724ff8558a74a1926bd3051d39b67"
      ],
      "author": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@linuxfoundation.org",
        "time": "Tue Dec 19 16:22:43 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:43 2024 +0100"
      },
      "message": "i2c: make i2c_bus_type const\n\nNow that the driver core can properly handle constant struct bus_type,\nmove the i2c_bus_type variable to be a constant structure as well, placing\nit into read-only memory which can not be modified at runtime.\n\nNote, the sound/soc/rockchip/rk3399_gru_sound.c also needed tweaking as\nit decided to save off a pointer to a bus type for internal stuff, and\nit was using the i2c_bus_type as well.\n\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nAcked-by: Mark Brown \u003cbroonie@kernel.org\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "614ef4d30fe724ff8558a74a1926bd3051d39b67",
      "tree": "752461b05abca23f98ce9f889465174e9333f4d5",
      "parents": [
        "2b0eee4f6add17a74f696a6f40ad2a4fa173613e"
      ],
      "author": {
        "name": "Philipp Zabel",
        "email": "p.zabel@pengutronix.de",
        "time": "Mon Nov 27 22:11:02 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:43 2024 +0100"
      },
      "message": "dt-bindings: at24: add ROHM BR24G04\n\nAdd compatible for ROHM Semiconductor BR24G04 EEPROMs.\n\nSigned-off-by: Philipp Zabel \u003cp.zabel@pengutronix.de\u003e\nSigned-off-by: Roland Hieber \u003crhi@pengutronix.de\u003e\nAcked-by: Krzysztof Kozlowski \u003ckrzysztof.kozlowski@linaro.org\u003e\nSigned-off-by: Bartosz Golaszewski \u003cbartosz.golaszewski@linaro.org\u003e\n"
    },
    {
      "commit": "2b0eee4f6add17a74f696a6f40ad2a4fa173613e",
      "tree": "4ee2d4f5dc5ffb684bf816b966db607649b7420a",
      "parents": [
        "e535af5c4225fe2715d12322b645853ab9724648"
      ],
      "author": {
        "name": "Bartosz Golaszewski",
        "email": "bartosz.golaszewski@linaro.org",
        "time": "Thu Nov 23 11:30:32 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:43 2024 +0100"
      },
      "message": "eeprom: at24: use of_match_ptr()\n\nThis driver does not depend on CONFIG_OF so using of_match_ptr() makes\nsense to reduce the size a bit.\n\nSigned-off-by: Bartosz Golaszewski \u003cbartosz.golaszewski@linaro.org\u003e\n"
    },
    {
      "commit": "e535af5c4225fe2715d12322b645853ab9724648",
      "tree": "f5fb141ec7eb3dcf9174a2e8d39b9eca6b86bdfa",
      "parents": [
        "db63eacdf61d6bbcde783f15aaafbd8e66476e9a"
      ],
      "author": {
        "name": "Christophe Leroy",
        "email": "christophe.leroy@csgroup.eu",
        "time": "Wed Dec 06 23:24:03 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:42 2024 +0100"
      },
      "message": "i2c: cpm: Remove linux,i2c-index conversion from be32\n\nsparse reports an error on some data that gets converted from be32.\n\nThat\u0027s because that data is typed u32 instead of __be32.\n\nThe type is correct, the be32_to_cpu() conversion is not.\n\nRemove the conversion.\n\nReported-by: kernel test robot \u003clkp@intel.com\u003e\nCloses: https://lore.kernel.org/oe-kbuild-all/202312042210.QL4DA8Av-lkp@intel.com/\nSigned-off-by: Christophe Leroy \u003cchristophe.leroy@csgroup.eu\u003e\nAcked-By: Jochen Friedrich \u003cjochen@scram.de\u003e\nReviewed-by: Andi Shyti \u003candi.shyti@kernel.org\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "db63eacdf61d6bbcde783f15aaafbd8e66476e9a",
      "tree": "8d1b84018a2f7594a73e6d5545ffb5e5a1e94e8c",
      "parents": [
        "13e3a512a29001cab68fe9a0c12be94e6d42a10c"
      ],
      "author": {
        "name": "Alexander Stein",
        "email": "alexander.stein@ew.tq-group.com",
        "time": "Thu Nov 30 10:57:51 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:42 2024 +0100"
      },
      "message": "i2c: imx: Make SDA actually optional for bus recovering\n\nBoth i2c_generic_scl_recovery() and the debug output indicate that SDA is\npurely optional for bus recovery. But devm_gpiod_get() never returns NULL\nmaking it mandatory. Fix this by calling devm_gpiod_get_optional instead.\n\nSigned-off-by: Alexander Stein \u003calexander.stein@ew.tq-group.com\u003e\nReviewed-by: Andi Shyti \u003candi.shyti@kernel.org\u003e\nReviewed-by: Oleksij Rempel \u003co.rempel@pengutronix.de\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "13e3a512a29001cab68fe9a0c12be94e6d42a10c",
      "tree": "12dd8a490091500b721b6ae196e81c7fd444caa8",
      "parents": [
        "92a85b7c6262f19c65a1c115cf15f411ba65a57c"
      ],
      "author": {
        "name": "Jean Delvare",
        "email": "jdelvare@suse.de",
        "time": "Tue Nov 14 15:13:28 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:42 2024 +0100"
      },
      "message": "i2c: smbus: Support up to 8 SPD EEPROMs\n\nI originally restricted i2c_register_spd() to only support systems\nwith up to 4 memory slots, so that we can experiment with it on\na limited numbers of systems. It\u0027s been more than 3 years and it\nseems to work just fine, so the time has come to lift this arbitrary\nlimitation.\n\nThe maximum number of memory slots which can be connected to a single\nI2C segment is 8, so support that many SPD EEPROMs. Any system with\nmore than 8 memory slots would have either multiple SMBus channels\nor SMBus multiplexing, so it would need dedicated care. We\u0027ll get to\nthat later as needed.\n\nSigned-off-by: Jean Delvare \u003cjdelvare@suse.de\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "92a85b7c6262f19c65a1c115cf15f411ba65a57c",
      "tree": "eaa92c384e1c924e9710f0123af7439c5160a6ac",
      "parents": [
        "187432b82173c86e0450d0e3d516b415ab2455f8"
      ],
      "author": {
        "name": "Tim Lunn",
        "email": "tim@feathertop.org",
        "time": "Sun Dec 03 23:39:59 2023 +1100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:42 2024 +0100"
      },
      "message": "i2c: rk3x: Adjust mask/value offset for i2c2 on rv1126\n\nRockchip RV1126 is using old style i2c controller, the i2c2\nbus uses a non-sequential offset in the grf register for the\nmask/value bits for this bus.\n\nThis patch fixes i2c2 bus on rv1126 SoCs.\n\nSigned-off-by: Tim Lunn \u003ctim@feathertop.org\u003e\nAcked-by: Heiko Stuebner \u003cheiko@sntech.de\u003e\nReviewed-by: Andi Shyti \u003candi.shyti@kernel.org\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "187432b82173c86e0450d0e3d516b415ab2455f8",
      "tree": "4761b2dc664433690e892db0f81f345f5bf94d42",
      "parents": [
        "990489e1042c6c5d6bccf56deca68f8dbeed8180"
      ],
      "author": {
        "name": "Marek Szyprowski",
        "email": "m.szyprowski@samsung.com",
        "time": "Wed Nov 08 17:43:54 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:42 2024 +0100"
      },
      "message": "i2c: s3c24xx: add support for atomic transfers\n\nAdd support for atomic transfers using polling mode with interrupts\nintentionally disabled to get rid of the following warning introduced by\ncommit 63b96983a5dd (\"i2c: core: introduce callbacks for atomic\ntransfers\") during system reboot and power-off:\n\n------------[ cut here ]------------\nWARNING: CPU: 0 PID: 1518 at drivers/i2c/i2c-core.h:40 i2c_transfer+0xe8/0xf4\nNo atomic I2C transfer handler for \u0027i2c-0\u0027\n...\n---[ end trace 0000000000000000 ]---\n\nSigned-off-by: Marek Szyprowski \u003cm.szyprowski@samsung.com\u003e\nReviewed-by: Chanho Park \u003cchanho61.park@samsung.com\u003e\nReviewed-by: Andi Shyti \u003candi.shyti@kernel.org\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "990489e1042c6c5d6bccf56deca68f8dbeed8180",
      "tree": "6a7b00fa7c5c332449bc864af5ff172cef6ebdac",
      "parents": [
        "0d9cf23ed55d7ba3ab26d617a3ae507863674c8f"
      ],
      "author": {
        "name": "Marek Szyprowski",
        "email": "m.szyprowski@samsung.com",
        "time": "Wed Nov 08 17:43:53 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:42 2024 +0100"
      },
      "message": "i2c: s3c24xx: fix transferring more than one message in polling mode\n\nTo properly handle ACK on the bus when transferring more than one\nmessage in polling mode, move the polling handling loop from\ns3c24xx_i2c_message_start() to s3c24xx_i2c_doxfer(). This way\ni2c_s3c_irq_nextbyte() is always executed till the end, properly\nacknowledging the IRQ bits and no recursive calls to\ni2c_s3c_irq_nextbyte() are made.\n\nWhile touching this, also fix finishing transfers in polling mode by\nusing common code path and always waiting for the bus to become idle\nand disabled.\n\nFixes: 117053f77a5a (\"i2c: s3c2410: Add polling mode support\")\nSigned-off-by: Marek Szyprowski \u003cm.szyprowski@samsung.com\u003e\nReviewed-by: Andi Shyti \u003candi.shyti@kernel.org\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "0d9cf23ed55d7ba3ab26d617a3ae507863674c8f",
      "tree": "d07bb9f035ee461aa277de823637f6dee794e887",
      "parents": [
        "d0520eb3ed54df89eb5961ec3b88634f313123f2"
      ],
      "author": {
        "name": "Marek Szyprowski",
        "email": "m.szyprowski@samsung.com",
        "time": "Wed Nov 08 17:43:52 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:42 2024 +0100"
      },
      "message": "i2c: s3c24xx: fix read transfers in polling mode\n\nTo properly handle read transfers in polling mode, no waiting for the ACK\nstate is needed as it will never come. Just wait a bit to ensure start\nstate is on the bus and continue processing next bytes.\n\nFixes: 117053f77a5a (\"i2c: s3c2410: Add polling mode support\")\nSigned-off-by: Marek Szyprowski \u003cm.szyprowski@samsung.com\u003e\nReviewed-by: Chanho Park \u003cchanho61.park@samsung.com\u003e\nReviewed-by: Andi Shyti \u003candi.shyti@kernel.org\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "d0520eb3ed54df89eb5961ec3b88634f313123f2",
      "tree": "2140b3acb9130806e616442124e4844f8d803be1",
      "parents": [
        "2b523c46e81ebd621515ab47117f95de197dfcbf"
      ],
      "author": {
        "name": "Wolfram Sang",
        "email": "wsa+renesas@sang-engineering.com",
        "time": "Thu Dec 14 08:43:58 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:42 2024 +0100"
      },
      "message": "i2c: rcar: add FastMode+ support for Gen4\n\nTo support FM+, we mainly need to turn the SMD constant into a parameter\nand set it accordingly. That also means we can finally fix SMD to our\nneeds instead of bailing out. A sanity check for SMD then becomes a\nsanity check for \u0027x \u003d\u003d 0\u0027. After all that, activating the enable bit for\nFM+ is all we need to do. Tested with a Renesas Falcon board using R-Car\nV3U.\n\nSigned-off-by: Wolfram Sang \u003cwsa+renesas@sang-engineering.com\u003e\nReviewed-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\nReviewed-by: Andi Shyti \u003candi.shyti@kernel.org\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "2b523c46e81ebd621515ab47117f95de197dfcbf",
      "tree": "04798207946e8460c8c0e064d7219b953ddceb11",
      "parents": [
        "e19e1abc9ce45f4d4cad2f7eab1827e683be4e84"
      ],
      "author": {
        "name": "Wolfram Sang",
        "email": "wsa+renesas@sang-engineering.com",
        "time": "Thu Dec 14 08:43:57 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:42 2024 +0100"
      },
      "message": "i2c: rcar: introduce Gen4 devices\n\nSo far, we treated Gen4 as Gen3. But we are soon adding FM+ as a Gen4\nspecific feature, so prepare the code for the new devtype.\n\nSigned-off-by: Wolfram Sang \u003cwsa+renesas@sang-engineering.com\u003e\nReviewed-by: Geert Uytterhoeven \u003cgeert+renesas@glider.be\u003e\nReviewed-by: Andi Shyti \u003candi.shyti@kernel.org\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "e19e1abc9ce45f4d4cad2f7eab1827e683be4e84",
      "tree": "f7ecca59e25f1c6c9cd0fb38057eb33510b59907",
      "parents": [
        "c66520c02c2f5b75e4f06a83ece4382fe2f92cfc"
      ],
      "author": {
        "name": "Wolfram Sang",
        "email": "wsa+renesas@sang-engineering.com",
        "time": "Sun Nov 12 17:59:11 2023 -0500"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:42 2024 +0100"
      },
      "message": "i2c: npcm7xx: move to per-adapter debugfs directory\n\nThe I2C core now provides a per-adapter debugfs directory. Use it\ninstead of creating a custom one.\n\nSigned-off-by: Wolfram Sang \u003cwsa+renesas@sang-engineering.com\u003e\nReviewed-by: Tali Perry \u003ctali.perry1@gmail.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "c66520c02c2f5b75e4f06a83ece4382fe2f92cfc",
      "tree": "2056cd9adb39cf0dc968373f9b8ba500b07c2003",
      "parents": [
        "73febd775bdbdb98c81255ff85773ac410ded5c4"
      ],
      "author": {
        "name": "Wolfram Sang",
        "email": "wsa+renesas@sang-engineering.com",
        "time": "Sun Nov 12 17:59:10 2023 -0500"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:41 2024 +0100"
      },
      "message": "i2c: gpio: move to per-adapter debugfs directory\n\nThe I2C core now provides a per-adapter debugfs directory. Use it\ninstead of creating a custom one.\n\nSigned-off-by: Wolfram Sang \u003cwsa+renesas@sang-engineering.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "73febd775bdbdb98c81255ff85773ac410ded5c4",
      "tree": "284e43748c25f05ae65d63c4d454ab91dd2a1c7e",
      "parents": [
        "f79ad78a25841fdde6cd589969966fb113cf1d10"
      ],
      "author": {
        "name": "Wolfram Sang",
        "email": "wsa+renesas@sang-engineering.com",
        "time": "Sun Nov 12 17:54:41 2023 -0500"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:41 2024 +0100"
      },
      "message": "i2c: create debugfs entry per adapter\n\nTwo drivers already implement custom debugfs handling for their\ni2c_adapter and more will come. So, let the core create a debugfs\ndirectory per adapter and pass that to drivers for their debugfs files.\n\nSigned-off-by: Wolfram Sang \u003cwsa+renesas@sang-engineering.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "f79ad78a25841fdde6cd589969966fb113cf1d10",
      "tree": "809538987b67ec73af3b2964f4eae4f14920e502",
      "parents": [
        "8cd210d200ad00b29a8e0476ceef585bdca1d2a7"
      ],
      "author": {
        "name": "Heiner Kallweit",
        "email": "hkallweit1@gmail.com",
        "time": "Fri Nov 24 11:16:11 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:41 2024 +0100"
      },
      "message": "staging: greybus: Don\u0027t let i2c adapters declare I2C_CLASS_SPD support if they support I2C_CLASS_HWMON\n\nAfter removal of the legacy eeprom driver the only remaining I2C\nclient device driver supporting I2C_CLASS_SPD is jc42. Because this\ndriver also supports I2C_CLASS_HWMON, adapters don\u0027t have to\ndeclare support for I2C_CLASS_SPD if they support I2C_CLASS_HWMON.\nIt\u0027s one step towards getting rid of I2C_CLASS_SPD mid-term.\n\nAcked-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\nSigned-off-by: Heiner Kallweit \u003chkallweit1@gmail.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "8cd210d200ad00b29a8e0476ceef585bdca1d2a7",
      "tree": "5fc9520e872c90e31c34f21dd2d32d70587cc867",
      "parents": [
        "c1cc7ccb0ff7596a7025a844d29487df0efd40b2"
      ],
      "author": {
        "name": "Heiner Kallweit",
        "email": "hkallweit1@gmail.com",
        "time": "Fri Nov 24 11:16:17 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:41 2024 +0100"
      },
      "message": "media: netup_unidvb: Don\u0027t let i2c adapters declare I2C_CLASS_SPD support if they support I2C_CLASS_HWMON\n\nAfter removal of the legacy eeprom driver the only remaining I2C\nclient device driver supporting I2C_CLASS_SPD is jc42. Because this\ndriver also supports I2C_CLASS_HWMON, adapters don\u0027t have to\ndeclare support for I2C_CLASS_SPD if they support I2C_CLASS_HWMON.\nIt\u0027s one step towards getting rid of I2C_CLASS_SPD mid-term.\n\nSigned-off-by: Heiner Kallweit \u003chkallweit1@gmail.com\u003e\nAcked-by: Hans Verkuil \u003chverkuil-cisco@xs4all.nl\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "c1cc7ccb0ff7596a7025a844d29487df0efd40b2",
      "tree": "0fda7dd7ab378086ab433b01b80fe9388315b8ac",
      "parents": [
        "9fd12f385720a85b4ce9a3cb98e66d470a5efd20"
      ],
      "author": {
        "name": "Heiner Kallweit",
        "email": "hkallweit1@gmail.com",
        "time": "Fri Nov 24 11:16:14 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:41 2024 +0100"
      },
      "message": "i2c: stub: Don\u0027t let i2c adapters declare I2C_CLASS_SPD support if they support I2C_CLASS_HWMON\n\nAfter removal of the legacy eeprom driver the only remaining I2C\nclient device driver supporting I2C_CLASS_SPD is jc42. Because this\ndriver also supports I2C_CLASS_HWMON, adapters don\u0027t have to\ndeclare support for I2C_CLASS_SPD if they support I2C_CLASS_HWMON.\nIt\u0027s one step towards getting rid of I2C_CLASS_SPD mid-term.\n\nSigned-off-by: Heiner Kallweit \u003chkallweit1@gmail.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "9fd12f385720a85b4ce9a3cb98e66d470a5efd20",
      "tree": "05af9de9b0250bf786ff2f76d0543f89b9e5844a",
      "parents": [
        "f21682b362b67833e4f4f481c30abcb432861b0c"
      ],
      "author": {
        "name": "Heiner Kallweit",
        "email": "hkallweit1@gmail.com",
        "time": "Fri Nov 24 11:16:10 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:41 2024 +0100"
      },
      "message": "i2c: Don\u0027t let i2c adapters declare I2C_CLASS_SPD support if they support I2C_CLASS_HWMON\n\nAfter removal of the legacy eeprom driver the only remaining I2C\nclient device driver supporting I2C_CLASS_SPD is jc42. Because this\ndriver also supports I2C_CLASS_HWMON, adapters don\u0027t have to\ndeclare support for I2C_CLASS_SPD if they support I2C_CLASS_HWMON.\nIt\u0027s one step towards getting rid of I2C_CLASS_SPD mid-term.\n\nSigned-off-by: Heiner Kallweit \u003chkallweit1@gmail.com\u003e\nAcked-by: Andi Shyti \u003candi.shyti@kernel.org\u003e\nAcked-by: Jim Cromie \u003cjim.cromie@gmail.com\u003e # for SCX\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "f21682b362b67833e4f4f481c30abcb432861b0c",
      "tree": "48fb7fe2bea2fe6391aa41f4f864d2144dd3cd51",
      "parents": [
        "b60db383e2ba64a18e49b6bef3be1ab18aa159f1"
      ],
      "author": {
        "name": "Heiner Kallweit",
        "email": "hkallweit1@gmail.com",
        "time": "Mon Nov 13 12:37:15 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:41 2024 +0100"
      },
      "message": "drm/amd/pm: Remove I2C_CLASS_SPD support\n\nI2C_CLASS_SPD was used to expose the EEPROM content to user space,\nvia the legacy eeprom driver. Now that this driver has been removed,\nwe can remove I2C_CLASS_SPD support. at24 driver with explicit\ninstantiation should be used instead.\n\nSigned-off-by: Heiner Kallweit \u003chkallweit1@gmail.com\u003e\nAcked-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "b60db383e2ba64a18e49b6bef3be1ab18aa159f1",
      "tree": "9c1716d32f8c52942bae07253ed425fe6fe6e271",
      "parents": [
        "754bd2fffc913e523d1b9e686e8b1fd3a70d8f7e"
      ],
      "author": {
        "name": "Heiner Kallweit",
        "email": "hkallweit1@gmail.com",
        "time": "Thu Nov 23 10:40:40 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:41 2024 +0100"
      },
      "message": "include/linux/i2c.h: remove I2C_CLASS_DDC support\n\nAfter removal of the legacy EEPROM driver and I2C_CLASS_DDC support in\nolpc_dcon there\u0027s no i2c client driver left supporting I2C_CLASS_DDC.\nClass-based device auto-detection is a legacy mechanism and shouldn\u0027t\nbe used in new code. So we can remove this class completely now.\n\nSigned-off-by: Heiner Kallweit \u003chkallweit1@gmail.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "754bd2fffc913e523d1b9e686e8b1fd3a70d8f7e",
      "tree": "d3e822f68a5d30bf68f3ae9202659c9160933554",
      "parents": [
        "e965a707276760cc010eb77fba64b08ee9e8781f"
      ],
      "author": {
        "name": "Heiner Kallweit",
        "email": "hkallweit1@gmail.com",
        "time": "Thu Nov 23 10:40:25 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:41 2024 +0100"
      },
      "message": "fbdev: remove I2C_CLASS_DDC support\n\nAfter removal of the legacy EEPROM driver and I2C_CLASS_DDC support in\nolpc_dcon there\u0027s no i2c client driver left supporting I2C_CLASS_DDC.\nClass-based device auto-detection is a legacy mechanism and shouldn\u0027t\nbe used in new code. So we can remove this class completely now.\n\nAcked-by: Helge Deller \u003cdeller@gmx.de\u003e\nAcked-by: Thomas Zimmermann \u003ctzimmermann@suse.de\u003e\nSigned-off-by: Heiner Kallweit \u003chkallweit1@gmail.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "e965a707276760cc010eb77fba64b08ee9e8781f",
      "tree": "2116ae9a2f7d7d9daa61ab8ab67216988b2e0182",
      "parents": [
        "2cc14f52aeb78ce3f29677c2de1f06c0e91471ab"
      ],
      "author": {
        "name": "Heiner Kallweit",
        "email": "hkallweit1@gmail.com",
        "time": "Thu Nov 23 10:40:21 2023 +0100"
      },
      "committer": {
        "name": "Wolfram Sang",
        "email": "wsa@kernel.org",
        "time": "Thu Jan 18 21:10:41 2024 +0100"
      },
      "message": "drm: remove I2C_CLASS_DDC support\n\nAfter removal of the legacy EEPROM driver and I2C_CLASS_DDC support in\nolpc_dcon there\u0027s no i2c client driver left supporting I2C_CLASS_DDC.\nClass-based device auto-detection is a legacy mechanism and shouldn\u0027t\nbe used in new code. So we can remove this class completely now.\n\nAcked-by: Alex Deucher \u003calexander.deucher@amd.com\u003e\nAcked-by: Dmitry Baryshkov \u003cdmitry.baryshkov@linaro.org\u003e\nAcked-by: Harry Wentland \u003charry.wentland@amd.com\u003e\nAcked-by: Heiko Stuebner \u003cheiko@sntech.de\u003e\nAcked-by: Jani Nikula \u003cjani.nikula@intel.com\u003e\nAcked-by: Jernej Skrabec \u003cjernej.skrabec@gmail.com\u003e\nReviewed-by: Thomas Zimmermann \u003ctzimmermann@suse.de\u003e\nReviewed-by: Andi Shyti \u003candi.shyti@linux.intel.com\u003e\nReviewed-by: AngeloGioacchino Del Regno \u003cangelogioacchino.delregno@collabora.com\u003e\nReviewed-by: Neil Armstrong \u003cneil.armstrong@linaro.org\u003e\nSigned-off-by: Heiner Kallweit \u003chkallweit1@gmail.com\u003e\nSigned-off-by: Wolfram Sang \u003cwsa@kernel.org\u003e\n"
    },
    {
      "commit": "b0d326da462e20285236e11e4cbc32085de9f363",
      "tree": "0b2451a1e2a706eb512d6c681b1d8e9c41aeb971",
      "parents": [
        "8c94ccc7cd691472461448f98e2372c75849406c",
        "e37617c8e53a1f7fcba6d5e1041f4fd8a2425c27"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 11:57:33 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 11:57:33 2024 -0800"
      },
      "message": "Merge tag \u0027sched-urgent-2024-01-18\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip\n\nPull scheduler fix from Ingo Molnar:\n \"Fix a cpufreq related performance regression on certain systems, where\n  the CPU would remain at the lowest frequency, degrading performance\n  substantially\"\n\n* tag \u0027sched-urgent-2024-01-18\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:\n  sched/fair: Fix frequency selection for non-invariant case\n"
    },
    {
      "commit": "8c94ccc7cd691472461448f98e2372c75849406c",
      "tree": "d3907cad2a1fbbbcf71847274fdbdcf5a2aeb9a2",
      "parents": [
        "bd736f38c014ba70ba7ec3bdc6af6fe5368d6612",
        "933bb7b878ddd0f8c094db45551a7daddf806e00"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 11:43:55 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 11:43:55 2024 -0800"
      },
      "message": "Merge tag \u0027usb-6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb\n\nPull USB / Thunderbolt updates from Greg KH:\n \"Here is the big set of USB and Thunderbolt changes for 6.8-rc1.\n  Included in here are the following:\n\n   - Thunderbolt subsystem and driver updates for USB 4 hardware and\n     issues reported by real devices\n\n   - xhci driver updates\n\n   - dwc3 driver updates\n\n   - uvc_video gadget driver updates\n\n   - typec driver updates\n\n   - gadget string functions cleaned up\n\n   - other small changes\n\n  All of these have been in the linux-next tree for a while with no\n  reported issues\"\n\n* tag \u0027usb-6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (169 commits)\n  usb: typec: tipd: fix use of device-specific init function\n  usb: typec: tipd: Separate reset for TPS6598x\n  usb: mon: Fix atomicity violation in mon_bin_vma_fault\n  usb: gadget: uvc: Remove nested locking\n  usb: gadget: uvc: Fix use are free during STREAMOFF\n  usb: typec: class: fix typec_altmode_put_partner to put plugs\n  dt-bindings: usb: dwc3: Limit num-hc-interrupters definition\n  dt-bindings: usb: xhci: Add num-hc-interrupters definition\n  xhci: add support to allocate several interrupters\n  USB: core: Use device_driver directly in struct usb_driver and usb_device_driver\n  arm64: dts: mediatek: mt8195: Add \u0027rx-fifo-depth\u0027 for cherry\n  usb: xhci-mtk: fix a short packet issue of gen1 isoc-in transfer\n  dt-bindings: usb: mtk-xhci: add a property for Gen1 isoc-in transfer issue\n  arm64: dts: qcom: msm8996: Remove PNoC clock from MSS\n  arm64: dts: qcom: msm8996: Remove AGGRE2 clock from SLPI\n  arm64: dts: qcom: msm8998: Remove AGGRE2 clock from SLPI\n  arm64: dts: qcom: msm8939: Drop RPM bus clocks\n  arm64: dts: qcom: sdm630: Drop RPM bus clocks\n  arm64: dts: qcom: qcs404: Drop RPM bus clocks\n  arm64: dts: qcom: msm8996: Drop RPM bus clocks\n  ...\n"
    },
    {
      "commit": "bd736f38c014ba70ba7ec3bdc6af6fe5368d6612",
      "tree": "7acdde0c757b6abe4af8e8b83fd46eed9ceafc70",
      "parents": [
        "e38f734add21d75d76dbcf7b214f4823131c1bae",
        "0c84bea0cabc4e2b98a3de88eeb4ff798931f056"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 11:37:24 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 11:37:24 2024 -0800"
      },
      "message": "Merge tag \u0027tty-6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty\n\nPull tty / serial updates from Greg KH:\n \"Here is the big set of tty and serial driver changes for 6.8-rc1.\n\n  As usual, Jiri has a bunch of refactoring and cleanups for the tty\n  core and drivers in here, along with the usual set of rs485 updates\n  (someday this might work properly...)\n\n  Along with those, in here are changes for:\n\n   - sc16is7xx serial driver updates\n\n   - platform driver removal api updates\n\n   - amba-pl011 driver updates\n\n   - tty driver binding updates\n\n   - other small tty/serial driver updates and changes\n\n  All of these have been in linux-next for a while with no reported\n  issues\"\n\n* tag \u0027tty-6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (197 commits)\n  serial: sc16is7xx: refactor EFR lock\n  serial: sc16is7xx: reorder code to remove prototype declarations\n  serial: sc16is7xx: refactor FIFO access functions to increase commonality\n  serial: sc16is7xx: drop unneeded MODULE_ALIAS\n  serial: sc16is7xx: replace hardcoded divisor value with BIT() macro\n  serial: sc16is7xx: add explicit return for some switch default cases\n  serial: sc16is7xx: add macro for max number of UART ports\n  serial: sc16is7xx: add driver name to struct uart_driver\n  serial: sc16is7xx: use i2c_get_match_data()\n  serial: sc16is7xx: use spi_get_device_match_data()\n  serial: sc16is7xx: use DECLARE_BITMAP for sc16is7xx_lines bitfield\n  serial: sc16is7xx: improve do/while loop in sc16is7xx_irq()\n  serial: sc16is7xx: remove obsolete loop in sc16is7xx_port_irq()\n  serial: sc16is7xx: set safe default SPI clock frequency\n  serial: sc16is7xx: add check for unsupported SPI modes during probe\n  serial: sc16is7xx: fix invalid sc16is7xx_lines bitfield in case of probe error\n  serial: 8250_exar: Set missing rs485_supported flag\n  serial: omap: do not override settings for RS485 support\n  serial: core, imx: do not set RS485 enabled if it is not supported\n  serial: core: make sure RS485 cannot be enabled when it is not supported\n  ...\n"
    },
    {
      "commit": "e38f734add21d75d76dbcf7b214f4823131c1bae",
      "tree": "0af4079e63807778f9254f63a3d4f973c2b9474a",
      "parents": [
        "80955ae955d15ea5c11d55cd50032a5243a6dfd6",
        "0a46c21c21c1f1c9a65e29eaae243d0f240bbd6b"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 10:30:48 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 10:30:48 2024 -0800"
      },
      "message": "Merge tag \u0027staging-6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging\n\nPull staging driver updates from Greg KH:\n \"Here is the \"big\" set of staging driver changes for 6.8-rc1. It\u0027s not\n  really that big this release cycle, not much happened except for 186\n  patches of coding style cleanups. The majority was in the rtl8192e\n  driver, but there are other smaller changes in a few other staging\n  drivers, full details in the shortlog.\n\n  All of these have been in linux-next for a while with no reported\n  issues\"\n\n* tag \u0027staging-6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (186 commits)\n  Staging: rtl8192e: Rename variable OpMode\n  Staging: rtl8192e: Rename variable bIsAggregateFrame\n  Staging: rtl8192e: Rename function rtllib_EnableNetMonitorMode()\n  Staging: rtl8192e: Rename variable NumRxOkInPeriod\n  Staging: rtl8192e: Rename variable NumTxOkInPeriod\n  Staging: rtl8192e: Rename variable bUsed\n  staging: vme_user: print more detailed infomation when an error occurs\n  Staging: rtl8192e: Rename function rtllib_DisableNetMonitorMode()\n  Staging: rtl8192e: Rename variable bInitState\n  Staging: rtl8192e: Rename variable skb_waitQ\n  Staging: rtl8192e: Rename variable BasicRate\n  Staging: rtl8192e: Rename variable QueryRate\n  Staging: rtl8192e: Rename function rtllib_TURBO_Info()\n  Staging: rtl8192e: Rename function rtllib_WMM_Info()\n  Staging: rtl8192e: Rename function rtllib_MFIE_Grate()\n  Staging: rtl8192e: Rename function rtllib_MFIE_Brate()\n  Staging: rtl8192e: Fixup statement broken across 2 lines in rtllib_softmac_new_net()\n  Staging: rtl8192e: Fixup statement broken across 2 lines in rtllib_softmac_xmit()\n  Staging: rtl8192e: Fix function definition broken across multiple lines\n  Staging: rtl8192e: Fix statement broken across 2 lines in rtllib_rx_assoc_resp()\n  ...\n"
    },
    {
      "commit": "4349efc52b83af3851df7a4199567ad50b3d1f03",
      "tree": "2f8475b57657b0f5666266df5005622c9aa05200",
      "parents": [
        "9cfd3b502153810b66ac0ce47f1fba682228f2d2",
        "35ac085a94efe82d906d3a812612d432aa267cbe"
      ],
      "author": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Thu Jan 18 09:54:24 2024 -0800"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Thu Jan 18 09:54:24 2024 -0800"
      },
      "message": "Merge tag \u0027for-netdev\u0027 of https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf\n\nDaniel Borkmann says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\npull-request: bpf 2024-01-18\n\nWe\u0027ve added 10 non-merge commits during the last 5 day(s) which contain\na total of 12 files changed, 806 insertions(+), 51 deletions(-).\n\nThe main changes are:\n\n1) Fix an issue in bpf_iter_udp under backward progress which prevents\n   user space process from finishing iteration, from Martin KaFai Lau.\n\n2) Fix BPF verifier to reject variable offset alu on registers with a type\n   of PTR_TO_FLOW_KEYS to prevent oob access, from Hao Sun.\n\n3) Follow up fixes for kernel- and libbpf-side logic around handling\n   arg:ctx tagged arguments of BPF global subprogs, from Andrii Nakryiko.\n\n* tag \u0027for-netdev\u0027 of https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf:\n  libbpf: warn on unexpected __arg_ctx type when rewriting BTF\n  selftests/bpf: add tests confirming type logic in kernel for __arg_ctx\n  bpf: enforce types for __arg_ctx-tagged arguments in global subprogs\n  bpf: extract bpf_ctx_convert_map logic and make it more reusable\n  libbpf: feature-detect arg:ctx tag support in kernel\n  selftests/bpf: Add test for alu on PTR_TO_FLOW_KEYS\n  bpf: Reject variable offset alu on PTR_TO_FLOW_KEYS\n  selftests/bpf: Test udp and tcp iter batching\n  bpf: Avoid iter-\u003eoffset making backward progress in bpf_iter_udp\n  bpf: iter_udp: Retry with a larger batch size without going back to the previous bucket\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nLink: https://lore.kernel.org/r/20240118153936.11769-1-daniel@iogearbox.net\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "9cfd3b502153810b66ac0ce47f1fba682228f2d2",
      "tree": "543a1eb96fc0304c42bd29da7522002ed77ac786",
      "parents": [
        "2e7ef287f07c74985f1bf2858bedc62bd9ebf155"
      ],
      "author": {
        "name": "Tony Nguyen",
        "email": "anthony.l.nguyen@intel.com",
        "time": "Wed Jan 17 09:25:32 2024 -0800"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Thu Jan 18 09:52:52 2024 -0800"
      },
      "message": "i40e: Include types.h to some headers\n\nCommit 56df345917c0 (\"i40e: Remove circular header dependencies and fix\nheaders\") redistributed a number of includes from one large header file\nto the locations they were needed. In some environments, types.h is not\nincluded and causing compile issues. The driver should not rely on\nimplicit inclusion from other locations; explicitly include it to these\nfiles.\n\nSnippet of issue. Entire log can be seen through the Closes: link.\n\nIn file included from drivers/net/ethernet/intel/i40e/i40e_diag.h:7,\n                 from drivers/net/ethernet/intel/i40e/i40e_diag.c:4:\ndrivers/net/ethernet/intel/i40e/i40e_adminq_cmd.h:33:9: error: unknown type name \u0027__le16\u0027\n   33 |         __le16 flags;\n      |         ^~~~~~\ndrivers/net/ethernet/intel/i40e/i40e_adminq_cmd.h:34:9: error: unknown type name \u0027__le16\u0027\n   34 |         __le16 opcode;\n      |         ^~~~~~\n...\ndrivers/net/ethernet/intel/i40e/i40e_diag.h:22:9: error: unknown type name \u0027u32\u0027\n   22 |         u32 elements;   /* number of elements if array */\n      |         ^~~\ndrivers/net/ethernet/intel/i40e/i40e_diag.h:23:9: error: unknown type name \u0027u32\u0027\n   23 |         u32 stride;     /* bytes between each element */\n\nReported-by: Martin Zaharinov \u003cmicron10@gmail.com\u003e\nCloses: https://lore.kernel.org/netdev/21BBD62A-F874-4E42-B347-93087EEA8126@gmail.com/\nFixes: 56df345917c0 (\"i40e: Remove circular header dependencies and fix headers\")\nReviewed-by: Jesse Brandeburg \u003cjesse.brandeburg@intel.com\u003e\nReviewed-by: Simon Horman \u003chorms@kernel.org\u003e\nTested-by: Arpana Arland \u003carpanax.arland@intel.com\u003e (A Contingent worker at Intel)\nSigned-off-by: Tony Nguyen \u003canthony.l.nguyen@intel.com\u003e\nLink: https://lore.kernel.org/r/20240117172534.3555162-1-anthony.l.nguyen@intel.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "2e7ef287f07c74985f1bf2858bedc62bd9ebf155",
      "tree": "853355e1dc0476234df2656a4481241a539b4640",
      "parents": [
        "bc9291dea7eca74b4a24bbdc173d7fde99c78718"
      ],
      "author": {
        "name": "Nikita Zhandarovich",
        "email": "n.zhandarovich@fintech.ru",
        "time": "Wed Jan 17 09:21:02 2024 -0800"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Thu Jan 18 09:52:30 2024 -0800"
      },
      "message": "ipv6: mcast: fix data-race in ipv6_mc_down / mld_ifc_work\n\nidev-\u003emc_ifc_count can be written over without proper locking.\n\nOriginally found by syzbot [1], fix this issue by encapsulating calls\nto mld_ifc_stop_work() (and mld_gq_stop_work() for good measure) with\nmutex_lock() and mutex_unlock() accordingly as these functions\nshould only be called with mc_lock per their declarations.\n\n[1]\nBUG: KCSAN: data-race in ipv6_mc_down / mld_ifc_work\n\nwrite to 0xffff88813a80c832 of 1 bytes by task 3771 on cpu 0:\n mld_ifc_stop_work net/ipv6/mcast.c:1080 [inline]\n ipv6_mc_down+0x10a/0x280 net/ipv6/mcast.c:2725\n addrconf_ifdown+0xe32/0xf10 net/ipv6/addrconf.c:3949\n addrconf_notify+0x310/0x980\n notifier_call_chain kernel/notifier.c:93 [inline]\n raw_notifier_call_chain+0x6b/0x1c0 kernel/notifier.c:461\n __dev_notify_flags+0x205/0x3d0\n dev_change_flags+0xab/0xd0 net/core/dev.c:8685\n do_setlink+0x9f6/0x2430 net/core/rtnetlink.c:2916\n rtnl_group_changelink net/core/rtnetlink.c:3458 [inline]\n __rtnl_newlink net/core/rtnetlink.c:3717 [inline]\n rtnl_newlink+0xbb3/0x1670 net/core/rtnetlink.c:3754\n rtnetlink_rcv_msg+0x807/0x8c0 net/core/rtnetlink.c:6558\n netlink_rcv_skb+0x126/0x220 net/netlink/af_netlink.c:2545\n rtnetlink_rcv+0x1c/0x20 net/core/rtnetlink.c:6576\n netlink_unicast_kernel net/netlink/af_netlink.c:1342 [inline]\n netlink_unicast+0x589/0x650 net/netlink/af_netlink.c:1368\n netlink_sendmsg+0x66e/0x770 net/netlink/af_netlink.c:1910\n ...\n\nwrite to 0xffff88813a80c832 of 1 bytes by task 22 on cpu 1:\n mld_ifc_work+0x54c/0x7b0 net/ipv6/mcast.c:2653\n process_one_work kernel/workqueue.c:2627 [inline]\n process_scheduled_works+0x5b8/0xa30 kernel/workqueue.c:2700\n worker_thread+0x525/0x730 kernel/workqueue.c:2781\n ...\n\nFixes: 2d9a93b4902b (\"mld: convert from timer to delayed work\")\nReported-by: syzbot+a9400cabb1d784e49abf@syzkaller.appspotmail.com\nLink: https://lore.kernel.org/all/000000000000994e09060ebcdffb@google.com/\nSigned-off-by: Nikita Zhandarovich \u003cn.zhandarovich@fintech.ru\u003e\nAcked-by: Taehee Yoo \u003cap420073@gmail.com\u003e\nReviewed-by: Eric Dumazet \u003cedumazet@google.com\u003e\nReviewed-by: Hangbin Liu \u003cliuhangbin@gmail.com\u003e\nLink: https://lore.kernel.org/r/20240117172102.12001-1-n.zhandarovich@fintech.ru\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "80955ae955d15ea5c11d55cd50032a5243a6dfd6",
      "tree": "be97e881ed9a27b226edbf331d735d5c9a1f2123",
      "parents": [
        "296455ade1fdcf5f8f8c033201633b60946c589a",
        "e3977e0609a07d86406029fceea0fd40d7849368"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 09:48:40 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 18 09:48:40 2024 -0800"
      },
      "message": "Merge tag \u0027driver-core-6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core\n\nPull driver core updates from Greg KH:\n \"Here are the set of driver core and kernfs changes for 6.8-rc1.\n  Nothing major in here this release cycle, just lots of small cleanups\n  and some tweaks on kernfs that in the very end, got reverted and will\n  come back in a safer way next release cycle.\n\n  Included in here are:\n\n   - more driver core \u0027const\u0027 cleanups and fixes\n\n   - fw_devlink\u003drpm is now the default behavior\n\n   - kernfs tiny changes to remove some string functions\n\n   - cpu handling in the driver core is updated to work better on many\n     systems that add topologies and cpus after booting\n\n   - other minor changes and cleanups\n\n  All of the cpu handling patches have been acked by the respective\n  maintainers and are coming in here in one series. Everything has been\n  in linux-next for a while with no reported issues\"\n\n* tag \u0027driver-core-6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (51 commits)\n  Revert \"kernfs: convert kernfs_idr_lock to an irq safe raw spinlock\"\n  kernfs: convert kernfs_idr_lock to an irq safe raw spinlock\n  class: fix use-after-free in class_register()\n  PM: clk: make pm_clk_add_notifier() take a const pointer\n  EDAC: constantify the struct bus_type usage\n  kernfs: fix reference to renamed function\n  driver core: device.h: fix Excess kernel-doc description warning\n  driver core: class: fix Excess kernel-doc description warning\n  driver core: mark remaining local bus_type variables as const\n  driver core: container: make container_subsys const\n  driver core: bus: constantify subsys_register() calls\n  driver core: bus: make bus_sort_breadthfirst() take a const pointer\n  kernfs: d_obtain_alias(NULL) will do the right thing...\n  driver core: Better advertise dev_err_probe()\n  kernfs: Convert kernfs_path_from_node_locked() from strlcpy() to strscpy()\n  kernfs: Convert kernfs_name_locked() from strlcpy() to strscpy()\n  kernfs: Convert kernfs_walk_ns() from strlcpy() to strscpy()\n  initramfs: Expose retained initrd as sysfs file\n  fs/kernfs/dir: obey S_ISGID\n  kernel/cgroup: use kernfs_create_dir_ns()\n  ...\n"
    },
    {
      "commit": "bc9291dea7eca74b4a24bbdc173d7fde99c78718",
      "tree": "0d30dbd5706d37eb86b60a161c91c58a703b2343",
      "parents": [
        "f1172f3ee3a98754d95b968968920a7d03fdebcc",
        "b34f4de6d30cbaa8fed905a5080b6eace8c84dc7"
      ],
      "author": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Thu Jan 18 09:48:11 2024 -0800"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Thu Jan 18 09:48:11 2024 -0800"
      },
      "message": "Merge branch \u0027mlxsw-miscellaneous-fixes\u0027\n\nPetr Machata says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nmlxsw: Miscellaneous fixes\n\nThis patchset is a bric-a-brac of fixes for bugs impacting mlxsw.\n\n- Patches #1 and #2 fix issues in ACL handling error paths.\n- Patch #3 fixes stack corruption in ACL code that a recent FW update\n  has uncovered.\n\n- Patch #4 fixes an issue in handling of IPIP next hops.\n\n- Patch #5 fixes a typo in a the qos_pfc selftest\n- Patch #6 fixes the same selftest to work with 8-lane ports.\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nLink: https://lore.kernel.org/r/cover.1705502064.git.petrm@nvidia.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "b34f4de6d30cbaa8fed905a5080b6eace8c84dc7",
      "tree": "0d30dbd5706d37eb86b60a161c91c58a703b2343",
      "parents": [
        "40cc674bafd50fc728c4a73d7dc77728a0b86759"
      ],
      "author": {
        "name": "Amit Cohen",
        "email": "amcohen@nvidia.com",
        "time": "Wed Jan 17 16:04:21 2024 +0100"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Thu Jan 18 09:48:09 2024 -0800"
      },
      "message": "selftests: mlxsw: qos_pfc: Adjust the test to support 8 lanes\n\n\u0027qos_pfc\u0027 test checks PFC behavior. The idea is to limit the traffic\nusing a shaper somewhere in the flow of the packets. In this area, the\nbuffer is smaller than the buffer at the beginning of the flow, so it fills\nup until there is no more space left. The test configures there PFC\nwhich is supposed to notice that the headroom is filling up and send PFC\nXoff to indicate the transmitter to stop sending traffic for the priorities\nsharing this PG.\n\nThe Xon/Xoff threshold is auto-configured and always equal to\n2*(MTU rounded up to cell size). Even after sending the PFC Xoff packet,\ntraffic will keep arriving until the transmitter receives and processes\nthe PFC packet. This amount of traffic is known as the PFC delay allowance.\n\nCurrently the buffer for the delay traffic is configured as 100KB. The\nMTU in the test is 10KB, therefore the threshold for Xoff is about 20KB.\nThis allows 80KB extra to be stored in this buffer.\n\n8-lane ports use two buffers among which the configured buffer is split,\nthe Xoff threshold then applies to each buffer in parallel.\n\nThe test does not take into account the behavior of 8-lane ports, when the\nports are configured to 400Gbps with 8 lanes or 800Gbps with 8 lanes,\npackets are dropped and the test fails.\n\nCheck if the relevant ports use 8 lanes, in such case double the size of\nthe buffer, as the headroom is split half-half.\n\nCc: Shuah Khan \u003cshuah@kernel.org\u003e\nFixes: bfa804784e32 (\"selftests: mlxsw: Add a PFC test\")\nSigned-off-by: Amit Cohen \u003camcohen@nvidia.com\u003e\nReviewed-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: Petr Machata \u003cpetrm@nvidia.com\u003e\nAcked-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\nLink: https://lore.kernel.org/r/23ff11b7dff031eb04a41c0f5254a2b636cd8ebb.1705502064.git.petrm@nvidia.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "40cc674bafd50fc728c4a73d7dc77728a0b86759",
      "tree": "d662a11c892b44d94c5ac53351807f407e6db282",
      "parents": [
        "62bef63646c194e0f82b40304a0f2d060b28687b"
      ],
      "author": {
        "name": "Amit Cohen",
        "email": "amcohen@nvidia.com",
        "time": "Wed Jan 17 16:04:20 2024 +0100"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Thu Jan 18 09:48:09 2024 -0800"
      },
      "message": "selftests: mlxsw: qos_pfc: Remove wrong description\n\nIn the diagram of the topology, $swp3 and $swp4 are described as 1Gbps\nports. This is wrong information, the test does not configure such speed.\n\nCc: Shuah Khan \u003cshuah@kernel.org\u003e\nFixes: bfa804784e32 (\"selftests: mlxsw: Add a PFC test\")\nSigned-off-by: Amit Cohen \u003camcohen@nvidia.com\u003e\nReviewed-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: Petr Machata \u003cpetrm@nvidia.com\u003e\nAcked-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\nLink: https://lore.kernel.org/r/0087e2d416aff7e444d15f7c2958fc1d438dc27e.1705502064.git.petrm@nvidia.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "62bef63646c194e0f82b40304a0f2d060b28687b",
      "tree": "e0bc1eb9a17939e526c3e59fd350a3eb250194d5",
      "parents": [
        "483ae90d8f976f8339cf81066312e1329f2d3706"
      ],
      "author": {
        "name": "Petr Machata",
        "email": "petrm@nvidia.com",
        "time": "Wed Jan 17 16:04:19 2024 +0100"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Thu Jan 18 09:48:09 2024 -0800"
      },
      "message": "mlxsw: spectrum_router: Register netdevice notifier before nexthop\n\nIf there are IPIP nexthops at the time when the driver is loaded (or the\ndevlink instance reloaded), the driver looks up the corresponding IPIP\nentry. But IPIP entries are only created as a result of netdevice\nnotifications. Since the netdevice notifier is registered after the nexthop\nnotifier, mlxsw_sp_nexthop_type_init() never finds the IPIP entry,\nregisters the nexthop MLXSW_SP_NEXTHOP_TYPE_ETH, and fails to assign a CRIF\nto the nexthop. Later on when the CRIF is necessary, the WARN_ON in\nmlxsw_sp_nexthop_rif() triggers, causing the splat [1].\n\nIn order to fix the issue, reorder the netdevice notifier to be registered\nbefore the nexthop one.\n\n[1] (edited for clarity):\n\n    WARNING: CPU: 1 PID: 1364 at drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:3245 mlxsw_sp_nexthop_rif (drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:3246 (discriminator 1)) mlxsw_spectrum\n    Hardware name: Mellanox Technologies Ltd. MSN4410/VMOD0010, BIOS 5.11 01/06/2019\n    Call Trace:\n    ? mlxsw_sp_nexthop_rif (drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:3246 (discriminator 1)) mlxsw_spectrum\n    __mlxsw_sp_nexthop_eth_update (drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:3637) mlxsw_spectrum\n    mlxsw_sp_nexthop_update (drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:3679 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:3727) mlxsw_spectrum\n    mlxsw_sp_nexthop_group_update (drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:3757) mlxsw_spectrum\n    mlxsw_sp_nexthop_group_refresh (drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:4112) mlxsw_spectrum\n    mlxsw_sp_nexthop_obj_event (drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:5118 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:5191 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:5315 drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:5500) mlxsw_spectrum\n    nexthops_dump (net/ipv4/nexthop.c:217 net/ipv4/nexthop.c:440 net/ipv4/nexthop.c:3609)\n    register_nexthop_notifier (net/ipv4/nexthop.c:3624)\n    mlxsw_sp_router_init (drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c:11486) mlxsw_spectrum\n    mlxsw_sp_init (drivers/net/ethernet/mellanox/mlxsw/spectrum.c:3267) mlxsw_spectrum\n    __mlxsw_core_bus_device_register (drivers/net/ethernet/mellanox/mlxsw/core.c:2202) mlxsw_core\n    mlxsw_devlink_core_bus_device_reload_up (drivers/net/ethernet/mellanox/mlxsw/core.c:2265 drivers/net/ethernet/mellanox/mlxsw/core.c:1603) mlxsw_core\n    devlink_reload (net/devlink/dev.c:314 net/devlink/dev.c:475)\n    [...]\n\nFixes: 9464a3d68ea9 (\"mlxsw: spectrum_router: Track next hops at CRIFs\")\nReported-by: Maksym Yaremchuk \u003cmaksymy@nvidia.com\u003e\nSigned-off-by: Petr Machata \u003cpetrm@nvidia.com\u003e\nReviewed-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nAcked-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\nLink: https://lore.kernel.org/r/74edb8d45d004e8d8f5318eede6ccc3d786d8ba9.1705502064.git.petrm@nvidia.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "483ae90d8f976f8339cf81066312e1329f2d3706",
      "tree": "2e36e009360d198cef7bfec4a1e727b16daa6491",
      "parents": [
        "efeb7dfea8ee10cdec11b6b6ba4e405edbe75809"
      ],
      "author": {
        "name": "Ido Schimmel",
        "email": "idosch@nvidia.com",
        "time": "Wed Jan 17 16:04:18 2024 +0100"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Thu Jan 18 09:48:08 2024 -0800"
      },
      "message": "mlxsw: spectrum_acl_tcam: Fix stack corruption\n\nWhen tc filters are first added to a net device, the corresponding local\nport gets bound to an ACL group in the device. The group contains a list\nof ACLs. In turn, each ACL points to a different TCAM region where the\nfilters are stored. During forwarding, the ACLs are sequentially\nevaluated until a match is found.\n\nOne reason to place filters in different regions is when they are added\nwith decreasing priorities and in an alternating order so that two\nconsecutive filters can never fit in the same region because of their\nkey usage.\n\nIn Spectrum-2 and newer ASICs the firmware started to report that the\nmaximum number of ACLs in a group is more than 16, but the layout of the\nregister that configures ACL groups (PAGT) was not updated to account\nfor that. It is therefore possible to hit stack corruption [1] in the\nrare case where more than 16 ACLs in a group are required.\n\nFix by limiting the maximum ACL group size to the minimum between what\nthe firmware reports and the maximum ACLs that fit in the PAGT register.\n\nAdd a test case to make sure the machine does not crash when this\ncondition is hit.\n\n[1]\nKernel panic - not syncing: stack-protector: Kernel stack is corrupted in: mlxsw_sp_acl_tcam_group_update+0x116/0x120\n[...]\n dump_stack_lvl+0x36/0x50\n panic+0x305/0x330\n __stack_chk_fail+0x15/0x20\n mlxsw_sp_acl_tcam_group_update+0x116/0x120\n mlxsw_sp_acl_tcam_group_region_attach+0x69/0x110\n mlxsw_sp_acl_tcam_vchunk_get+0x492/0xa20\n mlxsw_sp_acl_tcam_ventry_add+0x25/0xe0\n mlxsw_sp_acl_rule_add+0x47/0x240\n mlxsw_sp_flower_replace+0x1a9/0x1d0\n tc_setup_cb_add+0xdc/0x1c0\n fl_hw_replace_filter+0x146/0x1f0\n fl_change+0xc17/0x1360\n tc_new_tfilter+0x472/0xb90\n rtnetlink_rcv_msg+0x313/0x3b0\n netlink_rcv_skb+0x58/0x100\n netlink_unicast+0x244/0x390\n netlink_sendmsg+0x1e4/0x440\n ____sys_sendmsg+0x164/0x260\n ___sys_sendmsg+0x9a/0xe0\n __sys_sendmsg+0x7a/0xc0\n do_syscall_64+0x40/0xe0\n entry_SYSCALL_64_after_hwframe+0x63/0x6b\n\nFixes: c3ab435466d5 (\"mlxsw: spectrum: Extend to support Spectrum-2 ASIC\")\nReported-by: Orel Hagag \u003corelh@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nReviewed-by: Amit Cohen \u003camcohen@nvidia.com\u003e\nSigned-off-by: Petr Machata \u003cpetrm@nvidia.com\u003e\nAcked-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\nLink: https://lore.kernel.org/r/2d91c89afba59c22587b444994ae419dbea8d876.1705502064.git.petrm@nvidia.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "efeb7dfea8ee10cdec11b6b6ba4e405edbe75809",
      "tree": "14223154b0e809d0dcc05f14784b84a52f55a9d1",
      "parents": [
        "6d6eeabcfaba2fcadf5443b575789ea606f9de83"
      ],
      "author": {
        "name": "Ido Schimmel",
        "email": "idosch@nvidia.com",
        "time": "Wed Jan 17 16:04:17 2024 +0100"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Thu Jan 18 09:48:08 2024 -0800"
      },
      "message": "mlxsw: spectrum_acl_tcam: Fix NULL pointer dereference in error path\n\nWhen calling mlxsw_sp_acl_tcam_region_destroy() from an error path after\nfailing to attach the region to an ACL group, we hit a NULL pointer\ndereference upon \u0027region-\u003egroup-\u003etcam\u0027 [1].\n\nFix by retrieving the \u0027tcam\u0027 pointer using mlxsw_sp_acl_to_tcam().\n\n[1]\nBUG: kernel NULL pointer dereference, address: 0000000000000000\n[...]\nRIP: 0010:mlxsw_sp_acl_tcam_region_destroy+0xa0/0xd0\n[...]\nCall Trace:\n mlxsw_sp_acl_tcam_vchunk_get+0x88b/0xa20\n mlxsw_sp_acl_tcam_ventry_add+0x25/0xe0\n mlxsw_sp_acl_rule_add+0x47/0x240\n mlxsw_sp_flower_replace+0x1a9/0x1d0\n tc_setup_cb_add+0xdc/0x1c0\n fl_hw_replace_filter+0x146/0x1f0\n fl_change+0xc17/0x1360\n tc_new_tfilter+0x472/0xb90\n rtnetlink_rcv_msg+0x313/0x3b0\n netlink_rcv_skb+0x58/0x100\n netlink_unicast+0x244/0x390\n netlink_sendmsg+0x1e4/0x440\n ____sys_sendmsg+0x164/0x260\n ___sys_sendmsg+0x9a/0xe0\n __sys_sendmsg+0x7a/0xc0\n do_syscall_64+0x40/0xe0\n entry_SYSCALL_64_after_hwframe+0x63/0x6b\n\nFixes: 22a677661f56 (\"mlxsw: spectrum: Introduce ACL core with simple TCAM implementation\")\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nReviewed-by: Amit Cohen \u003camcohen@nvidia.com\u003e\nReviewed-by: Jiri Pirko \u003cjiri@nvidia.com\u003e\nSigned-off-by: Petr Machata \u003cpetrm@nvidia.com\u003e\nAcked-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\nLink: https://lore.kernel.org/r/fb6a4542bbc9fcab5a523802d97059bffbca7126.1705502064.git.petrm@nvidia.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "6d6eeabcfaba2fcadf5443b575789ea606f9de83",
      "tree": "82d86353d2522cd410c19b0033f038f48efaf342",
      "parents": [
        "f1172f3ee3a98754d95b968968920a7d03fdebcc"
      ],
      "author": {
        "name": "Amit Cohen",
        "email": "amcohen@nvidia.com",
        "time": "Wed Jan 17 16:04:16 2024 +0100"
      },
      "committer": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Thu Jan 18 09:48:08 2024 -0800"
      },
      "message": "mlxsw: spectrum_acl_erp: Fix error flow of pool allocation failure\n\nLately, a bug was found when many TC filters are added - at some point,\nseveral bugs are printed to dmesg [1] and the switch is crashed with\nsegmentation fault.\n\nThe issue starts when gen_pool_free() fails because of unexpected\nbehavior - a try to free memory which is already freed, this leads to BUG()\ncall which crashes the switch and makes many other bugs.\n\nTrying to track down the unexpected behavior led to a bug in eRP code. The\nfunction mlxsw_sp_acl_erp_table_alloc() gets a pointer to the allocated\nindex, sets the value and returns an error code. When gen_pool_alloc()\nfails it returns address 0, we track it and return -ENOBUFS outside, BUT\nthe call for gen_pool_alloc() already override the index in erp_table\nstructure. This is a problem when such allocation is done as part of\ntable expansion. This is not a new table, which will not be used in case\nof allocation failure. We try to expand eRP table and override the\ncurrent index (non-zero) with zero. Then, it leads to an unexpected\nbehavior when address 0 is freed twice. Note that address 0 is valid in\nerp_table-\u003ebase_index and indeed other tables use it.\n\ngen_pool_alloc() fails in case that there is no space left in the\npre-allocated pool, in our case, the pool is limited to\nACL_MAX_ERPT_BANK_SIZE, which is read from hardware. When more than max\nerp entries are required, we exceed the limit and return an error, this\nerror leads to \"Failed to migrate vregion\" print.\n\nFix this by changing erp_table-\u003ebase_index only in case of a successful\nallocation.\n\nAdd a test case for such a scenario. Without this fix it causes\nsegmentation fault:\n\n$ TESTS\u003d\"max_erp_entries_test\" ./tc_flower.sh\n./tc_flower.sh: line 988:  1560 Segmentation fault      tc filter del dev $h2 ingress chain $i protocol ip pref $i handle $j flower \u0026\u003e/dev/null\n\n[1]:\nkernel BUG at lib/genalloc.c:508!\ninvalid opcode: 0000 [#1] PREEMPT SMP\nCPU: 6 PID: 3531 Comm: tc Not tainted 6.7.0-rc5-custom-ga6893f479f5e #1\nHardware name: Mellanox Technologies Ltd. MSN4700/VMOD0010, BIOS 5.11 07/12/2021\nRIP: 0010:gen_pool_free_owner+0xc9/0xe0\n...\nCall Trace:\n \u003cTASK\u003e\n __mlxsw_sp_acl_erp_table_other_dec+0x70/0xa0 [mlxsw_spectrum]\n mlxsw_sp_acl_erp_mask_destroy+0xf5/0x110 [mlxsw_spectrum]\n objagg_obj_root_destroy+0x18/0x80 [objagg]\n objagg_obj_destroy+0x12c/0x130 [objagg]\n mlxsw_sp_acl_erp_mask_put+0x37/0x50 [mlxsw_spectrum]\n mlxsw_sp_acl_ctcam_region_entry_remove+0x74/0xa0 [mlxsw_spectrum]\n mlxsw_sp_acl_ctcam_entry_del+0x1e/0x40 [mlxsw_spectrum]\n mlxsw_sp_acl_tcam_ventry_del+0x78/0xd0 [mlxsw_spectrum]\n mlxsw_sp_flower_destroy+0x4d/0x70 [mlxsw_spectrum]\n mlxsw_sp_flow_block_cb+0x73/0xb0 [mlxsw_spectrum]\n tc_setup_cb_destroy+0xc1/0x180\n fl_hw_destroy_filter+0x94/0xc0 [cls_flower]\n __fl_delete+0x1ac/0x1c0 [cls_flower]\n fl_destroy+0xc2/0x150 [cls_flower]\n tcf_proto_destroy+0x1a/0xa0\n...\nmlxsw_spectrum3 0000:07:00.0: Failed to migrate vregion\nmlxsw_spectrum3 0000:07:00.0: Failed to migrate vregion\n\nFixes: f465261aa105 (\"mlxsw: spectrum_acl: Implement common eRP core\")\nSigned-off-by: Amit Cohen \u003camcohen@nvidia.com\u003e\nSigned-off-by: Ido Schimmel \u003cidosch@nvidia.com\u003e\nSigned-off-by: Petr Machata \u003cpetrm@nvidia.com\u003e\nAcked-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\nLink: https://lore.kernel.org/r/4cfca254dfc0e5d283974801a24371c7b6db5989.1705502064.git.petrm@nvidia.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n"
    },
    {
      "commit": "b2e792ae883a0aa976d4176dfa7dc933263440ea",
      "tree": "f2d6445a95bf79d3def16daa4f482d6a7ac5c619",
      "parents": [
        "baa7d536077dcdfe2b70c476a8873d1745d3de0f"
      ],
      "author": {
        "name": "Christian Loehle",
        "email": "christian.loehle@arm.com",
        "time": "Thu Jan 18 09:29:56 2024 +0000"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@kernel.dk",
        "time": "Thu Jan 18 08:21:14 2024 -0700"
      },
      "message": "Documentation: block: ioprio: Update schedulers\n\nThis doc hasn\u0027t been touched in a while, in the meantime some\nnew io schedulers were added (e.g. all of mq), some with ioprio\nsupport.\n\nAlso reword the introduction to remove reference to CFQ and the\nlimitation that io priorities only work on reads, which is no longer\ntrue.\n\nSigned-off-by: Christian Loehle \u003cchristian.loehle@arm.com\u003e\nReviewed-by: Johannes Thumshirn \u003cjohannes.thumshirn@wdc.com\u003e\nLink: https://lore.kernel.org/r/a86cfdc8-016f-40f1-8b58-0cb15d2a792c@arm.com\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "baa7d536077dcdfe2b70c476a8873d1745d3de0f",
      "tree": "1e5d7c0416c8c363035e004195419c7b3d29b35b",
      "parents": [
        "49e60333d743ae32db3bdde2f93bc818482dd741"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Wed Jan 17 18:59:01 2024 +0100"
      },
      "committer": {
        "name": "Jens Axboe",
        "email": "axboe@kernel.dk",
        "time": "Thu Jan 18 08:20:52 2024 -0700"
      },
      "message": "loop: fix the the direct I/O support check when used on top of block devices\n\n__loop_update_dio only checks the alignment requirement for block backed\nfile systems, but misses them for the case where the loop device is\ncreated directly on top of another block device.  Due to this creating\na loop device with default option plus the direct I/O flag on a \u003e 512 byte\nsector size file system will lead to incorrect I/O being submitted to the\nlower block device and a lot of error from the lock layer.  This can\nbe seen with xfstests generic/563.\n\nFix the code in __loop_update_dio by factoring the alignment check into\na helper, and calling that also for the struct block_device of a block\ndevice inode.\n\nAlso remove the TODO comment talking about dynamically switching between\nbuffered and direct I/O, which is a would be a recipe for horrible\nperformance and occasional data loss.\n\nFixes: 2e5ab5f379f9 (\"block: loop: prepare for supporing direct IO\")\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nReviewed-by: Ming Lei \u003cming.lei@redhat.com\u003e\nLink: https://lore.kernel.org/r/20240117175901.871796-1-hch@lst.de\nSigned-off-by: Jens Axboe \u003caxboe@kernel.dk\u003e\n"
    },
    {
      "commit": "7a8e9cdf9405819105ae7405cd91e482bf574b01",
      "tree": "5542d38879349906caa82bf87d9ada79f4c58112",
      "parents": [
        "1057066009c4325bb1d8430c9274894d0860e7c3"
      ],
      "author": {
        "name": "Nathan Lynch",
        "email": "nathanl@linux.ibm.com",
        "time": "Tue Jan 16 08:09:25 2024 -0600"
      },
      "committer": {
        "name": "Steven Rostedt (Google)",
        "email": "rostedt@goodmis.org",
        "time": "Thu Jan 18 09:22:02 2024 -0500"
      },
      "message": "seq_buf: Make DECLARE_SEQ_BUF() usable\n\nUsing the address operator on the array doesn\u0027t work:\n\n./include/linux/seq_buf.h:27:27: error: initialization of ‘char *’\n  from incompatible pointer type ‘char (*)[128]’\n  [-Werror\u003dincompatible-pointer-types]\n   27 |                 .buffer \u003d \u0026__ ## NAME ## _buffer,       \\\n      |                           ^\n\nApart from fixing that, we can improve DECLARE_SEQ_BUF() by using a\ncompound literal to define the buffer array without attaching a name\nto it. This makes the macro a single statement, allowing constructs\nsuch as:\n\n  static DECLARE_SEQ_BUF(my_seq_buf, MYSB_SIZE);\n\nto work as intended.\n\nLink: https://lkml.kernel.org/r/20240116-declare-seq-buf-fix-v1-1-915db4692f32@linux.ibm.com\n\nCc: stable@vger.kernel.org\nAcked-by: Kees Cook \u003ckeescook@chromium.org\u003e\nFixes: dcc4e5728eea (\"seq_buf: Introduce DECLARE_SEQ_BUF and seq_buf_str()\")\nSigned-off-by: Nathan Lynch \u003cnathanl@linux.ibm.com\u003e\nSigned-off-by: Steven Rostedt (Google) \u003crostedt@goodmis.org\u003e\n"
    },
    {
      "commit": "f1172f3ee3a98754d95b968968920a7d03fdebcc",
      "tree": "e40db5b752fe300b634dc7d225fbd3c5974ba22d",
      "parents": [
        "dd2d40acdbb2b9e6bcddd5424b0e00c1760ecf26"
      ],
      "author": {
        "name": "Ludvig Pärsson",
        "email": "ludvig.parsson@axis.com",
        "time": "Wed Jan 17 13:03:14 2024 +0100"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Thu Jan 18 13:21:06 2024 +0100"
      },
      "message": "ethtool: netlink: Add missing ethnl_ops_begin/complete\n\nAccessing an ethernet device that is powered off or clock gated might\ncause the CPU to hang. Add ethnl_ops_begin/complete in\nethnl_set_features() to protect against this.\n\nFixes: 0980bfcd6954 (\"ethtool: set netdev features with FEATURES_SET request\")\nSigned-off-by: Ludvig Pärsson \u003cludvig.parsson@axis.com\u003e\nLink: https://lore.kernel.org/r/20240117-etht2-v2-1-1a96b6e8c650@axis.com\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "dd2d40acdbb2b9e6bcddd5424b0e00c1760ecf26",
      "tree": "958f15f5b2ab76c117e01841793ce2f6c1256f68",
      "parents": [
        "39369c9a6e090619a7b5eedb2212c99ac8a03890"
      ],
      "author": {
        "name": "Benjamin Poirier",
        "email": "bpoirier@nvidia.com",
        "time": "Tue Jan 16 10:49:26 2024 -0500"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Thu Jan 18 11:59:26 2024 +0100"
      },
      "message": "selftests: bonding: Add more missing config options\n\nAs a followup to commit 03fb8565c880 (\"selftests: bonding: add missing\nbuild configs\"), add more networking-specific config options which are\nneeded for bonding tests.\n\nFor testing, I used the minimal config generated by virtme-ng and I added\nthe options in the config file. All bonding tests passed.\n\nFixes: bbb774d921e2 (\"net: Add tests for bonding and team address list management\") # for ipv6\nFixes: 6cbe791c0f4e (\"kselftest: bonding: add num_grat_arp test\") # for tc options\nFixes: 222c94ec0ad4 (\"selftests: bonding: add tests for ether type changes\") # for nlmon\nSuggested-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\nSigned-off-by: Benjamin Poirier \u003cbpoirier@nvidia.com\u003e\nLink: https://lore.kernel.org/r/20240116154926.202164-1-bpoirier@nvidia.com\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "39369c9a6e090619a7b5eedb2212c99ac8a03890",
      "tree": "943b97f25920e1b8a18b9531c2463a77f624c7cd",
      "parents": [
        "ea937f77208323d35ffe2f8d8fc81b00118bfcda"
      ],
      "author": {
        "name": "Jakub Kicinski",
        "email": "kuba@kernel.org",
        "time": "Tue Jan 16 07:43:11 2024 -0800"
      },
      "committer": {
        "name": "Paolo Abeni",
        "email": "pabeni@redhat.com",
        "time": "Thu Jan 18 11:51:02 2024 +0100"
      },
      "message": "selftests: netdevsim: add a config file\n\nnetdevsim tests aren\u0027t very well integrated with kselftest,\nwhich has its advantages and disadvantages. But regardless\nof the intended integration - a config file to know what kernel\nto build is very useful, add one.\n\nFixes: fc4c93f145d7 (\"selftests: add basic netdevsim devlink flash testing\")\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\nLink: https://lore.kernel.org/r/20240116154311.1945801-1-kuba@kernel.org\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n"
    },
    {
      "commit": "35ac085a94efe82d906d3a812612d432aa267cbe",
      "tree": "f8a2ed263a3ea89d0307e293ebc57b795c281a86",
      "parents": [
        "33772ff3b887eb2f426ed66bcb1808837a40669c",
        "76ec90a996e3c707eb6772510afa36faeba2ecff"
      ],
      "author": {
        "name": "Alexei Starovoitov",
        "email": "ast@kernel.org",
        "time": "Wed Jan 17 20:20:06 2024 -0800"
      },
      "committer": {
        "name": "Alexei Starovoitov",
        "email": "ast@kernel.org",
        "time": "Wed Jan 17 20:20:06 2024 -0800"
      },
      "message": "Merge branch \u0027tighten-up-arg-ctx-type-enforcement\u0027\n\nAndrii Nakryiko says:\n\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nTighten up arg:ctx type enforcement\n\nFollow up fixes for kernel-side and libbpf-side logic around handling arg:ctx\n(__arg_ctx) tagged arguments of BPF global subprogs.\n\nPatch #1 adds libbpf feature detection of kernel-side __arg_ctx support to\navoid unnecessary rewriting BTF types. With stricter kernel-side type\nenforcement this is now mandatory to avoid problems with using `struct\nbpf_user_pt_regs_t` instead of actual typedef. For __arg_ctx tagged arguments\nverifier is now supporting either `bpf_user_pt_regs_t` typedef or resolves it\ndown to the actual struct (pt_regs/user_pt_regs/user_regs_struct), depending\non architecture), but for old kernels without __arg_ctx support it\u0027s more\nbackwards compatible for libbpf to use `struct bpf_user_pt_regs_t` rewrite\nwhich will work on wider range of kernels. So feature detection prevent libbpf\naccidentally breaking global subprogs on new kernels.\n\nWe also adjust selftests to do similar feature detection (much simpler, but\npotentially breaking due to kernel source code refactoring, which is fine for\nselftests), and skip tests expecting libbpf\u0027s BTF type rewrites.\n\nPatch #2 is preparatory refactoring for patch #3 which adds type enforcement\nfor arg:ctx tagged global subprog args. See the patch for specifics.\n\nPatch #4 adds many new cases to ensure type logic works as expected.\n\nFinally, patch #5 adds a relevant subset of kernel-side type checks to\n__arg_ctx cases that libbpf supports rewrite of. In libbpf\u0027s case, type\nviolations are reported as warnings and BTF rewrite is not performed, which\nwill eventually lead to BPF verifier complaining at program verification time.\n\nGood care was taken to avoid conflicts between bpf and bpf-next tree (which\nhas few follow up refactorings in the same code area). Once trees converge\nsome of the code will be moved around a bit (and some will be deleted), but\nwith no change to functionality or general shape of the code.\n\nv2-\u003ev3:\n  - support `bpf_user_pt_regs_t` typedef for KPROBE and PERF_EVENT (CI);\nv1-\u003ev2:\n  - add user_pt_regs and user_regs_struct support for PERF_EVENT (CI);\n  - drop FEAT_ARG_CTX_TAG enum leftover from patch #1;\n  - fix warning about default: without break in the switch (CI).\n\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\n\nLink: https://lore.kernel.org/r/20240118033143.3384355-1-andrii@kernel.org\nSigned-off-by: Alexei Starovoitov \u003cast@kernel.org\u003e\n"
    },
    {
      "commit": "76ec90a996e3c707eb6772510afa36faeba2ecff",
      "tree": "f8a2ed263a3ea89d0307e293ebc57b795c281a86",
      "parents": [
        "989410cde81959c4033dc287d79b42b6eb04f04f"
      ],
      "author": {
        "name": "Andrii Nakryiko",
        "email": "andrii@kernel.org",
        "time": "Wed Jan 17 19:31:43 2024 -0800"
      },
      "committer": {
        "name": "Alexei Starovoitov",
        "email": "ast@kernel.org",
        "time": "Wed Jan 17 20:20:06 2024 -0800"
      },
      "message": "libbpf: warn on unexpected __arg_ctx type when rewriting BTF\n\nOn kernel that don\u0027t support arg:ctx tag, before adjusting global\nsubprog BTF information to match kernel\u0027s expected canonical type names,\nmake sure that types used by user are meaningful, and if not, warn and\ndon\u0027t do BTF adjustments.\n\nThis is similar to checks that kernel performs, but narrower in scope,\nas only a small subset of BPF program types can be accommodated by\nlibbpf using canonical type names.\n\nLibbpf unconditionally allows `struct pt_regs *` for perf_event program\ntypes, unlike kernel, which supports that conditionally on architecture.\nThis is done to keep things simple and not cause unnecessary false\npositives. This seems like a minor and harmless deviation, which in\nreal-world programs will be caught by kernels with arg:ctx tag support\nanyways. So KISS principle.\n\nThis logic is hard to test (especially on latest kernels), so manual\ntesting was performed instead. Libbpf emitted the following warning for\nperf_event program with wrong context argument type:\n\n  libbpf: prog \u0027arg_tag_ctx_perf\u0027: subprog \u0027subprog_ctx_tag\u0027 arg#0 is expected to be of `struct bpf_perf_event_data *` type\n\nSigned-off-by: Andrii Nakryiko \u003candrii@kernel.org\u003e\nLink: https://lore.kernel.org/r/20240118033143.3384355-6-andrii@kernel.org\nSigned-off-by: Alexei Starovoitov \u003cast@kernel.org\u003e\n"
    },
    {
      "commit": "989410cde81959c4033dc287d79b42b6eb04f04f",
      "tree": "5cf0c298e829a66889b975c7f7fa02ef6c0db801",
      "parents": [
        "0ba971511d16603599f947459e59b435cc465b0d"
      ],
      "author": {
        "name": "Andrii Nakryiko",
        "email": "andrii@kernel.org",
        "time": "Wed Jan 17 19:31:42 2024 -0800"
      },
      "committer": {
        "name": "Alexei Starovoitov",
        "email": "ast@kernel.org",
        "time": "Wed Jan 17 20:20:06 2024 -0800"
      },
      "message": "selftests/bpf: add tests confirming type logic in kernel for __arg_ctx\n\nAdd a bunch of global subprogs across variety of program types to\nvalidate expected kernel type enforcement logic for __arg_ctx arguments.\n\nSigned-off-by: Andrii Nakryiko \u003candrii@kernel.org\u003e\nLink: https://lore.kernel.org/r/20240118033143.3384355-5-andrii@kernel.org\nSigned-off-by: Alexei Starovoitov \u003cast@kernel.org\u003e\n"
    },
    {
      "commit": "0ba971511d16603599f947459e59b435cc465b0d",
      "tree": "efdc21275d6199a7ed86c12e1829f8420c6b8295",
      "parents": [
        "66967a32d3b16ed447e76fed4d946bab52e43d86"
      ],
      "author": {
        "name": "Andrii Nakryiko",
        "email": "andrii@kernel.org",
        "time": "Wed Jan 17 19:31:41 2024 -0800"
      },
      "committer": {
        "name": "Alexei Starovoitov",
        "email": "ast@kernel.org",
        "time": "Wed Jan 17 20:20:06 2024 -0800"
      },
      "message": "bpf: enforce types for __arg_ctx-tagged arguments in global subprogs\n\nAdd enforcement of expected types for context arguments tagged with\narg:ctx (__arg_ctx) tag.\n\nFirst, any program type will accept generic `void *` context type when\ncombined with __arg_ctx tag.\n\nBesides accepting \"canonical\" struct names and `void *`, for a bunch of\nprogram types for which program context is actually a named struct, we\nallows a bunch of pragmatic exceptions to match real-world and expected\nusage:\n\n  - for both kprobes and perf_event we allow `bpf_user_pt_regs_t *` as\n    canonical context argument type, where `bpf_user_pt_regs_t` is a\n    *typedef*, not a struct;\n  - for kprobes, we also always accept `struct pt_regs *`, as that\u0027s what\n    actually is passed as a context to any kprobe program;\n  - for perf_event, we resolve typedefs (unless it\u0027s `bpf_user_pt_regs_t`)\n    down to actual struct type and accept `struct pt_regs *`, or\n    `struct user_pt_regs *`, or `struct user_regs_struct *`, depending\n    on the actual struct type kernel architecture points `bpf_user_pt_regs_t`\n    typedef to; otherwise, canonical `struct bpf_perf_event_data *` is\n    expected;\n  - for raw_tp/raw_tp.w programs, `u64/long *` are accepted, as that\u0027s\n    what\u0027s expected with BPF_PROG() usage; otherwise, canonical\n    `struct bpf_raw_tracepoint_args *` is expected;\n  - tp_btf supports both `struct bpf_raw_tracepoint_args *` and `u64 *`\n    formats, both are coded as expections as tp_btf is actually a TRACING\n    program type, which has no canonical context type;\n  - iterator programs accept `struct bpf_iter__xxx *` structs, currently\n    with no further iterator-type specific enforcement;\n  - fentry/fexit/fmod_ret/lsm/struct_ops all accept `u64 *`;\n  - classic tracepoint programs, as well as syscall and freplace\n    programs allow any user-provided type.\n\nIn all other cases kernel will enforce exact match of struct name to\nexpected canonical type. And if user-provided type doesn\u0027t match that\nexpectation, verifier will emit helpful message with expected type name.\n\nNote a bit unnatural way the check is done after processing all the\narguments. This is done to avoid conflict between bpf and bpf-next\ntrees. Once trees converge, a small follow up patch will place a simple\nbtf_validate_prog_ctx_type() check into a proper ARG_PTR_TO_CTX branch\n(which bpf-next tree patch refactored already), removing duplicated\narg:ctx detection logic.\n\nSuggested-by: Alexei Starovoitov \u003cast@kernel.org\u003e\nSigned-off-by: Andrii Nakryiko \u003candrii@kernel.org\u003e\nLink: https://lore.kernel.org/r/20240118033143.3384355-4-andrii@kernel.org\nSigned-off-by: Alexei Starovoitov \u003cast@kernel.org\u003e\n"
    },
    {
      "commit": "66967a32d3b16ed447e76fed4d946bab52e43d86",
      "tree": "cf12401fd7bc09c7a4b63ce9eadbe67ce63038b2",
      "parents": [
        "01b55f4f0cd6ad1a16eca6c43a3190005892ef91"
      ],
      "author": {
        "name": "Andrii Nakryiko",
        "email": "andrii@kernel.org",
        "time": "Wed Jan 17 19:31:40 2024 -0800"
      },
      "committer": {
        "name": "Alexei Starovoitov",
        "email": "ast@kernel.org",
        "time": "Wed Jan 17 20:20:05 2024 -0800"
      },
      "message": "bpf: extract bpf_ctx_convert_map logic and make it more reusable\n\nRefactor btf_get_prog_ctx_type() a bit to allow reuse of\nbpf_ctx_convert_map logic in more than one places. Simplify interface by\nreturning btf_type instead of btf_member (field reference in BTF).\n\nTo do the above we need to touch and start untangling\nbtf_translate_to_vmlinux() implementation. We do the bare minimum to\nnot regress anything for btf_translate_to_vmlinux(), but its\nimplementation is very questionable for what it claims to be doing.\nMapping kfunc argument types to kernel corresponding types conceptually\nis quite different from recognizing program context types. Fixing this\nis out of scope for this change though.\n\nSigned-off-by: Andrii Nakryiko \u003candrii@kernel.org\u003e\nLink: https://lore.kernel.org/r/20240118033143.3384355-3-andrii@kernel.org\nSigned-off-by: Alexei Starovoitov \u003cast@kernel.org\u003e\n"
    },
    {
      "commit": "01b55f4f0cd6ad1a16eca6c43a3190005892ef91",
      "tree": "379519a1519a94a55e0e0948c405959f1eadc984",
      "parents": [
        "33772ff3b887eb2f426ed66bcb1808837a40669c"
      ],
      "author": {
        "name": "Andrii Nakryiko",
        "email": "andrii@kernel.org",
        "time": "Wed Jan 17 19:31:39 2024 -0800"
      },
      "committer": {
        "name": "Alexei Starovoitov",
        "email": "ast@kernel.org",
        "time": "Wed Jan 17 20:20:05 2024 -0800"
      },
      "message": "libbpf: feature-detect arg:ctx tag support in kernel\n\nAdd feature detector of kernel-side arg:ctx (__arg_ctx) tag support. If\nthis is detected, libbpf will avoid doing any __arg_ctx-related BTF\nrewriting and checks in favor of letting kernel handle this completely.\n\ntest_global_funcs/ctx_arg_rewrite subtest is adjusted to do the same\nfeature detection (albeit in much simpler, though round-about and\ninefficient, way), and skip the tests. This is done to still be able to\nexecute this test on older kernels (like in libbpf CI).\n\nNote, BPF token series ([0]) does a major refactor and code moving of\nlibbpf-internal feature detection \"framework\", so to avoid unnecessary\nconflicts we keep newly added feature detection stand-alone with ad-hoc\nresult caching. Once things settle, there will be a small follow up to\nre-integrate everything back and move code into its final place in\nnewly-added (by BPF token series) features.c file.\n\n  [0] https://patchwork.kernel.org/project/netdevbpf/list/?series\u003d814209\u0026state\u003d*\n\nSigned-off-by: Andrii Nakryiko \u003candrii@kernel.org\u003e\nLink: https://lore.kernel.org/r/20240118033143.3384355-2-andrii@kernel.org\nSigned-off-by: Alexei Starovoitov \u003cast@kernel.org\u003e\n"
    },
    {
      "commit": "296455ade1fdcf5f8f8c033201633b60946c589a",
      "tree": "6058ed978b2787009b1c25c2c0ad5326e2e77130",
      "parents": [
        "e1aa9df440186af73a9e690244eb49cbc99f36ac",
        "5850edccec30325707f953bc088497b3b9041231"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 17 16:47:17 2024 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Jan 17 16:47:17 2024 -0800"
      },
      "message": "Merge tag \u0027char-misc-6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc\n\nPull char/misc and other driver updates from Greg KH:\n \"Here is the big set of char/misc and other driver subsystem changes\n  for 6.8-rc1.\n\n  Other than lots of binder driver changes (as you can see by the merge\n  conflicts) included in here are:\n\n   - lots of iio driver updates and additions\n\n   - spmi driver updates\n\n   - eeprom driver updates\n\n   - firmware driver updates\n\n   - ocxl driver updates\n\n   - mhi driver updates\n\n   - w1 driver updates\n\n   - nvmem driver updates\n\n   - coresight driver updates\n\n   - platform driver remove callback api changes\n\n   - tags.sh script updates\n\n   - bus_type constant marking cleanups\n\n   - lots of other small driver updates\n\n  All of these have been in linux-next for a while with no reported\n  issues\"\n\n* tag \u0027char-misc-6.8-rc1\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (341 commits)\n  android: removed duplicate linux/errno\n  uio: Fix use-after-free in uio_open\n  drivers: soc: xilinx: add check for platform\n  firmware: xilinx: Export function to use in other module\n  scripts/tags.sh: remove find_sources\n  scripts/tags.sh: use -n to test archinclude\n  scripts/tags.sh: add local annotation\n  scripts/tags.sh: use more portable -path instead of -wholename\n  scripts/tags.sh: Update comment (addition of gtags)\n  firmware: zynqmp: Convert to platform remove callback returning void\n  firmware: turris-mox-rwtm: Convert to platform remove callback returning void\n  firmware: stratix10-svc: Convert to platform remove callback returning void\n  firmware: stratix10-rsu: Convert to platform remove callback returning void\n  firmware: raspberrypi: Convert to platform remove callback returning void\n  firmware: qemu_fw_cfg: Convert to platform remove callback returning void\n  firmware: mtk-adsp-ipc: Convert to platform remove callback returning void\n  firmware: imx-dsp: Convert to platform remove callback returning void\n  firmware: coreboot_table: Convert to platform remove callback returning void\n  firmware: arm_scpi: Convert to platform remove callback returning void\n  firmware: arm_scmi: Convert to platform remove callback returning void\n  ...\n"
    }
  ],
  "next": "e1aa9df440186af73a9e690244eb49cbc99f36ac"
}
