diff options
| author | Jason Gunthorpe <jgg@mellanox.com> | 2018-08-16 13:08:18 -0600 |
|---|---|---|
| committer | Jason Gunthorpe <jgg@mellanox.com> | 2018-08-16 13:12:00 -0600 |
| commit | 89982f7ccee2fcd8fea7936b81eec6defbf0f131 (patch) | |
| tree | fc553c8d008d24595ad7de0ea0f3b56f656da27c /arch/s390/mm/pgalloc.c | |
| parent | a1ceeca679dccc492235f0f629d9e9f7b3d51ca8 (diff) | |
| parent | 94710cac0ef4ee177a63b5227664b38c95bbf703 (diff) | |
| download | kernel_replicant_linux-89982f7ccee2fcd8fea7936b81eec6defbf0f131.tar.gz kernel_replicant_linux-89982f7ccee2fcd8fea7936b81eec6defbf0f131.tar.bz2 kernel_replicant_linux-89982f7ccee2fcd8fea7936b81eec6defbf0f131.zip | |
Merge tag 'v4.18' into rdma.git for-next
Resolve merge conflicts from the -rc cycle against the rdma.git tree:
Conflicts:
drivers/infiniband/core/uverbs_cmd.c
- New ifs added to ib_uverbs_ex_create_flow in -rc and for-next
- Merge removal of file->ucontext in for-next with new code in -rc
drivers/infiniband/core/uverbs_main.c
- for-next removed code from ib_uverbs_write() that was modified
in for-rc
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Diffstat (limited to 'arch/s390/mm/pgalloc.c')
| -rw-r--r-- | arch/s390/mm/pgalloc.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/s390/mm/pgalloc.c b/arch/s390/mm/pgalloc.c index 84bd6329a88d..e3bd5627afef 100644 --- a/arch/s390/mm/pgalloc.c +++ b/arch/s390/mm/pgalloc.c @@ -252,6 +252,8 @@ void page_table_free(struct mm_struct *mm, unsigned long *table) spin_unlock_bh(&mm->context.lock); if (mask != 0) return; + } else { + atomic_xor_bits(&page->_refcount, 3U << 24); } pgtable_page_dtor(page); @@ -304,6 +306,8 @@ static void __tlb_remove_table(void *_table) break; /* fallthrough */ case 3: /* 4K page table with pgstes */ + if (mask & 3) + atomic_xor_bits(&page->_refcount, 3 << 24); pgtable_page_dtor(page); __free_page(page); break; |
