Linux v4.8-rc1-88-g3b3ce01
This commit is contained in:
		
							parent
							
								
									744edb7493
								
							
						
					
					
						commit
						84f878999c
					
				| @ -1,44 +0,0 @@ | ||||
| From 6abb0cfdc1f6a42367a20ac2baf4099fc8af08b5 Mon Sep 17 00:00:00 2001 | ||||
| From: "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> | ||||
| Date: Wed, 10 Aug 2016 09:54:30 -0700 | ||||
| Subject: [PATCH] mm, rmap: fix false positive VM_BUG() in page_add_file_rmap() | ||||
| 
 | ||||
| PageTransCompound() doesn't distinguish THP from from any other type of | ||||
| compound pages. This can lead to false-positive VM_BUG_ON() in | ||||
| page_add_file_rmap() if called on compound page from a driver[1]. | ||||
| 
 | ||||
| I think we can exclude such cases by checking if the page belong to a | ||||
| mapping. | ||||
| 
 | ||||
| The VM_BUG_ON_PAGE() is downgraded to VM_WARN_ON_ONCE(). This path | ||||
| should not cause any harm to non-THP page, but good to know if we step | ||||
| on anything else. | ||||
| 
 | ||||
| [1] | ||||
| http://lkml.kernel.org/r/c711e067-0bff-a6cb-3c37-04dfe77d2db1@redhat.com | ||||
| 
 | ||||
| Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> | ||||
| Reported-by: Laura Abbott <labbott@redhat.com> | ||||
| ---
 | ||||
|  mm/rmap.c | 5 +++-- | ||||
|  1 file changed, 3 insertions(+), 2 deletions(-) | ||||
| 
 | ||||
| diff --git a/mm/rmap.c b/mm/rmap.c
 | ||||
| index 709bc83..d4f5606 100644
 | ||||
| --- a/mm/rmap.c
 | ||||
| +++ b/mm/rmap.c
 | ||||
| @@ -1284,8 +1284,9 @@ void page_add_file_rmap(struct page *page, bool compound)
 | ||||
|  		VM_BUG_ON_PAGE(!PageSwapBacked(page), page); | ||||
|  		__inc_node_page_state(page, NR_SHMEM_PMDMAPPED); | ||||
|  	} else { | ||||
| -		if (PageTransCompound(page)) {
 | ||||
| -			VM_BUG_ON_PAGE(!PageLocked(page), page);
 | ||||
| +		if (PageTransCompound(page) && page_mapping(page)) {
 | ||||
| +			VM_WARN_ON_ONCE(!PageLocked(page));
 | ||||
| +
 | ||||
|  			SetPageDoubleMap(compound_head(page)); | ||||
|  			if (PageMlocked(page)) | ||||
|  				clear_page_mlock(compound_head(page)); | ||||
| -- 
 | ||||
| 2.7.4 | ||||
| 
 | ||||
							
								
								
									
										2
									
								
								gitrev
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								gitrev
									
									
									
									
									
								
							| @ -1 +1 @@ | ||||
| 9512c47ec2e4f7e1f28ba66e09de536987a6057f | ||||
| 3b3ce01a57ad45d1ea4c63012d6f1e740d151d8d | ||||
|  | ||||
| @ -69,7 +69,7 @@ Summary: The Linux kernel | ||||
| # The rc snapshot level | ||||
| %define rcrev 1 | ||||
| # The git snapshot level | ||||
| %define gitrev 3 | ||||
| %define gitrev 4 | ||||
| # Set rpm version accordingly | ||||
| %define rpmversion 4.%{upstream_sublevel}.0 | ||||
| %endif | ||||
| @ -602,9 +602,6 @@ Patch665: netfilter-x_tables-deal-with-bogus-nextoffset-values.patch | ||||
| # https://lists.fedoraproject.org/archives/list/kernel@lists.fedoraproject.org/message/A4YCP7OGMX6JLFT5V44H57GOMAQLC3M4/ | ||||
| Patch839: drm-i915-Acquire-audio-powerwell-for-HD-Audio-regist.patch | ||||
| 
 | ||||
| #rhbz 1365686 | ||||
| Patch840: 0001-mm-rmap-fix-false-positive-VM_BUG-in-page_add_file_r.patch | ||||
| 
 | ||||
| #rhbz 1361414 | ||||
| Patch841: openstack_fix.patch | ||||
| 
 | ||||
| @ -2142,6 +2139,9 @@ fi | ||||
| # | ||||
| # | ||||
| %changelog | ||||
| * Thu Aug 11 2016 Justin M. Forbes <jforbes@fedoraproject.org> - 4.8.0-0.rc1.git4.1 | ||||
| - Linux v4.8-rc1-88-g3b3ce01 | ||||
| 
 | ||||
| * Thu Aug 11 2016 Laura Abbott <labbott@fedoraproject.org> | ||||
| - Fix for crash seen with open stack (rhbz 1361414) | ||||
| 
 | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user