Davidlohr Bueso
f808c13fd3
lib/interval_tree: fast overlap detection
...
Allow interval trees to quickly check for overlaps to avoid unnecesary
tree lookups in interval_tree_iter_first().
As of this patch, all interval tree flavors will require using a
'rb_root_cached' such that we can have the leftmost node easily
available. While most users will make use of this feature, those with
special functions (in addition to the generic insert, delete, search
calls) will avoid using the cached option as they can do funky things
with insertions -- for example, vma_interval_tree_insert_after().
[jglisse@redhat.com: fix deadlock from typo vm_lock_anon_vma()]
Link: http://lkml.kernel.org/r/20170808225719.20723-1-jglisse@redhat.com
Link: http://lkml.kernel.org/r/20170719014603.19029-12-dave@stgolabs.net
Signed-off-by: Davidlohr Bueso <dbueso@suse.de>
Signed-off-by: Jérôme Glisse <jglisse@redhat.com>
Acked-by: Christian König <christian.koenig@amd.com>
Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Acked-by: Doug Ledford <dledford@redhat.com>
Acked-by: Michael S. Tsirkin <mst@redhat.com>
Cc: David Airlie <airlied@linux.ie>
Cc: Jason Wang <jasowang@redhat.com>
Cc: Christian Benvenuti <benve@cisco.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-09-08 18:26:49 -07:00
..
bridge
Merge airlied/drm-next into drm-misc-next
2017-07-26 13:43:33 +02:00
i2c
tinydrm
drm/tinydrm: Generalize tinydrm_xrgb8888_to_gray8()
2017-08-09 17:55:50 +02:00
ttm
drm/ttm: make ttm_mem_type_manager_func debug more useful
2017-08-17 15:45:59 -04:00
ati_pcigart.h
drm_agpsupport.h
drm_atomic.h
drm: Nuke drm_atomic_legacy_backoff
2017-08-08 14:49:29 +02:00
drm_atomic_helper.h
drm: Nuke drm_atomic_helper_connector_dpms
2017-08-08 14:48:48 +02:00
drm_auth.h
drm: Move drm_lock_data out of drmP.h
2017-03-09 16:18:02 +01:00
drm_blend.h
drm: Add DRM_MODE_ROTATE_ and DRM_MODE_REFLECT_ to UAPI
2017-05-22 09:49:48 +02:00
drm_bridge.h
drm/bridge: Add a devm_ allocator for panel bridge.
2017-07-26 12:19:47 -07:00
drm_cache.h
drm: Move drm_clflush prototypes to drm_cache header file
2017-01-10 11:17:01 +01:00
drm_color_mgmt.h
drm: drm_color_mgmt.h needs struct drm_crtc declaration
2017-05-02 10:30:23 +02:00
drm_connector.h
drm: Handle properties in the core for atomic drivers
2017-08-08 14:45:09 +02:00
drm_crtc.h
drm: Handle properties in the core for atomic drivers
2017-08-08 14:45:09 +02:00
drm_crtc_helper.h
drm/atomic: Acquire connection_mutex lock in drm_helper_probe_single_connector_modes, v4.
2017-04-06 21:29:23 +02:00
drm_debugfs.h
drm/debugfs: Add kerneldoc
2017-03-24 09:36:06 +01:00
drm_debugfs_crc.h
drm_device.h
drm: Extract drm_device.h
2017-08-11 10:47:17 +02:00
drm_displayid.h
drm_dp_dual_mode_helper.h
drm_dp_helper.h
Linux 4.12-rc5
2017-06-16 13:58:27 +10:00
drm_dp_mst_helper.h
drm/atomic: Make private objs proper objects
2017-07-13 19:28:43 +03:00
drm_drv.h
drm: Document device unplug infrastructure
2017-08-11 10:48:03 +02:00
drm_edid.h
drm/edid: parse ycbcr 420 deep color information
2017-07-14 21:23:54 +03:00
drm_encoder.h
drm/doc: Fix typos for early_unregister doc
2017-01-26 10:49:09 +01:00
drm_encoder_slave.h
drm_fb_cma_helper.h
drm: Convert CMA fbdev console suspend helpers to use bool
2017-06-20 16:23:40 +02:00
drm_fb_helper.h
drm: remove unused and redundant callbacks
2017-08-07 11:20:36 +02:00
drm_file.h
drm: introduce sync objects (v4)
2017-06-14 12:10:22 +10:00
drm_fixed.h
drm_flip_work.h
drm/kms-helpers: Use recommened kerneldoc for struct member refs
2017-01-25 16:18:57 +01:00
drm_fourcc.h
drm: Add mode_config .get_format_info() hook
2017-03-22 19:45:00 +02:00
drm_framebuffer.h
drm: Add GEM backed framebuffer library
2017-08-16 21:32:23 +02:00
drm_gem.h
drm/gem: Add drm_gem_dumb_map_offset()
2017-07-29 13:49:55 +02:00
drm_gem_cma_helper.h
drm/gem-cma-helper: Remove drm_gem_cma_dumb_map_offset()
2017-08-16 20:21:24 +02:00
drm_gem_framebuffer_helper.h
drm: Add GEM backed framebuffer library
2017-08-16 21:32:23 +02:00
drm_global.h
drm: drop extern from function decls
2017-03-24 09:36:06 +01:00
drm_hashtab.h
drm: drop extern from function decls
2017-03-24 09:36:06 +01:00
drm_ioctl.h
new helper: drm_ioctl_kernel()
2017-05-27 15:39:28 -04:00
drm_irq.h
drm: Extract drm_vblank.[hc]
2017-06-01 08:02:14 +02:00
drm_legacy.h
drm_mipi_dsi.h
drm_mm.h
lib/interval_tree: fast overlap detection
2017-09-08 18:26:49 -07:00
drm_mode_config.h
drm: Create a format/modifier blob
2017-08-01 17:50:06 +01:00
drm_mode_object.h
drm: Introduce drm_mode_object_{get,put}()
2017-02-28 16:14:55 +01:00
drm_modes.h
drm: add helper functions for YCBCR420 handling
2017-07-14 21:23:54 +03:00
drm_modeset_helper.h
drm_modeset_helper_vtables.h
drm: remove unused and redundant callbacks
2017-08-07 11:20:36 +02:00
drm_modeset_lock.h
drm: Remove drm_modeset_legacy_acquire_ctx and crtc->acquire_ctx
2017-04-05 09:26:45 +02:00
drm_of.h
drm: of: introduce drm_of_find_panel_or_bridge
2017-04-06 17:00:27 -04:00
drm_os_linux.h
drm: remove writeq/readq function definitions
2017-06-02 10:41:20 -04:00
drm_panel.h
drm: make drm_panel.h self-contained
2017-05-16 17:17:02 +02:00
drm_pci.h
drm/pci: Deprecate drm_pci_init/exit completely
2017-06-20 10:41:03 +02:00
drm_pciids.h
drm_plane.h
drm: Handle properties in the core for atomic drivers
2017-08-08 14:45:09 +02:00
drm_plane_helper.h
drm: Add acquire ctx parameter to ->plane_disable
2017-03-29 09:14:58 +02:00
drm_prime.h
drm: Extract drm_vblank.[hc]
2017-06-01 08:02:14 +02:00
drm_print.h
drm: drm_printer: add __printf validation
2017-02-26 21:43:08 +01:00
drm_property.h
drm: rename, adjust and export drm_atomic_replace_property_blob
2017-07-14 15:53:06 +02:00
drm_rect.h
drm/doc: move printf helpers out of drmP.h
2017-05-31 09:59:41 +02:00
drm_scdc_helper.h
drm: Fix warning when building docs for scdc_helper
2017-07-31 14:24:14 +02:00
drm_simple_kms_helper.h
drm: Plumb modifiers through plane init
2017-08-01 17:50:06 +01:00
drm_syncobj.h
drm/syncobj: Add a callback mechanism for replace_fence (v3)
2017-08-29 06:26:42 +10:00
drm_sysfs.h
drm: Consolidate and document sysfs support
2017-04-04 20:47:54 +02:00
drm_vblank.h
drm/vblank: Unexport drm_vblank_cleanup
2017-06-28 12:51:13 +02:00
drm_vma_manager.h
drm: Extract drm_prime.h
2017-03-09 16:18:02 +01:00
drmP.h
drm: Document device unplug infrastructure
2017-08-11 10:48:03 +02:00
gma_drm.h
i915_component.h
i915_drm.h
i915_pciids.h
drm/i915/cfl: Add Coffee Lake PCI IDs for U Sku.
2017-06-09 11:36:29 -07:00
intel-gtt.h
drm/i915: Use fixed-sized types for stolen
2017-01-06 16:02:09 +00:00
intel_lpe_audio.h
ALSA: x86: Register multiple PCM devices for the LPE audio card
2017-05-03 16:24:00 +03:00