diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2018-12-25 14:48:26 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2018-12-25 14:48:26 -0500 |
commit | 4971f090aa7f6ce5daa094ce4334f6618f93a7eb (patch) | |
tree | 45d75782b7dedbec76a3ab82d2769f7707668071 /mm | |
parent | c76cd634eb5bfd497617ea224a54a03b545c8c4d (diff) | |
parent | 2a3c83f5fe0770d13bbb71b23674886ff4111f44 (diff) |
Merge tag 'drm-next-2018-12-14' of git://anongit.freedesktop.org/drm/drm
Pull drm updates from Dave Airlie:
"Core:
- shared fencing staging removal
- drop transactional atomic helpers and move helpers to new location
- DP/MST atomic cleanup
- Leasing cleanups and drop EXPORT_SYMBOL
- Convert drivers to atomic helpers and generic fbdev.
- removed deprecated obj_ref/unref in favour of get/put
- Improve dumb callback documentation
- MODESET_LOCK_BEGIN/END helpers
panels:
- CDTech panels, Banana Pi Panel, DLC1010GIG,
- Olimex LCD-O-LinuXino, Samsung S6D16D0, Truly NT35597 WQXGA,
- Himax HX8357D, simulated RTSM AEMv8.
- GPD Win2 panel
- AUO G101EVN010
vgem:
- render node support
ttm:
- move global init out of drivers
- fix LRU handling for ghost objects
- Support for simultaneous submissions to multiple engines
scheduler:
- timeout/fault handling changes to help GPU recovery
- helpers for hw with preemption support
i915:
- Scaler/Watermark fixes
- DP MST + powerwell fixes
- PSR fixes
- Break long get/put shmemfs pages
- Icelake fixes
- Icelake DSI video mode enablement
- Engine workaround improvements
amdgpu:
- freesync support
- GPU reset enabled on CI, VI, SOC15 dGPUs
- ABM support in DC
- KFD support for vega12/polaris12
- SDMA paging queue on vega
- More amdkfd code sharing
- DCC scanout on GFX9
- DC kerneldoc
- Updated SMU firmware for GFX8 chips
- XGMI PSP + hive reset support
- GPU reset
- DC trace support
- Powerplay updates for newer Polaris
- Cursor plane update fast path
- kfd dma-buf support
virtio-gpu:
- add EDID support
vmwgfx:
- pageflip with damage support
nouveau:
- Initial Turing TU104/TU106 modesetting support
msm:
- a2xx gpu support for apq8060 and imx5
- a2xx gpummu support
- mdp4 display support for apq8060
- DPU fixes and cleanups
- enhanced profiling support
- debug object naming interface
- get_iova/page pinning decoupling
tegra:
- Tegra194 host1x, VIC and display support enabled
- Audio over HDMI for Tegra186 and Tegra194
exynos:
- DMA/IOMMU refactoring
- plane alpha + blend mode support
- Color format fixes for mixer driver
rcar-du:
- R8A7744 and R8A77470 support
- R8A77965 LVDS support
imx:
- fbdev emulation fix
- multi-tiled scalling fixes
- SPDX identifiers
rockchip
- dw_hdmi support
- dw-mipi-dsi + dual dsi support
- mailbox read size fix
qxl:
- fix cursor pinning
vc4:
- YUV support (scaling + cursor)
v3d:
- enable TFU (Texture Formatting Unit)
mali-dp:
- add support for linear tiled formats
sun4i:
- Display Engine 3 support
- H6 DE3 mixer 0 support
- H6 display engine support
- dw-hdmi support
- H6 HDMI phy support
- implicit fence waiting
- BGRX8888 support
meson:
- Overlay plane support
- implicit fence waiting
- HDMI 1.4 4k modes
bridge:
- i2c fixes for sii902x"
* tag 'drm-next-2018-12-14' of git://anongit.freedesktop.org/drm/drm: (1403 commits)
drm/amd/display: Add fast path for cursor plane updates
drm/amdgpu: Enable GPU recovery by default for CI
drm/amd/display: Fix duplicating scaling/underscan connector state
drm/amd/display: Fix unintialized max_bpc state values
Revert "drm/amd/display: Set RMX_ASPECT as default"
drm/amdgpu: Fix stub function name
drm/msm/dpu: Fix clock issue after bind failure
drm/msm/dpu: Clean up dpu_media_info.h static inline functions
drm/msm/dpu: Further cleanups for static inline functions
drm/msm/dpu: Cleanup the debugfs functions
drm/msm/dpu: Remove dpu_irq and unused functions
drm/msm: Make irq_postinstall optional
drm/msm/dpu: Cleanup callers of dpu_hw_blk_init
drm/msm/dpu: Remove unused functions
drm/msm/dpu: Remove dpu_crtc_is_enabled()
drm/msm/dpu: Remove dpu_crtc_get_mixer_height
drm/msm/dpu: Remove dpu_dbg
drm/msm: dpu: Remove crtc_lock
drm/msm: dpu: Remove vblank_requested flag from dpu_crtc
drm/msm: dpu: Separate crtc assignment from vblank enable
...
Diffstat (limited to 'mm')
-rw-r--r-- | mm/shmem.c | 2 | ||||
-rw-r--r-- | mm/vmscan.c | 22 |
2 files changed, 12 insertions, 12 deletions
diff --git a/mm/shmem.c b/mm/shmem.c index 5d07e0b1352f..375f3ac19bb8 100644 --- a/mm/shmem.c +++ b/mm/shmem.c | |||
@@ -758,7 +758,7 @@ void shmem_unlock_mapping(struct address_space *mapping) | |||
758 | break; | 758 | break; |
759 | index = indices[pvec.nr - 1] + 1; | 759 | index = indices[pvec.nr - 1] + 1; |
760 | pagevec_remove_exceptionals(&pvec); | 760 | pagevec_remove_exceptionals(&pvec); |
761 | check_move_unevictable_pages(pvec.pages, pvec.nr); | 761 | check_move_unevictable_pages(&pvec); |
762 | pagevec_release(&pvec); | 762 | pagevec_release(&pvec); |
763 | cond_resched(); | 763 | cond_resched(); |
764 | } | 764 | } |
diff --git a/mm/vmscan.c b/mm/vmscan.c index 62ac0c488624..24ab1f7394ab 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c | |||
@@ -46,6 +46,7 @@ | |||
46 | #include <linux/delayacct.h> | 46 | #include <linux/delayacct.h> |
47 | #include <linux/sysctl.h> | 47 | #include <linux/sysctl.h> |
48 | #include <linux/oom.h> | 48 | #include <linux/oom.h> |
49 | #include <linux/pagevec.h> | ||
49 | #include <linux/prefetch.h> | 50 | #include <linux/prefetch.h> |
50 | #include <linux/printk.h> | 51 | #include <linux/printk.h> |
51 | #include <linux/dax.h> | 52 | #include <linux/dax.h> |
@@ -4182,17 +4183,16 @@ int page_evictable(struct page *page) | |||
4182 | return ret; | 4183 | return ret; |
4183 | } | 4184 | } |
4184 | 4185 | ||
4185 | #ifdef CONFIG_SHMEM | ||
4186 | /** | 4186 | /** |
4187 | * check_move_unevictable_pages - check pages for evictability and move to appropriate zone lru list | 4187 | * check_move_unevictable_pages - check pages for evictability and move to |
4188 | * @pages: array of pages to check | 4188 | * appropriate zone lru list |
4189 | * @nr_pages: number of pages to check | 4189 | * @pvec: pagevec with lru pages to check |
4190 | * | 4190 | * |
4191 | * Checks pages for evictability and moves them to the appropriate lru list. | 4191 | * Checks pages for evictability, if an evictable page is in the unevictable |
4192 | * | 4192 | * lru list, moves it to the appropriate evictable lru list. This function |
4193 | * This function is only used for SysV IPC SHM_UNLOCK. | 4193 | * should be only used for lru pages. |
4194 | */ | 4194 | */ |
4195 | void check_move_unevictable_pages(struct page **pages, int nr_pages) | 4195 | void check_move_unevictable_pages(struct pagevec *pvec) |
4196 | { | 4196 | { |
4197 | struct lruvec *lruvec; | 4197 | struct lruvec *lruvec; |
4198 | struct pglist_data *pgdat = NULL; | 4198 | struct pglist_data *pgdat = NULL; |
@@ -4200,8 +4200,8 @@ void check_move_unevictable_pages(struct page **pages, int nr_pages) | |||
4200 | int pgrescued = 0; | 4200 | int pgrescued = 0; |
4201 | int i; | 4201 | int i; |
4202 | 4202 | ||
4203 | for (i = 0; i < nr_pages; i++) { | 4203 | for (i = 0; i < pvec->nr; i++) { |
4204 | struct page *page = pages[i]; | 4204 | struct page *page = pvec->pages[i]; |
4205 | struct pglist_data *pagepgdat = page_pgdat(page); | 4205 | struct pglist_data *pagepgdat = page_pgdat(page); |
4206 | 4206 | ||
4207 | pgscanned++; | 4207 | pgscanned++; |
@@ -4233,4 +4233,4 @@ void check_move_unevictable_pages(struct page **pages, int nr_pages) | |||
4233 | spin_unlock_irq(&pgdat->lru_lock); | 4233 | spin_unlock_irq(&pgdat->lru_lock); |
4234 | } | 4234 | } |
4235 | } | 4235 | } |
4236 | #endif /* CONFIG_SHMEM */ | 4236 | EXPORT_SYMBOL_GPL(check_move_unevictable_pages); |