From 6ede30f9f0eaf80b745c58487764fb9a1793610d Mon Sep 17 00:00:00 2001 From: Ben Hutchings Date: Mon, 6 Apr 2015 16:54:31 +0000 Subject: [PATCH] Update to 3.16.7-ckt9 svn path=/dists/sid/linux/; revision=22470 --- debian/changelog | 169 +++++++++++++++++- ...tack-randomization-on-64-bit-systems.patch | 98 ---------- ...ative_backlight-quirk-for-dell-xps15.patch | 34 ---- ...ight-quirk-for-samsung-730u3e-740u3e.patch | 34 ---- ...ome-samsung-models-to-disable_native.patch | 52 ------ ...a-store-maximum-space-limit-in-bytes.patch | 107 +++++++++++ .../usb-avoid-abi-change-in-3.16.7-ckt8.patch | 21 +++ debian/patches/series | 6 +- 8 files changed, 298 insertions(+), 223 deletions(-) delete mode 100644 debian/patches/bugfix/all/aslr-fix-stack-randomization-on-64-bit-systems.patch delete mode 100644 debian/patches/bugfix/x86/acpi-video-add-disable_native_backlight-quirk-for-dell-xps15.patch delete mode 100644 debian/patches/bugfix/x86/acpi-video-add-disable_native_backlight-quirk-for-samsung-730u3e-740u3e.patch delete mode 100644 debian/patches/bugfix/x86/acpi-video-add-some-samsung-models-to-disable_native.patch create mode 100644 debian/patches/debian/revert-quota-store-maximum-space-limit-in-bytes.patch create mode 100644 debian/patches/debian/usb-avoid-abi-change-in-3.16.7-ckt8.patch diff --git a/debian/changelog b/debian/changelog index 28d5d27bc..790ddd142 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,170 @@ -linux (3.16.7-ckt7-2) UNRELEASED; urgency=medium +linux (3.16.7-ckt9-1) UNRELEASED; urgency=medium + + * New upstream stable update: + http://kernel.ubuntu.com/stable/ChangeLog-3.16.7-ckt8 + - usb: core: buffer: smallest buffer should start at ARCH_DMA_MINALIGN + - btrfs: fix leak of path in btrfs_find_item + - tpm_tis: verify interrupt during init + - xfs: ensure buffer types are set correctly + - xfs: inode unlink does not set AGI buffer type + - xfs: set buf types when converting extent formats + - xfs: set superblock buffer type correctly + - [s390*] KVM: avoid memory leaks if __inject_vm() fails + - samsung-laptop: Add use_native_backlight quirk, and enable it on some + models (regression in 3.14) + - staging: comedi: comedi_compat32.c: fix COMEDI_CMD copy back + - nfs: don't call blocking operations while !TASK_RUNNING + - cdc-acm: add sanity checks + - USB: fix use-after-free bug in usb_hcd_unlink_urb() + - iwlwifi: mvm: fix failure path when power_update fails in add_interface + - tty: Prevent untrappable signals from malicious program + - cpufreq: Set cpufreq_cpu_data to NULL before putting kobject + - nfs41: .init_read and .init_write can be called with valid pg_lseg + (regression in 3.15) + - mei: mask interrupt set bit on clean reset bit (regression in + 3.16.7-ckt5) + - [s390*] KVM: floating irqs: fix user triggerable endless loop + - cfq-iosched: handle failure of cfq group allocation + - tracing: Fix unmapping loop in tracing_mark_write + - fsnotify: fix handling of renames in audit + - blk-mq: fix double-free in error path + - NFSv4.1: Fix a kfree() of uninitialised pointers in + decode_cb_sequence_args + - mm/hugetlb: pmd_huge() returns true for non-present hugepage + - mm/hugetlb: take page table lock in follow_huge_pmd() + - mm/hugetlb: fix getting refcount 0 page in hugetlb_fault() + - mm/hugetlb: add migration/hwpoisoned entry check in + hugetlb_change_protection + - mm/hugetlb: add migration entry check in __unmap_hugepage_range + - iscsi-target: Drop problematic active_ts_list usage + - mm/memory.c: actually remap enough memory + - mm: hwpoison: drop lru_add_drain_all() in __soft_offline_page() + (regression in 3.11) + - jffs2: fix handling of corrupted summary length + - dm mirror: do not degrade the mirror on discard error + - dm io: reject unsupported DISCARD requests with EOPNOTSUPP + - NFS: struct nfs_commit_info.lock must always point to inode->i_lock + (regression in 3.16.4) + - target: Add missing WRITE_SAME end-of-device sanity check + - target: Check for LBA + sectors wrap-around in sbc_parse_cdb + - Btrfs: fix fsync data loss after adding hard link to inode + - sg: fix read() error reporting + - IB/qib: Do not write EEPROM + - [amd64] EDAC, amd64_edac: Prevent OOPS with >16 memory controllers + (regression in 3.11) + - md/raid5: Fix livelock when array is both resyncing and degraded. + - locking/rtmutex: Avoid a NULL pointer dereference on deadlock + (regression in 3.16) + - time: adjtimex: Validate the ADJ_FREQUENCY values + - ntp: Fixup adjtimex freq validation on 32-bit systems + - dm: fix a race condition in dm_get_md + - dm snapshot: fix a possible invalid memory access on unload + - libceph: fix double __remove_osd() problem + - blk-throttle: check stats_cpu before reading it from sysfs + - debugfs: leave freeing a symlink body until inode eviction + - procfs: fix race between symlink removals and traversals + - autofs4 copy_dev_ioctl(): keep the value of ->size we'd used for + allocation + - clk-gate: fix bit # check in clk_register_gate() (regression in 3.11) + - [powerpc*] kernel: Avoid memory corruption at early stage + (regression in 3.14) + - GFS2: Fix crash during ACL deletion in acl max entry check in + gfs2_set_acl() (regression in 3.14) + - net: llc: use correct size for sysctl timeout entries (CVE-2015-2041) + - net: rds: use correct size for max unacked packets and bytes + (CVE-2015-2042) + - HID: i2c-hid: Limit reads to wMaxInputLength bytes for input events + (regression in 3.16.7-ckt4) + - net: sctp: fix race for one-to-many sockets in sendmsg's auto associate + - ipv6: mld: fix add_grhead skb_over_panic for devs with large MTUs + - IB/core: When marshaling ucma path from user-space, clear unused fields + (regression in 3.14) + - IB/core: Fix deadlock on uverbs modify_qp error flow (regression in 3.14) + - IB/mlx4: Fix wrong usage of IPv4 protocol for multicast attach/detach + (regression in 3.14) + - IB/iser: Use correct dma direction when unmapping SGs + (regression in 3.15) + - staging: comedi: cb_pcidas64: fix incorrect AI range code handling + - target: Fix R_HOLDER bit usage for AllRegistrants + - target: Avoid dropping AllRegistrants reservation during unregister + - target: Allow AllRegistrants to re-RESERVE existing reservation + - target: Allow Write Exclusive non-reservation holders to READ + - vhost/scsi: potential memory corruption + - mm: softdirty: unmapped addresses between VMAs are clean + - proc/pagemap: walk page tables under pte lock + http://kernel.ubuntu.com/stable/ChangeLog-3.16.7-ckt9 + - netfilter: nft_compat: fix module refcount underflow + - netfilter: xt_socket: fix a stack corruption bug + - ipvs: add missing ip_vs_pe_put in sync code + - flowcache: Fix kernel panic in flow_cache_flush_task (regression in 3.15) + - tcp: make sure skb is not shared before using skb_get() + (regression in 3.16) + - gen_stats.c: Duplicate xstats buffer for later use + - ematch: Fix auto-loading of ematch modules. + - openvswitch: Fix net exit. + - net: reject creation of netdev names with colons + - macvtap: make sure neighbour code can push ethernet header + - udp: only allow UFO for packets from SOCK_DGRAM sockets + - gpiolib: of: allow of_gpiochip_find_and_xlate to find more than one chip + per node (regression in 3.16.7-ckt6) + - [x86] drm/i915: Check obj->vma_list under the struct_mutex + (regression in 3.15) + - ALSA: hda - Disable runtime PM for Panther Point again + (regression in 3.14) + - nilfs2: fix potential memory overrun on inode + - [armhf] usb: dwc3: dwc3-omap: Fix disable IRQ + - [i386] KVM: emulate: fix CMPXCHG8B on 32-bit hosts + - xhci: Allocate correct amount of scratchpad buffers + - USB: usbfs: don't leak kernel data in siginfo + - efi/libstub: Fix boundary checking in efi_high_alloc() + - USB: serial: fix potential use-after-free after failed probe + - USB: serial: fix tty-device error handling at probe + - staging: comedi: adv_pci1710: fix AI INSN_READ for non-zero channel + - mei: make device disabled on stop unconditionally + - NFSv4: Don't call put_rpccred() under the rcu_read_lock() + - btrfs: fix lost return value due to variable shadowing + - eCryptfs: don't pass fs-specific ioctl commands through + - drm/radeon: fix DRM_IOCTL_RADEON_CS oops + - [armhf] ASoC: omap-pcm: Correct dma mask + - [amd64] x86/asm/entry/64: Remove a bogus 'ret_from_fork' optimization + (CVE-2015-2830) + - Btrfs: fix data loss in the fast fsync path + - Btrfs:__add_inode_ref: out of bounds memory read when looking for + extended ref. + - svcrpc: fix memory leak in gssp_accept_sec_context_upcall + (regression in 3.12) + - SUNRPC: Always manipulate rpc_rqst::rq_bc_pa_list under xprt->bc_pa_lock + (regression in 3.15) + - net: cls_bpf: fix size mismatch on filter preparation + - net: cls_bpf: fix auto generation of per list handles + - qlge: Fix qlge_update_hw_vlan_features to handle if interface is down + (regression in 3.13) + - libsas: Fix Kernel Crash in smp_execute_task + - ALSA: hda - Fix regression of HD-audio controller fallback modes + (regression in 3.11) + - can: add missing initialisations in CAN related skbuffs + - ftrace: Fix en(dis)able graph caller when en(dis)abling record via sysctl + - ftrace: Fix ftrace enable ordering of sysctl ftrace_enabled + - [armhf] imx6qdl-sabresd: set swbst_reg as vbus's parent reg + - [armhf] imx6sl-evk: set swbst_reg as vbus's parent reg + - xen-pciback: limit guest control of command register (CVE-2015-2150) + - drm/vmwgfx: Reorder device takedown somewhat + - ALSA: control: Add sanity checks for user ctl id name string + - Revert "i2c: core: Dispose OF IRQ mapping at client removal time" + (regression in 3.16.7-ckt2) + - nilfs2: fix deadlock of segment constructor during recovery + (regression in 3.16.7-ckt7) + - clk: divider: fix calculation of maximal parent rate for a given divider + (regression in 3.15) + - [sparc*] Fix several bugs in memmove(). + - net: sysctl_net_core: check SNDBUF and RCVBUF for min length + - inet_diag: fix possible overflow in inet_diag_dump_one_icsk() + - caif: fix MSG_OOB test in caif_seqpkt_recvmsg() + - rxrpc: bogus MSG_PEEK test in rxrpc_recvmsg() + - tcp: fix tcp fin memory accounting + - net: compat: Update get_compat_msghdr() to match copy_msghdr_from_user() + behaviour (regression in 3.13) + - tcp: make connect() mem charging friendly [ Ian Campbell ] * Initialise framebuffer console earlier. (Closes: #779935) @@ -11,6 +177,7 @@ linux (3.16.7-ckt7-2) UNRELEASED; urgency=medium [ Ben Hutchings ] * [armel/kirkwood] linux-image: Add versioned Breaks against flash-kernel, to ensure that an FDT is appended to the image if needed (Closes: #781193) + * Revert "quota: Store maximum space limit in bytes" to avoid ABI change -- Ian Campbell Wed, 18 Mar 2015 21:07:15 +0000 diff --git a/debian/patches/bugfix/all/aslr-fix-stack-randomization-on-64-bit-systems.patch b/debian/patches/bugfix/all/aslr-fix-stack-randomization-on-64-bit-systems.patch deleted file mode 100644 index ee8e97a2d..000000000 --- a/debian/patches/bugfix/all/aslr-fix-stack-randomization-on-64-bit-systems.patch +++ /dev/null @@ -1,98 +0,0 @@ -From: Hector Marco-Gisbert -Date: Sat, 14 Feb 2015 09:33:50 -0800 -Subject: ASLR: fix stack randomization on 64-bit systems -Origin: http://article.gmane.org/gmane.linux.kernel/1888210 - -The issue is that the stack for processes is not properly randomized on 64 bit -architectures due to an integer overflow. - -The affected function is randomize_stack_top() in file "fs/binfmt_elf.c": - -static unsigned long randomize_stack_top(unsigned long stack_top) -{ - unsigned int random_variable = 0; - - if ((current->flags & PF_RANDOMIZE) && - !(current->personality & ADDR_NO_RANDOMIZE)) { - random_variable = get_random_int() & STACK_RND_MASK; - random_variable <<= PAGE_SHIFT; - } - return PAGE_ALIGN(stack_top) + random_variable; - return PAGE_ALIGN(stack_top) - random_variable; -} - -Note that, it declares the "random_variable" variable as "unsigned int". Since -the result of the shifting operation between STACK_RND_MASK (which is -0x3fffff on x86_64, 22 bits) and PAGE_SHIFT (which is 12 on x86_64): - -random_variable <<= PAGE_SHIFT; - -then the two leftmost bits are dropped when storing the result in the -"random_variable". This variable shall be at least 34 bits long to hold the -(22+12) result. - -These two dropped bits have an impact on the entropy of process stack. -Concretely, the total stack entropy is reduced by four: from 2^28 to 2^30 (One -fourth of expected entropy). - -This patch restores back the entropy by correcting the types involved in the -operations in the functions randomize_stack_top() and stack_maxrandom_size(). - -The successful fix can be tested with: -$ for i in `seq 1 10`; do cat /proc/self/maps | grep stack; done -7ffeda566000-7ffeda587000 rw-p 00000000 00:00 0 [stack] -7fff5a332000-7fff5a353000 rw-p 00000000 00:00 0 [stack] -7ffcdb7a1000-7ffcdb7c2000 rw-p 00000000 00:00 0 [stack] -7ffd5e2c4000-7ffd5e2e5000 rw-p 00000000 00:00 0 [stack] -... - -Once corrected, the leading bytes should be between 7ffc and 7fff, rather -than always being 7fff. - -CVE-2015-1593 - -Signed-off-by: Hector Marco-Gisbert -Signed-off-by: Ismael Ripoll -[kees: rebase, fix 80 char, clean up commit message, add test example, cve] -Signed-off-by: Kees Cook -Cc: stable@vger.kernel.org ---- - arch/x86/mm/mmap.c | 6 +++--- - fs/binfmt_elf.c | 5 +++-- - 2 files changed, 6 insertions(+), 5 deletions(-) - ---- a/arch/x86/mm/mmap.c -+++ b/arch/x86/mm/mmap.c -@@ -35,12 +35,12 @@ struct __read_mostly va_alignment va_ali - .flags = -1, - }; - --static unsigned int stack_maxrandom_size(void) -+static unsigned long stack_maxrandom_size(void) - { -- unsigned int max = 0; -+ unsigned long max = 0; - if ((current->flags & PF_RANDOMIZE) && - !(current->personality & ADDR_NO_RANDOMIZE)) { -- max = ((-1U) & STACK_RND_MASK) << PAGE_SHIFT; -+ max = ((-1UL) & STACK_RND_MASK) << PAGE_SHIFT; - } - - return max; ---- a/fs/binfmt_elf.c -+++ b/fs/binfmt_elf.c -@@ -554,11 +554,12 @@ out: - - static unsigned long randomize_stack_top(unsigned long stack_top) - { -- unsigned int random_variable = 0; -+ unsigned long random_variable = 0; - - if ((current->flags & PF_RANDOMIZE) && - !(current->personality & ADDR_NO_RANDOMIZE)) { -- random_variable = get_random_int() & STACK_RND_MASK; -+ random_variable = (unsigned long) get_random_int(); -+ random_variable &= STACK_RND_MASK; - random_variable <<= PAGE_SHIFT; - } - #ifdef CONFIG_STACK_GROWSUP diff --git a/debian/patches/bugfix/x86/acpi-video-add-disable_native_backlight-quirk-for-dell-xps15.patch b/debian/patches/bugfix/x86/acpi-video-add-disable_native_backlight-quirk-for-dell-xps15.patch deleted file mode 100644 index 541c3b5fd..000000000 --- a/debian/patches/bugfix/x86/acpi-video-add-disable_native_backlight-quirk-for-dell-xps15.patch +++ /dev/null @@ -1,34 +0,0 @@ -From: Hans de Goede -Date: Mon, 5 Jan 2015 08:57:04 +0100 -Subject: ACPI / video: Add disable_native_backlight quirk for Dell XPS15 L521X -Origin: https://git.kernel.org/linus/6a3ef10bacb08860805e9053f919786dc34760ba - -The L521X variant of the Dell XPS15 has integrated nvidia graphics, and -backlight control does not work properly when using the native interfaces. - -Link: https://bugzilla.redhat.com/show_bug.cgi?id=1163574 -Signed-off-by: Hans de Goede -Signed-off-by: Rafael J. Wysocki ---- - drivers/acpi/video.c | 10 ++++++++++ - 1 file changed, 10 insertions(+) - ---- a/drivers/acpi/video.c -+++ b/drivers/acpi/video.c -@@ -711,6 +711,16 @@ static struct dmi_system_id video_dmi_ta - DMI_MATCH(DMI_PRODUCT_NAME, "370R4E/370R4V/370R5E/3570RE/370R5V"), - }, - }, -+ -+ { -+ /* https://bugzilla.redhat.com/show_bug.cgi?id=1163574 */ -+ .callback = video_disable_native_backlight, -+ .ident = "Dell XPS15 L521X", -+ .matches = { -+ DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), -+ DMI_MATCH(DMI_PRODUCT_NAME, "XPS L521X"), -+ }, -+ }, - {} - }; - diff --git a/debian/patches/bugfix/x86/acpi-video-add-disable_native_backlight-quirk-for-samsung-730u3e-740u3e.patch b/debian/patches/bugfix/x86/acpi-video-add-disable_native_backlight-quirk-for-samsung-730u3e-740u3e.patch deleted file mode 100644 index f47242159..000000000 --- a/debian/patches/bugfix/x86/acpi-video-add-disable_native_backlight-quirk-for-samsung-730u3e-740u3e.patch +++ /dev/null @@ -1,34 +0,0 @@ -From: Hans de Goede -Date: Fri, 9 Jan 2015 16:22:57 +0100 -Subject: ACPI / video: Add disable_native_backlight quirk for Samsung - 730U3E/740U3E -Origin: https://git.kernel.org/linus/3295d73002f4be341069a000aec4b8d7e5ea8d2c - -The Samsung 730U3E/740U3E has integrated ATI Radeon graphics, and backlight -control does not work properly when using the native interfaces. - -Link: https://bugzilla.redhat.com/show_bug.cgi?id=1094948 -Signed-off-by: Hans de Goede -Signed-off-by: Rafael J. Wysocki ---- - drivers/acpi/video.c | 9 +++++++++ - 1 file changed, 9 insertions(+) - ---- a/drivers/acpi/video.c -+++ b/drivers/acpi/video.c -@@ -711,6 +711,15 @@ static struct dmi_system_id video_dmi_ta - DMI_MATCH(DMI_PRODUCT_NAME, "370R4E/370R4V/370R5E/3570RE/370R5V"), - }, - }, -+ { -+ /* https://bugzilla.redhat.com/show_bug.cgi?id=1094948 */ -+ .callback = video_disable_native_backlight, -+ .ident = "SAMSUNG 730U3E/740U3E", -+ .matches = { -+ DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), -+ DMI_MATCH(DMI_PRODUCT_NAME, "730U3E/740U3E"), -+ }, -+ }, - - { - /* https://bugzilla.redhat.com/show_bug.cgi?id=1163574 */ diff --git a/debian/patches/bugfix/x86/acpi-video-add-some-samsung-models-to-disable_native.patch b/debian/patches/bugfix/x86/acpi-video-add-some-samsung-models-to-disable_native.patch deleted file mode 100644 index 08901e29b..000000000 --- a/debian/patches/bugfix/x86/acpi-video-add-some-samsung-models-to-disable_native.patch +++ /dev/null @@ -1,52 +0,0 @@ -From: Aaron Lu -Date: Mon, 22 Dec 2014 15:18:05 +0800 -Subject: ACPI / video: Add some Samsung models to disable_native_backlight - list -Origin: https://git.kernel.org/linus/7d0b93499f4879ddbc75d594f4ea216ba964f78e - -Several Samsung laptop models (SAMSUNG 870Z5E/880Z5E/680Z5E and -SAMSUNG 370R4E/370R4V/370R5E/3570RE/370R5V) do not have a working -native backlight control interface so restore their acpi_videoX -interface. - -Link: https://bugzilla.kernel.org/show_bug.cgi?id=84221 -Link: https://bugzilla.kernel.org/show_bug.cgi?id=84651 -For SAMSUNG 870Z5E/880Z5E/680Z5E: -Reported-and-tested-by: Brent Saner -Reported-by: Vitaliy Filippov -Reported-by: Laszlo KREKACS -For SAMSUNG 370R4E/370R4V/370R5E/3570RE/370R5V: -Reported-by: Vladimir Perepechin -Cc: 3.17+ # 3.17+ -Signed-off-by: Aaron Lu -Signed-off-by: Rafael J. Wysocki ---- - drivers/acpi/video.c | 17 +++++++++++++++++ - 1 file changed, 17 insertions(+) - ---- a/drivers/acpi/video.c -+++ b/drivers/acpi/video.c -@@ -694,6 +694,23 @@ static struct dmi_system_id video_dmi_ta - DMI_MATCH(DMI_PRODUCT_NAME, "HP ENVY 15 Notebook PC"), - }, - }, -+ -+ { -+ .callback = video_disable_native_backlight, -+ .ident = "SAMSUNG 870Z5E/880Z5E/680Z5E", -+ .matches = { -+ DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), -+ DMI_MATCH(DMI_PRODUCT_NAME, "870Z5E/880Z5E/680Z5E"), -+ }, -+ }, -+ { -+ .callback = video_disable_native_backlight, -+ .ident = "SAMSUNG 370R4E/370R4V/370R5E/3570RE/370R5V", -+ .matches = { -+ DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."), -+ DMI_MATCH(DMI_PRODUCT_NAME, "370R4E/370R4V/370R5E/3570RE/370R5V"), -+ }, -+ }, - {} - }; - diff --git a/debian/patches/debian/revert-quota-store-maximum-space-limit-in-bytes.patch b/debian/patches/debian/revert-quota-store-maximum-space-limit-in-bytes.patch new file mode 100644 index 000000000..4c8279bfd --- /dev/null +++ b/debian/patches/debian/revert-quota-store-maximum-space-limit-in-bytes.patch @@ -0,0 +1,107 @@ +From: Ben Hutchings +Date: Sun, 05 Apr 2015 17:20:47 +0100 +Subject: Revert "quota: Store maximum space limit in bytes" +Forwarded: not-needed + +This reverts commit 075bc52630579feccc805b9baeaa26a700ca8bad, based +on commit b10a08194c2b615955dfab2300331a90ae9344c7 upstream. It makes +a module ABI change and doesn't seem worth the trouble. We can +probably fix the issue later in a somewhat uglier way without the ABI +change. +--- +--- a/fs/ocfs2/quota_local.c ++++ b/fs/ocfs2/quota_local.c +@@ -700,8 +700,8 @@ static int ocfs2_local_read_info(struct + /* We don't need the lock and we have to acquire quota file locks + * which will later depend on this lock */ + mutex_unlock(&sb_dqopt(sb)->dqio_mutex); +- info->dqi_max_spc_limit = 0x7fffffffffffffffLL; +- info->dqi_max_ino_limit = 0x7fffffffffffffffLL; ++ info->dqi_maxblimit = 0x7fffffffffffffffLL; ++ info->dqi_maxilimit = 0x7fffffffffffffffLL; + oinfo = kmalloc(sizeof(struct ocfs2_mem_dqinfo), GFP_NOFS); + if (!oinfo) { + mlog(ML_ERROR, "failed to allocate memory for ocfs2 quota" +--- a/fs/quota/dquot.c ++++ b/fs/quota/dquot.c +@@ -2396,6 +2396,16 @@ out: + } + EXPORT_SYMBOL(dquot_quota_on_mount); + ++static inline qsize_t qbtos(qsize_t blocks) ++{ ++ return blocks << QIF_DQBLKSIZE_BITS; ++} ++ ++static inline qsize_t stoqb(qsize_t space) ++{ ++ return (space + QIF_DQBLKSIZE - 1) >> QIF_DQBLKSIZE_BITS; ++} ++ + /* Generic routine for getting common part of quota structure */ + static void do_get_dqblk(struct dquot *dquot, struct qc_dqblk *di) + { +@@ -2445,13 +2455,13 @@ static int do_set_dqblk(struct dquot *dq + return -EINVAL; + + if (((di->d_fieldmask & QC_SPC_SOFT) && +- di->d_spc_softlimit > dqi->dqi_max_spc_limit) || ++ stoqb(di->d_spc_softlimit) > dqi->dqi_maxblimit) || + ((di->d_fieldmask & QC_SPC_HARD) && +- di->d_spc_hardlimit > dqi->dqi_max_spc_limit) || ++ stoqb(di->d_spc_hardlimit) > dqi->dqi_maxblimit) || + ((di->d_fieldmask & QC_INO_SOFT) && +- (di->d_ino_softlimit > dqi->dqi_max_ino_limit)) || ++ (di->d_ino_softlimit > dqi->dqi_maxilimit)) || + ((di->d_fieldmask & QC_INO_HARD) && +- (di->d_ino_hardlimit > dqi->dqi_max_ino_limit))) ++ (di->d_ino_hardlimit > dqi->dqi_maxilimit))) + return -ERANGE; + + spin_lock(&dq_data_lock); +--- a/fs/quota/quota_v1.c ++++ b/fs/quota/quota_v1.c +@@ -169,8 +169,8 @@ static int v1_read_file_info(struct supe + } + ret = 0; + /* limits are stored as unsigned 32-bit data */ +- dqopt->info[type].dqi_max_spc_limit = 0xffffffffULL << QUOTABLOCK_BITS; +- dqopt->info[type].dqi_max_ino_limit = 0xffffffff; ++ dqopt->info[type].dqi_maxblimit = 0xffffffff; ++ dqopt->info[type].dqi_maxilimit = 0xffffffff; + dqopt->info[type].dqi_igrace = + dqblk.dqb_itime ? dqblk.dqb_itime : MAX_IQ_TIME; + dqopt->info[type].dqi_bgrace = +--- a/fs/quota/quota_v2.c ++++ b/fs/quota/quota_v2.c +@@ -117,12 +117,12 @@ static int v2_read_file_info(struct supe + qinfo = info->dqi_priv; + if (version == 0) { + /* limits are stored as unsigned 32-bit data */ +- info->dqi_max_spc_limit = 0xffffffffULL << QUOTABLOCK_BITS; +- info->dqi_max_ino_limit = 0xffffffff; ++ info->dqi_maxblimit = 0xffffffff; ++ info->dqi_maxilimit = 0xffffffff; + } else { +- /* used space is stored as unsigned 64-bit value in bytes */ +- info->dqi_max_spc_limit = 0xffffffffffffffffULL; /* 2^64-1 */ +- info->dqi_max_ino_limit = 0xffffffffffffffffULL; ++ /* used space is stored as unsigned 64-bit value */ ++ info->dqi_maxblimit = 0xffffffffffffffffULL; /* 2^64-1 */ ++ info->dqi_maxilimit = 0xffffffffffffffffULL; + } + info->dqi_bgrace = le32_to_cpu(dinfo.dqi_bgrace); + info->dqi_igrace = le32_to_cpu(dinfo.dqi_igrace); +--- a/include/linux/quota.h ++++ b/include/linux/quota.h +@@ -211,8 +211,8 @@ struct mem_dqinfo { + unsigned long dqi_flags; + unsigned int dqi_bgrace; + unsigned int dqi_igrace; +- qsize_t dqi_max_spc_limit; +- qsize_t dqi_max_ino_limit; ++ qsize_t dqi_maxblimit; ++ qsize_t dqi_maxilimit; + void *dqi_priv; + }; + diff --git a/debian/patches/debian/usb-avoid-abi-change-in-3.16.7-ckt8.patch b/debian/patches/debian/usb-avoid-abi-change-in-3.16.7-ckt8.patch new file mode 100644 index 000000000..b115ad990 --- /dev/null +++ b/debian/patches/debian/usb-avoid-abi-change-in-3.16.7-ckt8.patch @@ -0,0 +1,21 @@ +From: Ben Hutchings +Date: Mon, 06 Apr 2015 17:51:50 +0100 +Subject: USB: Avoid ABI change in 3.16.7-ckt8 +Forwarded: not-needed + +Hide the added bitfield usb_hcd::cant_recv_wakeups from genksyms. +--- +--- a/include/linux/usb/hcd.h ++++ b/include/linux/usb/hcd.h +@@ -144,8 +144,11 @@ struct usb_hcd { + unsigned has_tt:1; /* Integrated TT in root hub */ + unsigned amd_resume_bug:1; /* AMD remote wakeup quirk */ + unsigned can_do_streams:1; /* HC supports streams */ ++#ifndef __GENKSYMS__ + unsigned cant_recv_wakeups:1; + /* wakeup requests from downstream aren't received */ ++ /* 21 bits spare */ ++#endif + + unsigned int irq; /* irq allocated */ + void __iomem *regs; /* device memory/io */ diff --git a/debian/patches/series b/debian/patches/series index 7f0e958e9..f845464ee 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -59,9 +59,6 @@ bugfix/arm64/arm64-add-missing-dts-entry-for-X-Gene-platform.patch bugfix/arm64/arm64-removed-using-of-the-mask-attribute-in-the-dts.patch bugfix/x86/acpi-video-run-_bcl-before-deciding-registering-back.patch bugfix/x86/x86-hpet-force-enable-for-e6xx-based-systems.patch -bugfix/x86/acpi-video-add-some-samsung-models-to-disable_native.patch -bugfix/x86/acpi-video-add-disable_native_backlight-quirk-for-dell-xps15.patch -bugfix/x86/acpi-video-add-disable_native_backlight-quirk-for-samsung-730u3e-740u3e.patch bugfix/x86/acpi-video-add-disable_native_backlight-quirk-for-samsung-510r.patch bugfix/x86/acpi-video-disable-native-backlight-on-samsung-series-9.patch bugfix/x86/drm-i915-quietly-reject-attempts-to-create-non-pagealigned-stolen-objects.patch @@ -184,7 +181,6 @@ bugfix/all/net-mv643xx-disable-tso-by-default.patch bugfix/all/xen-balloon-cancel-ballooning-if-adding-new-memory-f.patch bugfix/all/xen-balloon-Don-t-continue-ballooning-when-BP_ECANCE.patch bugfix/all/vfs-read-file_handle-only-once-in-handle_to_path.patch -bugfix/all/aslr-fix-stack-randomization-on-64-bit-systems.patch bugfix/all/keys-request_key-should-reget-expired-keys-rather-th.patch # memfd_create() & kdbus backport @@ -551,8 +547,10 @@ debian/arm-thread_info-fix-abi-change-in-3.16.7-ckt3.patch debian/pci-fix-abi-change-in-3.16.7-ckt3.patch debian/vfs-avoid-abi-change-for-dentry-union-changes.patch debian/userns-fix-abi-change-in-3.16.7-ckt4.patch +debian/revert-quota-store-maximum-space-limit-in-bytes.patch debian/revert-quota-switch-get_dqblk-and-set_dqblk-to-use-b.patch debian/rmap-fix-abi-change-in-3.16.7-ckt5.patch debian/perf-fix-abi-change-in-3.16.7-ckt6.patch debian/mm-fix-pagecache_get_page-abi-change-in-3.16.7-ckt6.patch debian/tcp-fix-abi-change-in-3.16.7-ckt7.patch +debian/usb-avoid-abi-change-in-3.16.7-ckt8.patch