Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'akpm' (patches from Andrew)

Merge misc fixes from Andrew Morton:
"The gcc-4.4.4 workaround has actually been merged into a KVM tree by
Paolo but it is stuck in linux-next and mainline needs it"

* emailed patches from Andrew Morton <akpm@linux-foundation.org>:
arch/x86/kvm/mmu.c: work around gcc-4.4.4 bug
sched, numa: do not hint for NUMA balancing on VM_MIXEDMAP mappings
zsmalloc: fix a null pointer dereference in destroy_handle_cache()
mm: memcontrol: fix false-positive VM_BUG_ON() on -rt
checkpatch: fix "GLOBAL_INITIALISERS" test
zram: clear disk io accounting when reset zram device
memcg: do not call reclaim if !__GFP_WAIT
mm/memory_hotplug.c: set zone->wait_table to null after freeing it

+20 -15
+7 -7
arch/x86/kvm/mmu.c
··· 4215 4215 u64 entry, gentry, *spte; 4216 4216 int npte; 4217 4217 bool remote_flush, local_flush, zap_page; 4218 - union kvm_mmu_page_role mask = (union kvm_mmu_page_role) { 4219 - .cr0_wp = 1, 4220 - .cr4_pae = 1, 4221 - .nxe = 1, 4222 - .smep_andnot_wp = 1, 4223 - .smap_andnot_wp = 1, 4224 - }; 4218 + union kvm_mmu_page_role mask = { }; 4219 + 4220 + mask.cr0_wp = 1; 4221 + mask.cr4_pae = 1; 4222 + mask.nxe = 1; 4223 + mask.smep_andnot_wp = 1; 4224 + mask.smap_andnot_wp = 1; 4225 4225 4226 4226 /* 4227 4227 * If we don't have indirect shadow pages, it means no page is
+2
drivers/block/zram/zram_drv.c
··· 805 805 memset(&zram->stats, 0, sizeof(zram->stats)); 806 806 zram->disksize = 0; 807 807 zram->max_comp_streams = 1; 808 + 808 809 set_capacity(zram->disk, 0); 810 + part_stat_set_all(&zram->disk->part0, 0); 809 811 810 812 up_write(&zram->init_lock); 811 813 /* I/O operation under all of CPU are done so let's free */
+1 -1
kernel/sched/fair.c
··· 2181 2181 } 2182 2182 for (; vma; vma = vma->vm_next) { 2183 2183 if (!vma_migratable(vma) || !vma_policy_mof(vma) || 2184 - is_vm_hugetlb_page(vma)) { 2184 + is_vm_hugetlb_page(vma) || (vma->vm_flags & VM_MIXEDMAP)) { 2185 2185 continue; 2186 2186 } 2187 2187
+3 -3
mm/memcontrol.c
··· 2323 2323 css_get_many(&memcg->css, batch); 2324 2324 if (batch > nr_pages) 2325 2325 refill_stock(memcg, batch - nr_pages); 2326 + if (!(gfp_mask & __GFP_WAIT)) 2327 + goto done; 2326 2328 /* 2327 2329 * If the hierarchy is above the normal consumption range, 2328 2330 * make the charging task trim their excess contribution. ··· 5835 5833 if (!mem_cgroup_is_root(memcg)) 5836 5834 page_counter_uncharge(&memcg->memory, 1); 5837 5835 5838 - /* XXX: caller holds IRQ-safe mapping->tree_lock */ 5839 - VM_BUG_ON(!irqs_disabled()); 5840 - 5836 + /* Caller disabled preemption with mapping->tree_lock */ 5841 5837 mem_cgroup_charge_statistics(memcg, page, -1); 5842 5838 memcg_check_events(memcg, page); 5843 5839 }
+3 -1
mm/memory_hotplug.c
··· 1969 1969 * wait_table may be allocated from boot memory, 1970 1970 * here only free if it's allocated by vmalloc. 1971 1971 */ 1972 - if (is_vmalloc_addr(zone->wait_table)) 1972 + if (is_vmalloc_addr(zone->wait_table)) { 1973 1973 vfree(zone->wait_table); 1974 + zone->wait_table = NULL; 1975 + } 1974 1976 } 1975 1977 } 1976 1978 EXPORT_SYMBOL(try_offline_node);
+2 -1
mm/zsmalloc.c
··· 289 289 290 290 static void destroy_handle_cache(struct zs_pool *pool) 291 291 { 292 - kmem_cache_destroy(pool->handle_cachep); 292 + if (pool->handle_cachep) 293 + kmem_cache_destroy(pool->handle_cachep); 293 294 } 294 295 295 296 static unsigned long alloc_handle(struct zs_pool *pool)
+2 -2
scripts/checkpatch.pl
··· 3169 3169 } 3170 3170 3171 3171 # check for global initialisers. 3172 - if ($line =~ /^\+(\s*$Type\s*$Ident\s*(?:\s+$Modifier))*\s*=\s*(0|NULL|false)\s*;/) { 3172 + if ($line =~ /^\+$Type\s*$Ident(?:\s+$Modifier)*\s*=\s*(?:0|NULL|false)\s*;/) { 3173 3173 if (ERROR("GLOBAL_INITIALISERS", 3174 3174 "do not initialise globals to 0 or NULL\n" . 3175 3175 $herecurr) && 3176 3176 $fix) { 3177 - $fixed[$fixlinenr] =~ s/($Type\s*$Ident\s*(?:\s+$Modifier))*\s*=\s*(0|NULL|false)\s*;/$1;/; 3177 + $fixed[$fixlinenr] =~ s/(^.$Type\s*$Ident(?:\s+$Modifier)*)\s*=\s*(0|NULL|false)\s*;/$1;/; 3178 3178 } 3179 3179 } 3180 3180 # check for static initialisers.