diff --git a/debian/changelog b/debian/changelog index 635ba9847..1ac29eb1b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,67 @@ -linux (3.14.2-2) UNRELEASED; urgency=medium +linux (3.14.3-1) UNRELEASED; urgency=medium + + * New upstream stable update: + http://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.14.3 + - ASoC: pcm: Drop incorrect double/extra frees + - [s390] KVM: Optimize ucontrol path (regression in 3.11) + - [s390] bitops,atomic: add missing memory barriers + - [s390] fix control register update (regression in 3.14) + - mei: me: do not load the driver if the FW doesn't support MEI interface + - staging: comedi: usbdux: bug fix for accessing 'ao_chanlist' in private + data + - [x86] AVX-512: AVX-512 Feature Detection + - [x86] AVX-512: Enable AVX-512 States Context Switch + - [x86] ftrace: One more missing sync after fixup of function modification + failure + - [amd64] modify_ldt: Ban 16-bit segments on 64-bit kernels + - [armhf] PCI: imx6: Wait for retraining (regression in 3.14) + - [arm] PCI: mvebu: Fix potential issue in range parsing + (regression in 3.12) + - NFSv4: Fix a use-after-free problem in open() + - nfsd: revert v2 half of "nfsd: don't return high mode bits" + (regression in 3.14) + - nfsd4: buffer-length check for SUPPATTR_EXCLCREAT + - nfsd4: fix test_stateid error reply encoding + - nfsd: notify_change needs elevated write count + - nfsd: check passed socket's net matches NFSd superblock's one + - nfsd4: fix memory leak in nfsd4_encode_fattr() + - nfsd4: fix setclientid encode size + - NFSD: Traverse unconfirmed client through hash-table + - IB/ipath: Fix potential buffer overrun in sending diag packet routine + - IB/nes: Return an error on ib_copy_from_udata() failure instead of NULL + - IB/mthca: Return an error on ib_copy_to_udata() failure + - IB/ehca: Returns an error on ib_copy_to_udata() failure + - IB/core: Don't resolve passive side RoCE L2 address in CMA REQ handler + (regression in 3.14) + - ib_srpt: Use correct ib_sg_dma primitives + - SCSI: arcmsr: upper 32 of dma address lost + - iscsi-target: Fix ERL=2 ASYNC_EVENT connection pointer bug + - target/iblock: Fix double bioset_integrity_free bug + - target/tcm_fc: Fix use-after-free of ft_tpg + - [x86] efi: Correct EFI boot stub use of code32_start + - efi: Pass correct file handle to efi_file_{read,close} + - reiserfs: fix race in readdir + - media: v4l2-dv-timings: add module name, description, license + - media: em28xx-audio: fix user counting in snd_em28xx_capture_open() + - [armhf] usb: musb: fix PHY power on/off (regression in 3.14) + - mtip32xx: Unmap the DMA segments before completing the IO request + - mtip32xx: mtip_async_complete() bug fixes + - iser-target: Match FRMR descriptors to available session tags + - iser-target: Add missing se_cmd put for WRITE_PENDING in tx_comp_err + - [sh] fix format string bug in stack tracer + - mm: page_alloc: spill to remote nodes before waking kswapd + (regression in 3.12/3.13) + - mm: try_to_unmap_cluster() should lock_page() before mlocking + (CVE-2014-3122) (Closes: #747326) + - xattr: guard against simultaneous glibc header inclusion + - ocfs2: do not put bh when buffer_uptodate failed + - ocfs2: fix panic on kfree(xattr->name) + - vfs: smarter propagate_mnt() + - block: Fix for_each_bvec() + - ext4: FIBMAP ioctl causes BUG_ON due to handle EXT_MAX_BLOCKS + - ext4: note the error in ext4_end_bio() + - ext4: move ext4_update_i_disksize() into mpage_map_and_submit_extent() + - ext4: use i_size_read in ext4_unaligned_aio() [ Ben Hutchings ] * [or1k] Build a linux-libc-dev package (Closes: #746309) diff --git a/debian/config/defines b/debian/config/defines index fe41db0a3..54a831a1f 100644 --- a/debian/config/defines +++ b/debian/config/defines @@ -1,5 +1,8 @@ [abi] abiname: 1 +ignore-changes: +# Removed, apparently only needed by rdma_cm + ib_update_cm_av [base] arches: diff --git a/debian/patches/features/all/rt/mm-page_alloc-reduce-lock-sections-further.patch b/debian/patches/features/all/rt/mm-page_alloc-reduce-lock-sections-further.patch index 0273649c3..7a6575bf7 100644 --- a/debian/patches/features/all/rt/mm-page_alloc-reduce-lock-sections-further.patch +++ b/debian/patches/features/all/rt/mm-page_alloc-reduce-lock-sections-further.patch @@ -146,9 +146,9 @@ Signed-off-by: Thomas Gleixner local_unlock_irqrestore(pa_lock, flags); + free_pcppages_bulk(zone, to_drain, &dst); } - static bool gfp_thisnode_allocation(gfp_t gfp_mask) - { -@@ -1277,16 +1303,21 @@ static void drain_pages(unsigned int cpu + #endif + +@@ -1268,16 +1294,21 @@ static void drain_pages(unsigned int cpu for_each_populated_zone(zone) { struct per_cpu_pageset *pset; struct per_cpu_pages *pcp; @@ -172,7 +172,7 @@ Signed-off-by: Thomas Gleixner } } -@@ -1425,8 +1456,13 @@ void free_hot_cold_page(struct page *pag +@@ -1416,8 +1447,13 @@ void free_hot_cold_page(struct page *pag pcp->count++; if (pcp->count >= pcp->high) { unsigned long batch = ACCESS_ONCE(pcp->batch); diff --git a/debian/patches/features/all/rt/mm-page_alloc-rt-friendly-per-cpu-pages.patch b/debian/patches/features/all/rt/mm-page_alloc-rt-friendly-per-cpu-pages.patch index 3cce939d7..5292915de 100644 --- a/debian/patches/features/all/rt/mm-page_alloc-rt-friendly-per-cpu-pages.patch +++ b/debian/patches/features/all/rt/mm-page_alloc-rt-friendly-per-cpu-pages.patch @@ -77,9 +77,9 @@ Signed-off-by: Thomas Gleixner - local_irq_restore(flags); + local_unlock_irqrestore(pa_lock, flags); } - static bool gfp_thisnode_allocation(gfp_t gfp_mask) - { -@@ -1265,7 +1278,7 @@ static void drain_pages(unsigned int cpu + #endif + +@@ -1256,7 +1269,7 @@ static void drain_pages(unsigned int cpu struct per_cpu_pageset *pset; struct per_cpu_pages *pcp; @@ -88,7 +88,7 @@ Signed-off-by: Thomas Gleixner pset = per_cpu_ptr(zone->pageset, cpu); pcp = &pset->pcp; -@@ -1273,7 +1286,7 @@ static void drain_pages(unsigned int cpu +@@ -1264,7 +1277,7 @@ static void drain_pages(unsigned int cpu free_pcppages_bulk(zone, pcp->count, pcp); pcp->count = 0; } @@ -97,7 +97,7 @@ Signed-off-by: Thomas Gleixner } } -@@ -1326,7 +1339,12 @@ void drain_all_pages(void) +@@ -1317,7 +1330,12 @@ void drain_all_pages(void) else cpumask_clear_cpu(cpu, &cpus_with_pcps); } @@ -110,7 +110,7 @@ Signed-off-by: Thomas Gleixner } #ifdef CONFIG_HIBERNATION -@@ -1381,7 +1399,7 @@ void free_hot_cold_page(struct page *pag +@@ -1372,7 +1390,7 @@ void free_hot_cold_page(struct page *pag migratetype = get_pageblock_migratetype(page); set_freepage_migratetype(page, migratetype); @@ -119,7 +119,7 @@ Signed-off-by: Thomas Gleixner __count_vm_event(PGFREE); /* -@@ -1412,7 +1430,7 @@ void free_hot_cold_page(struct page *pag +@@ -1403,7 +1421,7 @@ void free_hot_cold_page(struct page *pag } out: @@ -128,7 +128,7 @@ Signed-off-by: Thomas Gleixner } /* -@@ -1542,7 +1560,7 @@ struct page *buffered_rmqueue(struct zon +@@ -1533,7 +1551,7 @@ again: struct per_cpu_pages *pcp; struct list_head *list; @@ -137,7 +137,7 @@ Signed-off-by: Thomas Gleixner pcp = &this_cpu_ptr(zone->pageset)->pcp; list = &pcp->lists[migratetype]; if (list_empty(list)) { -@@ -1574,13 +1592,15 @@ struct page *buffered_rmqueue(struct zon +@@ -1565,20 +1583,22 @@ again: */ WARN_ON_ONCE(order > 1); } @@ -155,8 +155,7 @@ Signed-off-by: Thomas Gleixner + spin_unlock(&zone->lock); } - /* -@@ -1592,7 +1612,7 @@ struct page *buffered_rmqueue(struct zon + __mod_zone_page_state(zone, NR_ALLOC_BATCH, -(1 << order)); __count_zone_vm_events(PGALLOC, zone, 1 << order); zone_statistics(preferred_zone, zone, gfp_flags); @@ -165,7 +164,7 @@ Signed-off-by: Thomas Gleixner VM_BUG_ON_PAGE(bad_range(zone, page), page); if (prep_new_page(page, order, gfp_flags)) -@@ -1600,7 +1620,7 @@ struct page *buffered_rmqueue(struct zon +@@ -1586,7 +1606,7 @@ again: return page; failed: @@ -174,7 +173,7 @@ Signed-off-by: Thomas Gleixner return NULL; } -@@ -5517,6 +5537,7 @@ static int page_alloc_cpu_notify(struct +@@ -5518,6 +5538,7 @@ static int page_alloc_cpu_notify(struct void __init page_alloc_init(void) { hotcpu_notifier(page_alloc_cpu_notify, 0); @@ -182,7 +181,7 @@ Signed-off-by: Thomas Gleixner } /* -@@ -6385,7 +6406,7 @@ void zone_pcp_reset(struct zone *zone) +@@ -6386,7 +6407,7 @@ void zone_pcp_reset(struct zone *zone) struct per_cpu_pageset *pset; /* avoid races with drain_pages() */ @@ -191,7 +190,7 @@ Signed-off-by: Thomas Gleixner if (zone->pageset != &boot_pageset) { for_each_online_cpu(cpu) { pset = per_cpu_ptr(zone->pageset, cpu); -@@ -6394,7 +6415,7 @@ void zone_pcp_reset(struct zone *zone) +@@ -6395,7 +6416,7 @@ void zone_pcp_reset(struct zone *zone) free_percpu(zone->pageset); zone->pageset = &boot_pageset; }