Here's a partial list of some of the kernel commits I've written, contributed to, or signed off on.
1a9357f nfsd: avoid undefined signed overflow d751f74 NFS: Reduce stack use in encode_exchange_id() 10bd295 fix page number calculation bug for block layout decode buffer d36b7cf pnfs: clean up initiate_file_draining layout lookup 92407e7 nfs4: serialize layoutcommit 7542274 pnfsblock: fix writeback deadlock e6d05a7 pnfsblock: fix NULL pointer dereference 9b7eecd pnfs: recoalesce when ld read pagelist fails 8ce160c pnfs: recoalesce when ld write pagelist fails 1b0ae06 pnfs: make _set_lo_fail generic 760383f pnfsblock: add missing rpc_put_mount and path_put c122515 SUNRPC/NFS: make rpc pipe upcall generic fdc17ab pnfsblock: fix size of upcall message 516f2e2 pnfsblock: fix return code confusion 8e82fa8 nfsd: prettify NFSD_MAY_* flag definitions 71cdd40 pnfsblock: write_pagelist handle zero invalid extents 31e6306 pnfsblock: note written INVAL areas for layoutcommit 650e2d3 pnfsblock: bl_write_pagelist 9549ec0 pnfsblock: bl_read_pagelist b2be781 pnfsblock: cleanup_layoutcommit 90ace12 pnfsblock: encode_layoutcommit 9f37704 pnfsblock: merge rw extents c1c2a4c pnfsblock: add extent manipulation functions 6d742ba pnfsblock: bl_find_get_extent e9437cc pnfsblock: xdr decode pnfs_block_layout4 2f9fd18 pnfsblock: call and parse getdevicelist 03341d2 pnfsblock: merge extents a60d2eb pnfsblock: lseg alloc and free 025a70e pnfsblock: remove device operations fe0a9b7 pnfsblock: add device operations 9e69296 pnfsblock: basic extent code e9643fe pnfsblock: use pageio_ops api 155e752 pnfsblock: add blocklayout Kconfig option, Makefile, and stubs db29c08 pnfs: cleanup_layoutcommit dae100c pnfs: ask for layout_blksize and save it in nfs_server 738fd0f3 pnfs: add set-clear layoutdriver interface 7f11d8d pnfs: GETDEVICELIST 3557c6c pnfs: use lwb as layoutcommit length a9bae56 pnfs: let layoutcommit handle a list of lseg 9fa4075 pnfs: save layoutcommit cred at layout header init acff5880 pnfs: save layoutcommit lwb at layout header 3b6445a NFSv4.1: fix typo in filelayout_check_layout 9660439 svcrpc: take advantage of tcp autotuning 7f42183 nfsd: Revert "svcrpc: take advantage of tcp autotuning" 47a14ef svcrpc: take advantage of tcp autotuning
Here is a fix I'm using now to prevent Xorg from crashing on my x220.
commit 8db8e8a4919e0ab9e9d8aff0805b1a3cec0bf565 Author: Jim ReesJim ReesDate: Sat Nov 19 14:13:20 2016 -0500 fix for https://bugs.freedesktop.org/show_bug.cgi?id=96781 patch adapted from https://bugs.freedesktop.org/show_bug.cgi?id=97529 reverts ea0000f0d369a59c2086fe9c489e0a2a86e080ba diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index e26f889..a0cf80f 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -13869,8 +13869,6 @@ static void intel_atomic_commit_tail(struct drm_atomic_state *state) WARN_ON(ret); } - drm_atomic_helper_wait_for_dependencies(state); - if (intel_state->modeset) { memcpy(dev_priv->min_pixclk, intel_state->min_pixclk, sizeof(intel_state->min_pixclk)); @@ -13993,8 +13991,6 @@ static void intel_atomic_commit_tail(struct drm_atomic_state *state) if (intel_state->modeset && intel_can_enable_sagv(state)) intel_enable_sagv(dev_priv); - drm_atomic_helper_commit_hw_done(state); - if (intel_state->modeset) intel_display_power_put(dev_priv, POWER_DOMAIN_MODESET); @@ -14002,8 +13998,6 @@ static void intel_atomic_commit_tail(struct drm_atomic_state *state) drm_atomic_helper_cleanup_planes(dev, state); mutex_unlock(&dev->struct_mutex); - drm_atomic_helper_commit_cleanup_done(state); - drm_atomic_state_free(state); /* As one of the primary mmio accessors, KMS has a high likelihood @@ -14076,10 +14070,6 @@ static int intel_atomic_commit(struct drm_device *dev, return -EINVAL; } - ret = drm_atomic_helper_setup_commit(state, nonblock); - if (ret) - return ret; - INIT_WORK(&state->commit_work, intel_atomic_commit_work); ret = intel_atomic_prepare_commit(dev, state, nonblock);