[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 679479168a68ec71fc95e7a66dac25305220e45f Author: Mike Pagano gentoo org> AuthorDate: Sun Nov 5 18:49:52 2017 + Commit: Mike Pagano gentoo org> CommitDate: Sun Nov 5 18:49:52 2017 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=67947916 Linux patch 3.10.108 _README |4 + 1107_linux-3.10.108.patch | 3467 + 2 files changed, 3471 insertions(+) diff --git a/_README b/_README index e949f2e..e964bd4 100644 --- a/_README +++ b/_README @@ -470,6 +470,10 @@ Patch: 1106_linux-3.10.107.patch From: http://www.kernel.org Desc: Linux 3.10.107 +Patch: 1107_linux-3.10.108.patch +From: http://www.kernel.org +Desc: Linux 3.10.108 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1107_linux-3.10.108.patch b/1107_linux-3.10.108.patch new file mode 100644 index 000..f8e4e90 --- /dev/null +++ b/1107_linux-3.10.108.patch @@ -0,0 +1,3467 @@ +diff --git a/Makefile b/Makefile +index 752b1c67daa0..924f98a4bc0f 100644 +--- a/Makefile b/Makefile +@@ -1,8 +1,8 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 107 ++SUBLEVEL = 108 + EXTRAVERSION = +-NAME = TOSSUG Baby Fish ++NAME = END-OF-LIFE + + # *DOCUMENTATION* + # To see a list of typical targets execute "make help" +diff --git a/arch/mips/include/asm/branch.h b/arch/mips/include/asm/branch.h +index e28a3e0eb3cb..582d8b61ce5c 100644 +--- a/arch/mips/include/asm/branch.h b/arch/mips/include/asm/branch.h +@@ -44,10 +44,7 @@ static inline int compute_return_epc(struct pt_regs *regs) + return __microMIPS_compute_return_epc(regs); + if (cpu_has_mips16) + return __MIPS16e_compute_return_epc(regs); +- return regs->cp0_epc; +- } +- +- if (!delay_slot(regs)) { ++ } else if (!delay_slot(regs)) { + regs->cp0_epc += 4; + return 0; + } +diff --git a/arch/mips/kernel/branch.c b/arch/mips/kernel/branch.c +index 46c2ad0703a0..63b942f613c4 100644 +--- a/arch/mips/kernel/branch.c b/arch/mips/kernel/branch.c +@@ -200,7 +200,7 @@ int __MIPS16e_compute_return_epc(struct pt_regs *regs) + * + * @regs: Pointer to pt_regs + * @insn: branch instruction to decode +- * @returns: -EFAULT on error and forces SIGBUS, and on success ++ * @returns: -EFAULT on error and forces SIGILL, and on success + *returns 0 or BRANCH_LIKELY_TAKEN as appropriate after + *evaluating the branch. + */ +@@ -297,6 +297,7 @@ int __compute_return_epc_for_insn(struct pt_regs *regs, + /* +* These are unconditional and in j_format. +*/ ++ case jalx_op: + case jal_op: + regs->regs[31] = regs->cp0_epc + 8; + case j_op: +@@ -436,8 +437,9 @@ int __compute_return_epc_for_insn(struct pt_regs *regs, + return ret; + + sigill: +- printk("%s: DSP branch but not DSP ASE - sending SIGBUS.\n", current->comm); +- force_sig(SIGBUS, current); ++ pr_info("%s: DSP branch but not DSP ASE - sending SIGILL.\n", ++ current->comm); ++ force_sig(SIGILL, current); + return -EFAULT; + } + EXPORT_SYMBOL_GPL(__compute_return_epc_for_insn); +diff --git a/arch/mips/kernel/syscall.c b/arch/mips/kernel/syscall.c +index b79d13f95bf0..eb0f4dfb385c 100644 +--- a/arch/mips/kernel/syscall.c b/arch/mips/kernel/syscall.c +@@ -140,7 +140,7 @@ static inline int mips_atomic_set(unsigned long addr, unsigned long new) + "1: ll %[old], (%[addr]) \n" + " move%[tmp], %[new] \n" + "2: sc %[tmp], (%[addr]) \n" +- " bnez%[tmp], 4f \n" ++ " beqz%[tmp], 4f \n" + "3: \n" + " .subsection 2 \n" + "4: b 1b \n" +diff --git a/arch/mips/math-emu/cp1emu.c b/arch/mips/math-emu/cp1emu.c +index 3d492a823a55..dbddc9ccf270 100644 +--- a/arch/mips/math-emu/cp1emu.c b/arch/mips/math-emu/cp1emu.c +@@ -2002,6 +2002,35 @@ static int fpu_emu(struct pt_regs *xcp, struct mips_fpu_struct *ctx, + return 0; + } + ++/* ++ * Emulate FPU instructions. ++ * ++ * If we use FPU hardware, then we have been typically called to handle ++ * an unimplemented operation, such as where an operand is a NaN or ++ * denormalized. In that case exit the emulation loop after a single ++ * iteration so as to let hardware execute any subsequent instructions. ++ * ++ * If we have no FPU hardware or it has been disabled, then continue ++ * emulating floating-po
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 26127f3cb6a7b4e6ee2e0843aed511b52a1691f0 Author: Mike Pagano gentoo org> AuthorDate: Fri Sep 15 16:27:02 2017 + Commit: Mike Pagano gentoo org> CommitDate: Fri Sep 15 16:27:02 2017 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=26127f3c For 3.10.X, include patch to validate the output buffer length for L2CAP config reqs and resps to avoid stack buffer overflowing. CVE-2017-1000251. See bug #630840 _README | 4 + 2410_BT-check-L2CAP-buffer-length.patch | 357 2 files changed, 361 insertions(+) diff --git a/_README b/_README index 8da7d43..e949f2e 100644 --- a/_README +++ b/_README @@ -494,6 +494,10 @@ Patch: 2400_kcopy-patch-for-infiniband-driver.patch From: Alexey Shvetsov Desc: Zero copy for infiniband psm userspace driver +Patch: 2410_BT-check-L2CAP-buffer-length.patch +From: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e860d2c904d1a9f38a24eb44c9f34b8f915a6ea3 +Desc: Validate the output buffer length for L2CAP config reqs and resps to avoid stack buffer overflowing. CVE-2017-1000251. See bug #630840 + Patch: 2700_ThinkPad-30-brightness-control-fix.patch From: Seth Forshee Desc: ACPI: Disable Windows 8 compatibility for some Lenovo ThinkPads diff --git a/2410_BT-check-L2CAP-buffer-length.patch b/2410_BT-check-L2CAP-buffer-length.patch new file mode 100644 index 000..c6bfdf7 --- /dev/null +++ b/2410_BT-check-L2CAP-buffer-length.patch @@ -0,0 +1,357 @@ +From e860d2c904d1a9f38a24eb44c9f34b8f915a6ea3 Mon Sep 17 00:00:00 2001 +From: Ben Seri +Date: Sat, 9 Sep 2017 23:15:59 +0200 +Subject: Bluetooth: Properly check L2CAP config option output buffer length + +Validate the output buffer length for L2CAP config requests and responses +to avoid overflowing the stack buffer used for building the option blocks. + +Cc: sta...@vger.kernel.org +Signed-off-by: Ben Seri +Signed-off-by: Marcel Holtmann +Signed-off-by: Linus Torvalds +--- + net/bluetooth/l2cap_core.c | 80 +- + 1 file changed, 43 insertions(+), 37 deletions(-) + +diff --git a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c +index 303c779..43ba91c 100644 +--- a/net/bluetooth/l2cap_core.c b/net/bluetooth/l2cap_core.c +@@ -58,7 +58,7 @@ static struct sk_buff *l2cap_build_cmd(struct l2cap_conn *conn, + u8 code, u8 ident, u16 dlen, void *data); + static void l2cap_send_cmd(struct l2cap_conn *conn, u8 ident, u8 code, u16 len, + void *data); +-static int l2cap_build_conf_req(struct l2cap_chan *chan, void *data); ++static int l2cap_build_conf_req(struct l2cap_chan *chan, void *data, size_t data_size); + static void l2cap_send_disconn_req(struct l2cap_chan *chan, int err); + + static void l2cap_tx(struct l2cap_chan *chan, struct l2cap_ctrl *control, +@@ -1473,7 +1473,7 @@ static void l2cap_conn_start(struct l2cap_conn *conn) + + set_bit(CONF_REQ_SENT, &chan->conf_state); + l2cap_send_cmd(conn, l2cap_get_ident(conn), L2CAP_CONF_REQ, +- l2cap_build_conf_req(chan, buf), buf); ++ l2cap_build_conf_req(chan, buf, sizeof(buf)), buf); + chan->num_conf_req++; + } + +@@ -2987,12 +2987,15 @@ static inline int l2cap_get_conf_opt(void **ptr, int *type, int *olen, + return len; + } + +-static void l2cap_add_conf_opt(void **ptr, u8 type, u8 len, unsigned long val) ++static void l2cap_add_conf_opt(void **ptr, u8 type, u8 len, unsigned long val, size_t size) + { + struct l2cap_conf_opt *opt = *ptr; + + BT_DBG("type 0x%2.2x len %u val 0x%lx", type, len, val); + ++ if (size < L2CAP_CONF_OPT_SIZE + len) ++ return; ++ + opt->type = type; + opt->len = len; + +@@ -3017,7 +3020,7 @@ static void l2cap_add_conf_opt(void **ptr, u8 type, u8 len, unsigned long val) + *ptr += L2CAP_CONF_OPT_SIZE + len; + } + +-static void l2cap_add_opt_efs(void **ptr, struct l2cap_chan *chan) ++static void l2cap_add_opt_efs(void **ptr, struct l2cap_chan *chan, size_t size) + { + struct l2cap_conf_efs efs; + +@@ -3045,7 +3048,7 @@ static void l2cap_add_opt_efs(void **ptr, struct l2cap_chan *chan) + } + + l2cap_add_conf_opt(ptr, L2CAP_CONF_EFS, sizeof(efs), +- (unsigned long) &efs); ++ (unsigned long) &efs, size); + } + + static void l2cap_ack_timeout(struct work_struct *work) +@@ -3191,11 +3194,12 @@ static inline void l2cap_txwin_setup(struct l2cap_chan *chan) + chan->ack_win = chan->tx_win; + } + +-static int l2cap_build_conf_req(struct l2cap_chan *chan, void *data) ++static int l2cap_build_conf_req(struct l2cap_chan *chan, void *data, size_t data_size) + { + struct l2cap_conf_req
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: afc50295c7e24d87b7ebdbe7eabc2b4dc44214c0 Author: Mike Pagano gentoo org> AuthorDate: Thu Mar 2 16:48:38 2017 + Commit: Mike Pagano gentoo org> CommitDate: Thu Mar 2 16:48:38 2017 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=afc50295 Enable crypto API for systemd as its required for systemd versions >= 233. See bug #611368. 4567_distro-Gentoo-Kconfig.patch | 9 ++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/4567_distro-Gentoo-Kconfig.patch b/4567_distro-Gentoo-Kconfig.patch index 690454a..24ebbef 100644 --- a/4567_distro-Gentoo-Kconfig.patch +++ b/4567_distro-Gentoo-Kconfig.patch @@ -7,9 +7,9 @@ +source "distro/Kconfig" + source "arch/$SRCARCH/Kconfig" a/distro/Kconfig 1969-12-31 19:00:00.0 -0500 -+++ b/distro/Kconfig 2015-01-02 13:54:45.589830665 -0500 -@@ -0,0 +1,109 @@ +--- /dev/null 2017-03-02 01:55:04.096566155 -0500 b/distro/Kconfig 2017-03-02 11:46:27.504900160 -0500 +@@ -0,0 +1,112 @@ +menu "Gentoo Linux" + +config GENTOO_LINUX @@ -87,6 +87,9 @@ + select AUTOFS4_FS + select BLK_DEV_BSG + select CGROUPS ++ select CRYPTO_HMAC ++ select CRYPTO_SHA256 ++ select CRYPTO_USER_API_HASH + select DEVPTS_MULTIPLE_INSTANCES + select EPOLL + select FANOTIFY
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: ac25f59e51d3946b9aa4491fa0ad9768cac30701 Author: Mike Pagano gentoo org> AuthorDate: Mon Feb 27 18:32:21 2017 + Commit: Mike Pagano gentoo org> CommitDate: Mon Feb 27 18:32:21 2017 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=ac25f59e fix race condition in packet_set_ring. CVE-2016-8655. Bug #601926. _README | 4 ++ 1530_CVE-2017-6074-dccp-fix-early-skb-free.patch | 47 2 files changed, 51 insertions(+) diff --git a/_README b/_README index 1216723..3c1164c 100644 --- a/_README +++ b/_README @@ -478,6 +478,10 @@ Patch: 1520_fix-race-condition-in-packet-set-ring.patch From: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=84ac7260236a49c79eede91617700174c2c19b0c Desc: packet: fix race condition in packet_set_ring. CVE-2016-8655. Bug #601926. +Patch: 1530_CVE-2017-6074-dccp-skb-freeing-fix.patch +From: https://bugs.gentoo.org/show_bug.cgi?id=610600 +Desc: dccp: fix freeing skb too early for IPV6_RECVPKTINFO. CVE-2017-6074 + Patch: 1700_enable-thinkpad-micled.patch From: https://bugs.gentoo.org/show_bug.cgi?id=449248 Desc: Enable mic mute led in thinkpads diff --git a/1530_CVE-2017-6074-dccp-fix-early-skb-free.patch b/1530_CVE-2017-6074-dccp-fix-early-skb-free.patch new file mode 100644 index 000..433fd4b --- /dev/null +++ b/1530_CVE-2017-6074-dccp-fix-early-skb-free.patch @@ -0,0 +1,47 @@ +From 5edabca9d4cff7f1f2b68f0bac55ef99d9798ba4 Mon Sep 17 00:00:00 2001 +From: Andrey Konovalov +Date: Thu, 16 Feb 2017 17:22:46 +0100 +Subject: dccp: fix freeing skb too early for IPV6_RECVPKTINFO + +In the current DCCP implementation an skb for a DCCP_PKT_REQUEST packet +is forcibly freed via __kfree_skb in dccp_rcv_state_process if +dccp_v6_conn_request successfully returns. + +However, if IPV6_RECVPKTINFO is set on a socket, the address of the skb +is saved to ireq->pktopts and the ref count for skb is incremented in +dccp_v6_conn_request, so skb is still in use. Nevertheless, it gets freed +in dccp_rcv_state_process. + +Fix by calling consume_skb instead of doing goto discard and therefore +calling __kfree_skb. + +Similar fixes for TCP: + +fb7e2399ec17f1004c0e0ccfd17439f8759ede01 [TCP]: skb is unexpectedly freed. +0aea76d35c9651d55bbaf746e7914e5f9ae5a25d tcp: SYN packets are now +simply consumed + +Signed-off-by: Andrey Konovalov +Acked-by: Eric Dumazet +Signed-off-by: David S. Miller +--- + net/dccp/input.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/net/dccp/input.c b/net/dccp/input.c +index ba34718..8fedc2d 100644 +--- a/net/dccp/input.c b/net/dccp/input.c +@@ -606,7 +606,8 @@ int dccp_rcv_state_process(struct sock *sk, struct sk_buff *skb, + if (inet_csk(sk)->icsk_af_ops->conn_request(sk, + skb) < 0) + return 1; +- goto discard; ++ consume_skb(skb); ++ return 0; + } + if (dh->dccph_type == DCCP_PKT_RESET) + goto discard; +-- +cgit v0.12 +
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 50ee9dadc30365db8f40035f24cb84133b0c966e Author: Mike Pagano gentoo org> AuthorDate: Fri Dec 9 18:31:31 2016 + Commit: Mike Pagano gentoo org> CommitDate: Fri Dec 9 18:31:31 2016 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=50ee9dad Fix race condition in packet_set_ring. CVE-2016-8655. Bug #601926. _README | 4 ++ 1520_fix-race-condition-in-packet-set-ring.patch | 62 2 files changed, 66 insertions(+) diff --git a/_README b/_README index a4f6bf2..271c499 100644 --- a/_README +++ b/_README @@ -470,6 +470,10 @@ Patch: 1510_fs-enable-link-security-restrictions-by-default.patch From: http://sources.debian.net/src/linux/3.16.7-ckt4-3/debian/patches/debian/fs-enable-link-security-restrictions-by-default.patch/ Desc: Enable link security restrictions by default +Patch: 1520_fix-race-condition-in-packet-set-ring.patch +From: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=84ac7260236a49c79eede91617700174c2c19b0c +Desc: packet: fix race condition in packet_set_ring. CVE-2016-8655. Bug #601926. + Patch: 1700_enable-thinkpad-micled.patch From: https://bugs.gentoo.org/show_bug.cgi?id=449248 Desc: Enable mic mute led in thinkpads diff --git a/1520_fix-race-condition-in-packet-set-ring.patch b/1520_fix-race-condition-in-packet-set-ring.patch new file mode 100644 index 000..d85527f --- /dev/null +++ b/1520_fix-race-condition-in-packet-set-ring.patch @@ -0,0 +1,62 @@ +--- a/net/packet/af_packet.c 2016-12-07 18:10:25.785812861 -0500 b/net/packet/af_packet.c 2016-12-07 18:18:45.597933525 -0500 +@@ -3648,19 +3648,25 @@ packet_setsockopt(struct socket *sock, i + + if (optlen != sizeof(val)) + return -EINVAL; +- if (po->rx_ring.pg_vec || po->tx_ring.pg_vec) +- return -EBUSY; + if (copy_from_user(&val, optval, sizeof(val))) + return -EFAULT; + switch (val) { + case TPACKET_V1: + case TPACKET_V2: + case TPACKET_V3: +- po->tp_version = val; +- return 0; ++ break; + default: + return -EINVAL; + } ++ lock_sock(sk); ++ if (po->rx_ring.pg_vec || po->tx_ring.pg_vec) { ++ ret = -EBUSY; ++ } else { ++ po->tp_version = val; ++ ret = 0; ++ } ++ release_sock(sk); ++ return ret; + } + case PACKET_RESERVE: + { +@@ -4164,6 +4170,7 @@ static int packet_set_ring(struct sock * + /* Added to avoid minimal code churn */ + struct tpacket_req *req = &req_u->req; + ++ lock_sock(sk); + /* Opening a Tx-ring is NOT supported in TPACKET_V3 */ + if (!closing && tx_ring && (po->tp_version > TPACKET_V2)) { + net_warn_ratelimited("Tx-ring is not supported.\n"); +@@ -4245,8 +4252,6 @@ static int packet_set_ring(struct sock * + goto out; + } + +- lock_sock(sk); +- + /* Detach socket from network */ + spin_lock(&po->bind_lock); + was_running = po->running; +@@ -4294,11 +4299,11 @@ static int packet_set_ring(struct sock * + if (!tx_ring) + prb_shutdown_retire_blk_timer(po, rb_queue); + } +- release_sock(sk); + + if (pg_vec) + free_pg_vec(pg_vec, order, req->tp_block_nr); + out: ++ release_sock(sk); + return err; + } +
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: e362672f8603aead6f4618f379b2df056478dafc Author: Mike Pagano gentoo org> AuthorDate: Fri Oct 21 10:55:33 2016 + Commit: Mike Pagano gentoo org> CommitDate: Fri Oct 21 10:55:33 2016 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=e362672f Linux patch 3.10.104 _README | 4 + 1103_linux-3.10.104.patch | 478 ++ 2 files changed, 482 insertions(+) diff --git a/_README b/_README index c6ef0e7..a4f6bf2 100644 --- a/_README +++ b/_README @@ -454,6 +454,10 @@ Patch: 1102_linux-3.10.103.patch From: http://www.kernel.org Desc: Linux 3.10.103 +Patch: 1103_linux-3.10.104.patch +From: http://www.kernel.org +Desc: Linux 3.10.104 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1103_linux-3.10.104.patch b/1103_linux-3.10.104.patch new file mode 100644 index 000..93006a6 --- /dev/null +++ b/1103_linux-3.10.104.patch @@ -0,0 +1,478 @@ +diff --git a/Makefile b/Makefile +index d3cb458b295a..f6a2cbd438a1 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 103 ++SUBLEVEL = 104 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/mips/kvm/kvm_tlb.c b/arch/mips/kvm/kvm_tlb.c +index 4bee4397dca8..8a47bd96cee3 100644 +--- a/arch/mips/kvm/kvm_tlb.c b/arch/mips/kvm/kvm_tlb.c +@@ -182,7 +182,7 @@ static int kvm_mips_map_page(struct kvm *kvm, gfn_t gfn) + srcu_idx = srcu_read_lock(&kvm->srcu); + pfn = kvm_mips_gfn_to_pfn(kvm, gfn); + +- if (kvm_mips_is_error_pfn(pfn)) { ++ if (is_error_noslot_pfn(pfn)) { + kvm_err("Couldn't get pfn for gfn %#" PRIx64 "!\n", gfn); + err = -EFAULT; + goto out; +diff --git a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c +index a5e339806589..d55357ee9028 100644 +--- a/arch/powerpc/kernel/process.c b/arch/powerpc/kernel/process.c +@@ -1088,16 +1088,6 @@ void start_thread(struct pt_regs *regs, unsigned long start, unsigned long sp) + current->thread.regs = regs - 1; + } + +-#ifdef CONFIG_PPC_TRANSACTIONAL_MEM +- /* +- * Clear any transactional state, we're exec()ing. The cause is +- * not important as there will never be a recheckpoint so it's not +- * user visible. +- */ +- if (MSR_TM_SUSPENDED(mfmsr())) +- tm_reclaim_current(0); +-#endif +- + memset(regs->gpr, 0, sizeof(regs->gpr)); + regs->ctr = 0; + regs->link = 0; +diff --git a/drivers/acpi/sysfs.c b/drivers/acpi/sysfs.c +index fcae5fa2e1b3..95b6371e1fe7 100644 +--- a/drivers/acpi/sysfs.c b/drivers/acpi/sysfs.c +@@ -492,23 +492,22 @@ static void acpi_global_event_handler(u32 event_type, acpi_handle device, + static int get_status(u32 index, acpi_event_status *status, + acpi_handle *handle) + { +- int result = 0; ++ int result; + + if (index >= num_gpes + ACPI_NUM_FIXED_EVENTS) +- goto end; ++ return -EINVAL; + + if (index < num_gpes) { + result = acpi_get_gpe_device(index, handle); + if (result) { + ACPI_EXCEPTION((AE_INFO, AE_NOT_FOUND, + "Invalid GPE 0x%x", index)); +- goto end; ++ return result; + } + result = acpi_get_gpe_status(*handle, index, status); + } else if (index < (num_gpes + ACPI_NUM_FIXED_EVENTS)) + result = acpi_get_event_status(index - num_gpes, status); + +-end: + return result; + } + +diff --git a/drivers/crypto/nx/nx.c b/drivers/crypto/nx/nx.c +index bbdab6e5ccf0..fe689643a5ad 100644 +--- a/drivers/crypto/nx/nx.c b/drivers/crypto/nx/nx.c +@@ -309,7 +309,7 @@ static void nx_of_update_msc(struct device *dev, +((bytes_so_far + sizeof(struct msc_triplet)) <= lenp) && +i < msc->triplets; +i++) { +- if (msc->fc > NX_MAX_FC || msc->mode > NX_MAX_MODE) { ++ if (msc->fc >= NX_MAX_FC || msc->mode >= NX_MAX_MODE) { + dev_err(dev, "unknown function code/mode " + "combo: %d/%d (ignored)\n", msc->fc, + msc->mode); +diff --git a/drivers/net/xen-netback/common.h b/drivers/net/xen-netback/common.h +index f2faa779e3fe..dd6b7c362813 100644 +--- a/drivers/net/xen-netback/common.h b/drivers/net/xen-netback/common.h +@@ -66,6 +66,8 @@ struct xenvif { + /* The shared rings and indexes. */ + struct xen_netif_tx_back_ring tx; + struct xen_netif_rx_back_ring rx; ++ atomic_t ring_refcnt; ++ wait_queue_head_t waiting_to_unmap; + + /* Frontend featu
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: deeb81d32b2d6b7408271c5d0483307f20262d08 Author: Mike Pagano gentoo org> AuthorDate: Wed Mar 16 19:40:25 2016 + Commit: Mike Pagano gentoo org> CommitDate: Wed Mar 16 19:40:25 2016 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=deeb81d3 Linux patch 3.10.101 _README |4 + 1100_linux-3.10.101.patch | 1493 + 2 files changed, 1497 insertions(+) diff --git a/_README b/_README index bdc1498..92f6908 100644 --- a/_README +++ b/_README @@ -442,6 +442,10 @@ Patch: 1099_linux-3.10.100.patch From: http://www.kernel.org Desc: Linux 3.10.100 +Patch: 1100_linux-3.10.101.patch +From: http://www.kernel.org +Desc: Linux 3.10.101 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1100_linux-3.10.101.patch b/1100_linux-3.10.101.patch new file mode 100644 index 000..d9647df --- /dev/null +++ b/1100_linux-3.10.101.patch @@ -0,0 +1,1493 @@ +diff --git a/Documentation/filesystems/efivarfs.txt b/Documentation/filesystems/efivarfs.txt +index c477af086e65..686a64bba775 100644 +--- a/Documentation/filesystems/efivarfs.txt b/Documentation/filesystems/efivarfs.txt +@@ -14,3 +14,10 @@ filesystem. + efivarfs is typically mounted like this, + + mount -t efivarfs none /sys/firmware/efi/efivars ++ ++Due to the presence of numerous firmware bugs where removing non-standard ++UEFI variables causes the system firmware to fail to POST, efivarfs ++files that are not well-known standardized variables are created ++as immutable files. This doesn't prevent removal - "chattr -i" will work - ++but it does prevent this kind of failure from being accomplished ++accidentally. +diff --git a/Makefile b/Makefile +index 40d4d3bf52c3..4be9e643cef0 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 100 ++SUBLEVEL = 101 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/powerpc/kernel/module_64.c b/arch/powerpc/kernel/module_64.c +index 6ee59a0eb268..48b4cf6b2a24 100644 +--- a/arch/powerpc/kernel/module_64.c b/arch/powerpc/kernel/module_64.c +@@ -192,7 +192,7 @@ static void dedotify(Elf64_Sym *syms, unsigned int numsyms, char *strtab) + if (syms[i].st_shndx == SHN_UNDEF) { + char *name = strtab + syms[i].st_name; + if (name[0] == '.') +- memmove(name, name+1, strlen(name)); ++ syms[i].st_name++; + } + } + } +diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c +index 04cc2fa7744f..335fe70967a8 100644 +--- a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c +@@ -1487,6 +1487,13 @@ static void add_atomic_switch_msr(struct vcpu_vmx *vmx, unsigned msr, + return; + } + break; ++ case MSR_IA32_PEBS_ENABLE: ++ /* PEBS needs a quiescent period after being disabled (to write ++ * a record). Disabling PEBS through VMX MSR swapping doesn't ++ * provide that period, so a CPU could write host's record into ++ * guest's memory. ++ */ ++ wrmsrl(MSR_IA32_PEBS_ENABLE, 0); + } + + for (i = 0; i < m->nr; ++i) +diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c +index 41ba726c1ce2..7f2b6dec4b2b 100644 +--- a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c +@@ -1941,6 +1941,8 @@ static void accumulate_steal_time(struct kvm_vcpu *vcpu) + + static void record_steal_time(struct kvm_vcpu *vcpu) + { ++ accumulate_steal_time(vcpu); ++ + if (!(vcpu->arch.st.msr_val & KVM_MSR_ENABLED)) + return; + +@@ -2074,12 +2076,6 @@ int kvm_set_msr_common(struct kvm_vcpu *vcpu, struct msr_data *msr_info) + if (!(data & KVM_MSR_ENABLED)) + break; + +- vcpu->arch.st.last_steal = current->sched_info.run_delay; +- +- preempt_disable(); +- accumulate_steal_time(vcpu); +- preempt_enable(); +- + kvm_make_request(KVM_REQ_STEAL_UPDATE, vcpu); + + break; +@@ -2758,7 +2754,6 @@ void kvm_arch_vcpu_load(struct kvm_vcpu *vcpu, int cpu) + vcpu->cpu = cpu; + } + +- accumulate_steal_time(vcpu); + kvm_make_request(KVM_REQ_STEAL_UPDATE, vcpu); + } + +diff --git a/crypto/af_alg.c b/crypto/af_alg.c +index 0ca108f3c840..1aaa555fab56 100644 +--- a/crypto/af_alg.c b/crypto/af_alg.c +@@ -125,23 +125,6 @@ int af_alg_release(struct socket *sock) + } + EXPORT_SYMBOL_GPL(af_alg_release); + +-void af_alg_release_parent(struct sock *sk) +-{ +- struct alg_sock *ask = alg_sk(sk); +- bool last; +- +- sk = ask->parent; +- ask = alg_sk(sk); +- +- lock_sock(sk); +- last = !--ask->refcnt; +-
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 91c4c3bf6705fa7a7c134cdc3ee029025e41b7db Author: Mike Pagano gentoo org> AuthorDate: Thu Mar 10 00:47:52 2016 + Commit: Mike Pagano gentoo org> CommitDate: Thu Mar 10 00:47:52 2016 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=91c4c3bf Linux patch 3.10.100 _README |4 + 1099_linux-3.10.100.patch | 1156 + 2 files changed, 1160 insertions(+) diff --git a/_README b/_README index 44fb3ac..bdc1498 100644 --- a/_README +++ b/_README @@ -438,6 +438,10 @@ Patch: 1098_linux-3.10.99.patch From: http://www.kernel.org Desc: Linux 3.10.99 +Patch: 1099_linux-3.10.100.patch +From: http://www.kernel.org +Desc: Linux 3.10.100 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1099_linux-3.10.100.patch b/1099_linux-3.10.100.patch new file mode 100644 index 000..da39546 --- /dev/null +++ b/1099_linux-3.10.100.patch @@ -0,0 +1,1156 @@ +diff --git a/Makefile b/Makefile +index f1e6491fd7d8..40d4d3bf52c3 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 99 ++SUBLEVEL = 100 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/x86/ia32/ia32entry.S b/arch/x86/ia32/ia32entry.S +index c9305ef1d411..e73982b93537 100644 +--- a/arch/x86/ia32/ia32entry.S b/arch/x86/ia32/ia32entry.S +@@ -422,6 +422,7 @@ ENTRY(ia32_syscall) + /*CFI_REL_OFFSETcs,CS-RIP*/ + CFI_REL_OFFSET rip,RIP-RIP + PARAVIRT_ADJUST_EXCEPTION_FRAME ++ ASM_CLAC/* Do this early to minimize exposure */ + SWAPGS + /* +* No need to follow this irqs on/off section: the syscall +diff --git a/arch/x86/kernel/acpi/sleep.c b/arch/x86/kernel/acpi/sleep.c +index ec94e11807dc..ca0805633f26 100644 +--- a/arch/x86/kernel/acpi/sleep.c b/arch/x86/kernel/acpi/sleep.c +@@ -16,6 +16,7 @@ + #include + #include + ++#include + #include "../../realmode/rm/wakeup.h" + #include "sleep.h" + +@@ -96,7 +97,13 @@ int acpi_suspend_lowlevel(void) +saved_magic = 0x123456789abcdef0L; + #endif /* CONFIG_64BIT */ + ++ /* ++ * Pause/unpause graph tracing around do_suspend_lowlevel as it has ++ * inconsistent call/return info after it jumps to the wakeup vector. ++ */ ++ pause_graph_tracing(); + do_suspend_lowlevel(); ++ unpause_graph_tracing(); + return 0; + } + +diff --git a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c +index 04e7db668362..f3f0801a0e81 100644 +--- a/drivers/ata/libata-scsi.c b/drivers/ata/libata-scsi.c +@@ -673,19 +673,18 @@ static int ata_ioc32(struct ata_port *ap) + int ata_sas_scsi_ioctl(struct ata_port *ap, struct scsi_device *scsidev, +int cmd, void __user *arg) + { +- int val = -EINVAL, rc = -EINVAL; ++ unsigned long val; ++ int rc = -EINVAL; + unsigned long flags; + + switch (cmd) { +- case ATA_IOC_GET_IO32: ++ case HDIO_GET_32BIT: + spin_lock_irqsave(ap->lock, flags); + val = ata_ioc32(ap); + spin_unlock_irqrestore(ap->lock, flags); +- if (copy_to_user(arg, &val, 1)) +- return -EFAULT; +- return 0; ++ return put_user(val, (unsigned long __user *)arg); + +- case ATA_IOC_SET_IO32: ++ case HDIO_SET_32BIT: + val = (unsigned long) arg; + rc = 0; + spin_lock_irqsave(ap->lock, flags); +diff --git a/drivers/edac/edac_mc_sysfs.c b/drivers/edac/edac_mc_sysfs.c +index 88cd940ece63..453c816b4537 100644 +--- a/drivers/edac/edac_mc_sysfs.c b/drivers/edac/edac_mc_sysfs.c +@@ -973,21 +973,26 @@ nomem: + */ + int edac_create_sysfs_mci_device(struct mem_ctl_info *mci) + { ++ char *name; + int i, err; + + /* +* The memory controller needs its own bus, in order to avoid +* namespace conflicts at /sys/bus/edac. +*/ +- mci->bus->name = kasprintf(GFP_KERNEL, "mc%d", mci->mc_idx); +- if (!mci->bus->name) ++ name = kasprintf(GFP_KERNEL, "mc%d", mci->mc_idx); ++ if (!name) + return -ENOMEM; + ++ mci->bus->name = name; ++ + edac_dbg(0, "creating bus %s\n", mci->bus->name); + + err = bus_register(mci->bus); +- if (err < 0) ++ if (err < 0) { ++ kfree(name); + return err; ++ } + + /* get the /sys/devices/system/edac subsys reference */ + mci->dev.type = &mci_attr_type; +@@ -1071,7 +1076,8 @@ fail: + fail2: + device_unregister(&mci->dev); + bus_unregister(mci->bus); +- kfree(mci->bus->name); ++ kfree(name); ++ + return err; + } + +@@ -1102,10 +1108,12 @@ void edac_remove_sysfs_mci_device(struct mem_ctl_info *mci) + + void edac_unreg
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 7873784e8132df42248ac3796965e243062b8a6d Author: Mike Pagano gentoo org> AuthorDate: Fri Mar 4 00:09:54 2016 + Commit: Mike Pagano gentoo org> CommitDate: Fri Mar 4 00:09:54 2016 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=7873784e Linux patch 3.10.99 _README |4 + 1098_linux-3.10.99.patch | 2573 ++ 2 files changed, 2577 insertions(+) diff --git a/_README b/_README index 180e0a0..44fb3ac 100644 --- a/_README +++ b/_README @@ -434,6 +434,10 @@ Patch: 1097_linux-3.10.98.patch From: http://www.kernel.org Desc: Linux 3.10.98 +Patch: 1098_linux-3.10.99.patch +From: http://www.kernel.org +Desc: Linux 3.10.99 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1098_linux-3.10.99.patch b/1098_linux-3.10.99.patch new file mode 100644 index 000..e405e5a --- /dev/null +++ b/1098_linux-3.10.99.patch @@ -0,0 +1,2573 @@ +diff --git a/Makefile b/Makefile +index dadd1edc6f84..f1e6491fd7d8 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 98 ++SUBLEVEL = 99 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arc/kernel/unwind.c b/arch/arc/kernel/unwind.c +index a8d02223da44..14558a9fa3b3 100644 +--- a/arch/arc/kernel/unwind.c b/arch/arc/kernel/unwind.c +@@ -984,42 +984,13 @@ int arc_unwind(struct unwind_frame_info *frame) + (const u8 *)(fde + +1) + + *fde, ptrType); +- if (pc >= endLoc) ++ if (pc >= endLoc) { + fde = NULL; +- } else +- fde = NULL; +- } +- if (fde == NULL) { +- for (fde = table->address, tableSize = table->size; +- cie = NULL, tableSize > sizeof(*fde) +- && tableSize - sizeof(*fde) >= *fde; +- tableSize -= sizeof(*fde) + *fde, +- fde += 1 + *fde / sizeof(*fde)) { +- cie = cie_for_fde(fde, table); +- if (cie == &bad_cie) { + cie = NULL; +- break; + } +- if (cie == NULL +- || cie == ¬_fde +- || (ptrType = fde_pointer_type(cie)) < 0) +- continue; +- ptr = (const u8 *)(fde + 2); +- startLoc = read_pointer(&ptr, +- (const u8 *)(fde + 1) + +- *fde, ptrType); +- if (!startLoc) +- continue; +- if (!(ptrType & DW_EH_PE_indirect)) +- ptrType &= +- DW_EH_PE_FORM | DW_EH_PE_signed; +- endLoc = +- startLoc + read_pointer(&ptr, +- (const u8 *)(fde + +- 1) + +- *fde, ptrType); +- if (pc >= startLoc && pc < endLoc) +- break; ++ } else { ++ fde = NULL; ++ cie = NULL; + } + } + } +diff --git a/arch/mips/kvm/kvm_locore.S b/arch/mips/kvm/kvm_locore.S +index 920b63210806..34c35f0e3290 100644 +--- a/arch/mips/kvm/kvm_locore.S b/arch/mips/kvm/kvm_locore.S +@@ -156,9 +156,11 @@ FEXPORT(__kvm_mips_vcpu_run) + + FEXPORT(__kvm_mips_load_asid) + /* Set the ASID for the Guest Kernel */ +-sll t0, t0, 1 /* with kseg0 @ 0x4000, kernel */ +-/* addresses shift to 0x8000 */ +-bltzt0, 1f /* If kernel */ ++PTR_L t0, VCPU_COP0(k1) ++LONG_Lt0, COP0_STATUS(t0) ++andi t0, KSU_USER | ST0_ERL | ST0_EXL ++xori t0, KSU_USER ++bnez t0, 1f /* If kernel */ + addiu t1, k1, VCPU_GUEST_KERNEL_ASID /* (BD) */ + addiu t1, k1, VCPU_GUEST_USER_ASID/* else user */ + 1: +@@ -442,9 +444,11
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 7cadd67192ac4963f002a414373dce7cd7eea829 Author: Mike Pagano gentoo org> AuthorDate: Thu Feb 25 20:31:00 2016 + Commit: Mike Pagano gentoo org> CommitDate: Thu Feb 25 20:31:00 2016 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=7cadd671 Linux patch 3.10.98 _README |4 + 1097_linux-3.10.98.patch | 1792 ++ 2 files changed, 1796 insertions(+) diff --git a/_README b/_README index f3215a3..180e0a0 100644 --- a/_README +++ b/_README @@ -430,6 +430,10 @@ Patch: 1096_linux-3.10.97.patch From: http://www.kernel.org Desc: Linux 3.10.97 +Patch: 1097_linux-3.10.98.patch +From: http://www.kernel.org +Desc: Linux 3.10.98 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1097_linux-3.10.98.patch b/1097_linux-3.10.98.patch new file mode 100644 index 000..332f8fe --- /dev/null +++ b/1097_linux-3.10.98.patch @@ -0,0 +1,1792 @@ +diff --git a/Makefile b/Makefile +index f26470169c70..dadd1edc6f84 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 97 ++SUBLEVEL = 98 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm/common/icst.c b/arch/arm/common/icst.c +index 2dc6da70ae59..d7ed252708c5 100644 +--- a/arch/arm/common/icst.c b/arch/arm/common/icst.c +@@ -16,7 +16,7 @@ + */ + #include + #include +- ++#include + #include + + /* +@@ -29,7 +29,11 @@ EXPORT_SYMBOL(icst525_s2div); + + unsigned long icst_hz(const struct icst_params *p, struct icst_vco vco) + { +- return p->ref * 2 * (vco.v + 8) / ((vco.r + 2) * p->s2div[vco.s]); ++ u64 dividend = p->ref * 2 * (u64)(vco.v + 8); ++ u32 divisor = (vco.r + 2) * p->s2div[vco.s]; ++ ++ do_div(dividend, divisor); ++ return (unsigned long)dividend; + } + + EXPORT_SYMBOL(icst_hz); +@@ -58,6 +62,7 @@ icst_hz_to_vco(const struct icst_params *p, unsigned long freq) + + if (f > p->vco_min && f <= p->vco_max) + break; ++ i++; + } while (i < 8); + + if (i >= 8) +diff --git a/arch/m32r/kernel/setup.c b/arch/m32r/kernel/setup.c +index 0392112a5d70..a5ecef7188ba 100644 +--- a/arch/m32r/kernel/setup.c b/arch/m32r/kernel/setup.c +@@ -81,7 +81,10 @@ static struct resource code_resource = { + }; + + unsigned long memory_start; ++EXPORT_SYMBOL(memory_start); ++ + unsigned long memory_end; ++EXPORT_SYMBOL(memory_end); + + void __init setup_arch(char **); + int get_cpuinfo(char *); +diff --git a/arch/x86/include/asm/segment.h b/arch/x86/include/asm/segment.h +index c48a95035a77..4dde707a6ff7 100644 +--- a/arch/x86/include/asm/segment.h b/arch/x86/include/asm/segment.h +@@ -212,8 +212,19 @@ + #define TLS_SIZE (GDT_ENTRY_TLS_ENTRIES * 8) + + #ifdef __KERNEL__ ++ ++/* ++ * early_idt_handler_array is an array of entry points referenced in the ++ * early IDT. For simplicity, it's a real array with one entry point ++ * every nine bytes. That leaves room for an optional 'push $0' if the ++ * vector has no error code (two bytes), a 'push $vector_number' (two ++ * bytes), and a jump to the common entry code (up to five bytes). ++ */ ++#define EARLY_IDT_HANDLER_SIZE 9 ++ + #ifndef __ASSEMBLY__ +-extern const char early_idt_handlers[NUM_EXCEPTION_VECTORS][2+2+5]; ++ ++extern const char early_idt_handler_array[NUM_EXCEPTION_VECTORS][EARLY_IDT_HANDLER_SIZE]; + + /* + * Load a segment. Fall back on loading the zero +diff --git a/arch/x86/kernel/head64.c b/arch/x86/kernel/head64.c +index 55b67614ed94..3b861b7661ee 100644 +--- a/arch/x86/kernel/head64.c b/arch/x86/kernel/head64.c +@@ -162,7 +162,7 @@ void __init x86_64_start_kernel(char * real_mode_data) + clear_bss(); + + for (i = 0; i < NUM_EXCEPTION_VECTORS; i++) +- set_intr_gate(i, &early_idt_handlers[i]); ++ set_intr_gate(i, &early_idt_handler_array[i]); + load_idt((const struct desc_ptr *)&idt_descr); + + copy_bootdata(__va(real_mode_data)); +diff --git a/arch/x86/kernel/head_32.S b/arch/x86/kernel/head_32.S +index df63cae573e0..8060c8b95b3a 100644 +--- a/arch/x86/kernel/head_32.S b/arch/x86/kernel/head_32.S +@@ -499,21 +499,22 @@ check_x87: + __INIT + setup_once: + /* +- * Set up a idt with 256 entries pointing to ignore_int, +- * interrupt gates. It doesn't actually load idt - that needs +- * to be done on each CPU. Interrupts are enabled elsewhere, +- * when we can be relatively sure everything is ok. ++ * Set up a idt with 256 interrupt gates that push zero if there ++ * is no error code and then jump to early_idt_handler_common. ++ * It doesn't actually load the idt - that needs to be done on ++ * each CPU. Interrupts are enabled elsewhere, when we can be ++ * relatively sure everything is o
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: e624fc864e3b04b8f5e32b6a5bd3bb094a537039 Author: Mike Pagano gentoo org> AuthorDate: Sat Feb 20 00:06:32 2016 + Commit: Mike Pagano gentoo org> CommitDate: Sat Feb 20 00:06:32 2016 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=e624fc86 Linux patch 3.10.97 _README |4 + 1096_linux-3.10.97.patch | 2341 ++ 2 files changed, 2345 insertions(+) diff --git a/_README b/_README index 19931f8..f3215a3 100644 --- a/_README +++ b/_README @@ -426,6 +426,10 @@ Patch: 1095_linux-3.10.96.patch From: http://www.kernel.org Desc: Linux 3.10.96 +Patch: 1096_linux-3.10.97.patch +From: http://www.kernel.org +Desc: Linux 3.10.97 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1096_linux-3.10.97.patch b/1096_linux-3.10.97.patch new file mode 100644 index 000..487d76e --- /dev/null +++ b/1096_linux-3.10.97.patch @@ -0,0 +1,2341 @@ +diff --git a/Makefile b/Makefile +index c88ea5d8d19c..f26470169c70 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 96 ++SUBLEVEL = 97 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/parisc/include/uapi/asm/mman.h b/arch/parisc/include/uapi/asm/mman.h +index 294d251ca7b2..2ae13ce592e8 100644 +--- a/arch/parisc/include/uapi/asm/mman.h b/arch/parisc/include/uapi/asm/mman.h +@@ -46,16 +46,6 @@ + #define MADV_DONTFORK 10 /* don't inherit across fork */ + #define MADV_DOFORK 11 /* do inherit across fork */ + +-/* The range 12-64 is reserved for page size specification. */ +-#define MADV_4K_PAGES 12 /* Use 4K pages */ +-#define MADV_16K_PAGES 14 /* Use 16K pages */ +-#define MADV_64K_PAGES 16 /* Use 64K pages */ +-#define MADV_256K_PAGES 18 /* Use 256K pages */ +-#define MADV_1M_PAGES 20 /* Use 1 Megabyte pages */ +-#define MADV_4M_PAGES 22 /* Use 4 Megabyte pages */ +-#define MADV_16M_PAGES 24 /* Use 16 Megabyte pages */ +-#define MADV_64M_PAGES 26 /* Use 64 Megabyte pages */ +- + #define MADV_MERGEABLE 65 /* KSM may merge identical pages */ + #define MADV_UNMERGEABLE 66 /* KSM may not merge identical pages */ + +diff --git a/arch/parisc/include/uapi/asm/siginfo.h b/arch/parisc/include/uapi/asm/siginfo.h +index d7034728f377..1c75565d984b 100644 +--- a/arch/parisc/include/uapi/asm/siginfo.h b/arch/parisc/include/uapi/asm/siginfo.h +@@ -1,6 +1,10 @@ + #ifndef _PARISC_SIGINFO_H + #define _PARISC_SIGINFO_H + ++#if defined(__LP64__) ++#define __ARCH_SI_PREAMBLE_SIZE (4 * sizeof(int)) ++#endif ++ + #include + + #undef NSIGTRAP +diff --git a/arch/parisc/kernel/signal.c b/arch/parisc/kernel/signal.c +index 940188d1942c..ae9aa83854c0 100644 +--- a/arch/parisc/kernel/signal.c b/arch/parisc/kernel/signal.c +@@ -449,6 +449,55 @@ handle_signal(unsigned long sig, siginfo_t *info, struct k_sigaction *ka, + regs->gr[28]); + } + ++/* ++ * Check how the syscall number gets loaded into %r20 within ++ * the delay branch in userspace and adjust as needed. ++ */ ++ ++static void check_syscallno_in_delay_branch(struct pt_regs *regs) ++{ ++ u32 opcode, source_reg; ++ u32 __user *uaddr; ++ int err; ++ ++ /* Usually we don't have to restore %r20 (the system call number) ++ * because it gets loaded in the delay slot of the branch external ++ * instruction via the ldi instruction. ++ * In some cases a register-to-register copy instruction might have ++ * been used instead, in which case we need to copy the syscall ++ * number into the source register before returning to userspace. ++ */ ++ ++ /* A syscall is just a branch, so all we have to do is fiddle the ++ * return pointer so that the ble instruction gets executed again. ++ */ ++ regs->gr[31] -= 8; /* delayed branching */ ++ ++ /* Get assembler opcode of code in delay branch */ ++ uaddr = (unsigned int *) ((regs->gr[31] & ~3) + 4); ++ err = get_user(opcode, uaddr); ++ if (err) ++ return; ++ ++ /* Check if delay branch uses "ldi int,%r20" */ ++ if ((opcode & 0x) == 0x3414) ++ return; /* everything ok, just return */ ++ ++ /* Check if delay branch uses "nop" */ ++ if (opcode == INSN_NOP) ++ return; ++ ++ /* Check if delay branch uses "copy %rX,%r20" */ ++ if ((opcode & 0xffe0) == 0x08000254) { ++ source_reg = (opcode >> 16) & 31; ++ regs->gr[source_reg] = regs->gr[20]; ++ return; ++ } ++ ++ pr_warn("syscall restart: %s (pid %d): unexpected opcode 0x%08x\n", ++ current->comm, task_pid_nr(current), opcod
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: b9305a6beafce412577420e88ff20213fd71c7f0 Author: Mike Pagano gentoo org> AuthorDate: Sun Jan 31 23:15:32 2016 + Commit: Mike Pagano gentoo org> CommitDate: Sun Jan 31 23:15:32 2016 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=b9305a6b Linux Patch 3.10.96 _README |4 + 1095_linux-3.10.96.patch | 1497 ++ 2 files changed, 1501 insertions(+) diff --git a/_README b/_README index 0edba9c..19931f8 100644 --- a/_README +++ b/_README @@ -422,6 +422,10 @@ Patch: 1094_linux-3.10.95.patch From: http://www.kernel.org Desc: Linux 3.10.95 +Patch: 1095_linux-3.10.96.patch +From: http://www.kernel.org +Desc: Linux 3.10.96 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1095_linux-3.10.96.patch b/1095_linux-3.10.96.patch new file mode 100644 index 000..6c35ece --- /dev/null +++ b/1095_linux-3.10.96.patch @@ -0,0 +1,1497 @@ +diff --git a/Makefile b/Makefile +index eb120001bc12..c88ea5d8d19c 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 95 ++SUBLEVEL = 96 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm64/kernel/ptrace.c b/arch/arm64/kernel/ptrace.c +index 33a74fc45959..dfad98fda4f8 100644 +--- a/arch/arm64/kernel/ptrace.c b/arch/arm64/kernel/ptrace.c +@@ -51,6 +51,12 @@ + */ + void ptrace_disable(struct task_struct *child) + { ++ /* ++ * This would be better off in core code, but PTRACE_DETACH has ++ * grown its fair share of arch-specific worts and changing it ++ * is likely to cause regressions on obscure architectures. ++ */ ++ user_disable_single_step(child); + } + + /* +diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c +index ba7477efad5c..5b77586ef0af 100644 +--- a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c +@@ -348,6 +348,9 @@ void __init paging_init(void) + + empty_zero_page = virt_to_page(zero_page); + ++ /* Ensure the zero page is visible to the page table walker */ ++ dsb(); ++ + /* +* TTBR0 is only used for the identity mapping at this stage. Make it +* point to zero page to avoid speculatively fetching new entries. +diff --git a/arch/mn10300/Kconfig b/arch/mn10300/Kconfig +index 428da175d073..31b91602f055 100644 +--- a/arch/mn10300/Kconfig b/arch/mn10300/Kconfig +@@ -2,6 +2,7 @@ config MN10300 + def_bool y + select HAVE_OPROFILE + select HAVE_GENERIC_HARDIRQS ++ select HAVE_UID16 + select GENERIC_IRQ_SHOW + select ARCH_WANT_IPC_PARSE_VERSION + select HAVE_ARCH_TRACEHOOK +@@ -37,9 +38,6 @@ config HIGHMEM + config NUMA + def_bool n + +-config UID16 +- def_bool y +- + config RWSEM_GENERIC_SPINLOCK + def_bool y + +diff --git a/arch/openrisc/Kconfig b/arch/openrisc/Kconfig +index 1072bfd18c50..f4dd44a7118f 100644 +--- a/arch/openrisc/Kconfig b/arch/openrisc/Kconfig +@@ -17,6 +17,7 @@ config OPENRISC + select GENERIC_IRQ_SHOW + select GENERIC_IOMAP + select GENERIC_CPU_DEVICES ++ select HAVE_UID16 + select GENERIC_ATOMIC64 + select GENERIC_CLOCKEVENTS + select GENERIC_STRNCPY_FROM_USER +@@ -29,9 +30,6 @@ config MMU + config HAVE_DMA_ATTRS + def_bool y + +-config UID16 +- def_bool y +- + config RWSEM_GENERIC_SPINLOCK + def_bool y + +diff --git a/arch/powerpc/include/asm/cmpxchg.h b/arch/powerpc/include/asm/cmpxchg.h +index e245aab7f191..95b515113186 100644 +--- a/arch/powerpc/include/asm/cmpxchg.h b/arch/powerpc/include/asm/cmpxchg.h +@@ -18,12 +18,12 @@ __xchg_u32(volatile void *p, unsigned long val) + unsigned long prev; + + __asm__ __volatile__( +- PPC_RELEASE_BARRIER ++ PPC_ATOMIC_ENTRY_BARRIER + "1: lwarx %0,0,%2 \n" + PPC405_ERR77(0,%2) + " stwcx. %3,0,%2 \n\ + bne-1b" +- PPC_ACQUIRE_BARRIER ++ PPC_ATOMIC_EXIT_BARRIER + : "=&r" (prev), "+m" (*(volatile unsigned int *)p) + : "r" (p), "r" (val) + : "cc", "memory"); +@@ -61,12 +61,12 @@ __xchg_u64(volatile void *p, unsigned long val) + unsigned long prev; + + __asm__ __volatile__( +- PPC_RELEASE_BARRIER ++ PPC_ATOMIC_ENTRY_BARRIER + "1: ldarx %0,0,%2 \n" + PPC405_ERR77(0,%2) + " stdcx. %3,0,%2 \n\ + bne-1b" +- PPC_ACQUIRE_BARRIER ++ PPC_ATOMIC_EXIT_BARRIER + : "=&r" (prev), "+m" (*(volatile unsigned long *)p) + : "r" (p), "r" (val) + : "cc", "memory"); +@@ -152,14 +152,14 @@ __cmpxchg_u32(volatile unsigned int *p, unsigned long old, unsigned long new) + unsigned int prev; + + __asm__ __volatile__ ( +- PPC_RELEASE_BARRIER ++ PPC_ATOMIC_ENTRY_BARRIER + "1: lwarx %0,0,%2 # __cmpxchg_u32\n\ + cmpw0,%0,%3\n\
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: c7afc13edd79042c67384e6a4b919d2da3e302d8 Author: Mike Pagano gentoo org> AuthorDate: Sat Jan 23 18:26:40 2016 + Commit: Mike Pagano gentoo org> CommitDate: Sat Jan 23 18:26:40 2016 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=c7afc13e Linux 3.10.95. Includes patch for CVE-2016-0728 _README |4 + 1094_linux-3.10.95.patch | 1222 ++ 2 files changed, 1226 insertions(+) diff --git a/_README b/_README index a9b48f6..0edba9c 100644 --- a/_README +++ b/_README @@ -418,6 +418,10 @@ Patch: 1093_linux-3.10.94.patch From: http://www.kernel.org Desc: Linux 3.10.94 +Patch: 1094_linux-3.10.95.patch +From: http://www.kernel.org +Desc: Linux 3.10.95 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1094_linux-3.10.95.patch b/1094_linux-3.10.95.patch new file mode 100644 index 000..199647c --- /dev/null +++ b/1094_linux-3.10.95.patch @@ -0,0 +1,1222 @@ +diff --git a/Makefile b/Makefile +index f73ae0748cbc..eb120001bc12 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 94 ++SUBLEVEL = 95 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/drivers/firewire/ohci.c b/drivers/firewire/ohci.c +index 0f3e3047e29c..14ca13a0698b 100644 +--- a/drivers/firewire/ohci.c b/drivers/firewire/ohci.c +@@ -3670,6 +3670,11 @@ static int pci_probe(struct pci_dev *dev, + + reg_write(ohci, OHCI1394_IsoXmitIntMaskSet, ~0); + ohci->it_context_support = reg_read(ohci, OHCI1394_IsoXmitIntMaskSet); ++ /* JMicron JMB38x often shows 0 at first read, just ignore it */ ++ if (!ohci->it_context_support) { ++ ohci_notice(ohci, "overriding IsoXmitIntMask\n"); ++ ohci->it_context_support = 0xf; ++ } + reg_write(ohci, OHCI1394_IsoXmitIntMaskClear, ~0); + ohci->it_context_mask = ohci->it_context_support; + ohci->n_it = hweight32(ohci->it_context_mask); +diff --git a/drivers/net/ethernet/atheros/atl1c/atl1c_main.c b/drivers/net/ethernet/atheros/atl1c/atl1c_main.c +index 11cdf1d43041..297c3e5ec3f3 100644 +--- a/drivers/net/ethernet/atheros/atl1c/atl1c_main.c b/drivers/net/ethernet/atheros/atl1c/atl1c_main.c +@@ -1016,13 +1016,12 @@ static int atl1c_setup_ring_resources(struct atl1c_adapter *adapter) + sizeof(struct atl1c_recv_ret_status) * rx_desc_count + + 8 * 4; + +- ring_header->desc = pci_alloc_consistent(pdev, ring_header->size, +- &ring_header->dma); ++ ring_header->desc = dma_zalloc_coherent(&pdev->dev, ring_header->size, ++ &ring_header->dma, GFP_KERNEL); + if (unlikely(!ring_header->desc)) { +- dev_err(&pdev->dev, "pci_alloc_consistend failed\n"); ++ dev_err(&pdev->dev, "could not get memory for DMA buffer\n"); + goto err_nomem; + } +- memset(ring_header->desc, 0, ring_header->size); + /* init TPD ring */ + + tpd_ring[0].dma = roundup(ring_header->dma, 8); +diff --git a/drivers/net/ethernet/renesas/sh_eth.c b/drivers/net/ethernet/renesas/sh_eth.c +index e29fe8dbd226..b93a0fb17236 100644 +--- a/drivers/net/ethernet/renesas/sh_eth.c b/drivers/net/ethernet/renesas/sh_eth.c +@@ -1421,6 +1421,7 @@ static int sh_eth_rx(struct net_device *ndev, u32 intr_status) + desc_status >>= 16; + #endif + ++ skb = mdp->rx_skbuff[entry]; + if (desc_status & (RD_RFS1 | RD_RFS2 | RD_RFS3 | RD_RFS4 | + RD_RFS5 | RD_RFS6 | RD_RFS10)) { + ndev->stats.rx_errors++; +@@ -1436,12 +1437,11 @@ static int sh_eth_rx(struct net_device *ndev, u32 intr_status) + ndev->stats.rx_missed_errors++; + if (desc_status & RD_RFS10) + ndev->stats.rx_over_errors++; +- } else { ++ } else if (skb) { + if (!mdp->cd->hw_swap) + sh_eth_soft_swap( + phys_to_virt(ALIGN(rxdesc->addr, 4)), + pkt_len + 2); +- skb = mdp->rx_skbuff[entry]; + mdp->rx_skbuff[entry] = NULL; + if (mdp->cd->rpadir) + skb_reserve(skb, NET_IP_ALIGN); +diff --git a/drivers/net/phy/broadcom.c b/drivers/net/phy/broadcom.c +index f8c90ea75108..7a1ff5797f12 100644 +--- a/drivers/net/phy/broadcom.c b/drivers/net/phy/broadcom.c +@@ -848,7 +848,7 @@ static struct mdio_device_id __maybe_unused broadcom_tbl[] = { + { PHY_ID_BCM5421, 0xfff0 }, + { PHY_ID_BCM5461, 0xfff0 }, + { PHY_ID_BCM5464, 0x
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 4fe512fa7c50529ee296f5cfb98662ebd146ee7b Author: Mike Pagano gentoo org> AuthorDate: Thu Dec 10 13:49:26 2015 + Commit: Mike Pagano gentoo org> CommitDate: Thu Dec 10 13:49:26 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=4fe512fa Linux patch 3.10.94 _README | 4 + 1093_linux-3.10.94.patch | 724 +++ 2 files changed, 728 insertions(+) diff --git a/_README b/_README index 5c1813e..a9b48f6 100644 --- a/_README +++ b/_README @@ -414,6 +414,10 @@ Patch: 1092_linux-3.10.93.patch From: http://www.kernel.org Desc: Linux 3.10.93 +Patch: 1093_linux-3.10.94.patch +From: http://www.kernel.org +Desc: Linux 3.10.94 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1093_linux-3.10.94.patch b/1093_linux-3.10.94.patch new file mode 100644 index 000..cd9c4a9 --- /dev/null +++ b/1093_linux-3.10.94.patch @@ -0,0 +1,724 @@ +diff --git a/Makefile b/Makefile +index 6944160a5631..f73ae0748cbc 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 93 ++SUBLEVEL = 94 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm/mm/dma-mapping.c b/arch/arm/mm/dma-mapping.c +index 8ca636cf8618..1a00c33a5b7e 100644 +--- a/arch/arm/mm/dma-mapping.c b/arch/arm/mm/dma-mapping.c +@@ -1355,12 +1355,19 @@ static int arm_iommu_mmap_attrs(struct device *dev, struct vm_area_struct *vma, + unsigned long uaddr = vma->vm_start; + unsigned long usize = vma->vm_end - vma->vm_start; + struct page **pages = __iommu_get_pages(cpu_addr, attrs); ++ unsigned long nr_pages = PAGE_ALIGN(size) >> PAGE_SHIFT; ++ unsigned long off = vma->vm_pgoff; + + vma->vm_page_prot = __get_dma_pgprot(attrs, vma->vm_page_prot); + + if (!pages) + return -ENXIO; + ++ if (off >= nr_pages || (usize >> PAGE_SHIFT) > nr_pages - off) ++ return -ENXIO; ++ ++ pages += off; ++ + do { + int ret = vm_insert_page(vma, uaddr, *pages++); + if (ret) { +diff --git a/arch/arm/plat-orion/common.c b/arch/arm/plat-orion/common.c +index c019b7aaf776..553e00a432ec 100644 +--- a/arch/arm/plat-orion/common.c b/arch/arm/plat-orion/common.c +@@ -498,7 +498,7 @@ void __init orion_ge00_switch_init(struct dsa_platform_data *d, int irq) + + d->netdev = &orion_ge00.dev; + for (i = 0; i < d->nr_chips; i++) +- d->chip[i].mii_bus = &orion_ge00_shared.dev; ++ d->chip[i].mii_bus = &orion_ge_mvmdio.dev; + orion_switch_device.dev.platform_data = d; + + platform_device_register(&orion_switch_device); +diff --git a/arch/arm64/include/asm/ptrace.h b/arch/arm64/include/asm/ptrace.h +index 41a71ee4c3df..7257c364eb99 100644 +--- a/arch/arm64/include/asm/ptrace.h b/arch/arm64/include/asm/ptrace.h +@@ -70,14 +70,14 @@ + #define compat_sp regs[13] + #define compat_lr regs[14] + #define compat_sp_hyp regs[15] +-#define compat_sp_irq regs[16] +-#define compat_lr_irq regs[17] +-#define compat_sp_svc regs[18] +-#define compat_lr_svc regs[19] +-#define compat_sp_abt regs[20] +-#define compat_lr_abt regs[21] +-#define compat_sp_und regs[22] +-#define compat_lr_und regs[23] ++#define compat_lr_irq regs[16] ++#define compat_sp_irq regs[17] ++#define compat_lr_svc regs[18] ++#define compat_sp_svc regs[19] ++#define compat_lr_abt regs[20] ++#define compat_sp_abt regs[21] ++#define compat_lr_und regs[22] ++#define compat_sp_und regs[23] + #define compat_r8_fiq regs[24] + #define compat_r9_fiq regs[25] + #define compat_r10_fiqregs[26] +diff --git a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c +index 564140155c36..81e0fe48b9b0 100644 +--- a/arch/x86/kernel/cpu/common.c b/arch/x86/kernel/cpu/common.c +@@ -280,10 +280,9 @@ __setup("nosmap", setup_disable_smap); + + static __always_inline void setup_smap(struct cpuinfo_x86 *c) + { +- unsigned long eflags; ++ unsigned long eflags = native_save_fl(); + + /* This should have been cleared long ago */ +- raw_local_save_flags(eflags); + BUG_ON(eflags & X86_EFLAGS_AC); + + if (cpu_has(c, X86_FEATURE_SMAP)) { +diff --git a/arch/x86/kernel/head_64.S b/arch/x86/kernel/head_64.S +index f2a9a2aa98f3..3280489905a8 100644 +--- a/arch/x86/kernel/head_64.S b/arch/x86/kernel/head_64.S +@@ -65,6 +65,9 @@ startup_64: +* tables and then reload them. +*/ + ++ /* Sanitize CPU configuration */ ++ call verify_cpu ++ + /* +* Compute the delta between the address I am compiled to run at and the +* address I am actually running at. +@@ -174,6 +177,9 @@ ENTRY(secondary_startup_64) +* after the boot processor executes this code. +*/ + ++ /* Sanitize CPU configurat
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: aa767029701e4b0d75705a0bd80e9dc84793b81a Author: Mike Pagano gentoo org> AuthorDate: Mon Nov 9 23:38:53 2015 + Commit: Mike Pagano gentoo org> CommitDate: Mon Nov 9 23:38:53 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=aa767029 Linux patch 3.10.93 _README | 4 + 1092_linux-3.10.93.patch | 645 +++ 2 files changed, 649 insertions(+) diff --git a/_README b/_README index b2a3944..5c1813e 100644 --- a/_README +++ b/_README @@ -410,6 +410,10 @@ Patch: 1091_linux-3.10.92.patch From: http://www.kernel.org Desc: Linux 3.10.92 +Patch: 1092_linux-3.10.93.patch +From: http://www.kernel.org +Desc: Linux 3.10.93 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1092_linux-3.10.93.patch b/1092_linux-3.10.93.patch new file mode 100644 index 000..b4317e6 --- /dev/null +++ b/1092_linux-3.10.93.patch @@ -0,0 +1,645 @@ +diff --git a/Makefile b/Makefile +index 25701b67bb6d..6944160a5631 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 92 ++SUBLEVEL = 93 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm64/kernel/stacktrace.c b/arch/arm64/kernel/stacktrace.c +index 048334bb2651..d25459ff57fc 100644 +--- a/arch/arm64/kernel/stacktrace.c b/arch/arm64/kernel/stacktrace.c +@@ -48,11 +48,7 @@ int unwind_frame(struct stackframe *frame) + + frame->sp = fp + 0x10; + frame->fp = *(unsigned long *)(fp); +- /* +- * -4 here because we care about the PC at time of bl, +- * not where the return will go. +- */ +- frame->pc = *(unsigned long *)(fp + 8) - 4; ++ frame->pc = *(unsigned long *)(fp + 8); + + return 0; + } +diff --git a/arch/powerpc/kernel/rtas.c b/arch/powerpc/kernel/rtas.c +index f956a2f84a15..8d3722af6187 100644 +--- a/arch/powerpc/kernel/rtas.c b/arch/powerpc/kernel/rtas.c +@@ -1041,6 +1041,9 @@ asmlinkage int ppc_rtas(struct rtas_args __user *uargs) + if (!capable(CAP_SYS_ADMIN)) + return -EPERM; + ++ if (!rtas.entry) ++ return -EINVAL; ++ + if (copy_from_user(&args, uargs, 3 * sizeof(u32)) != 0) + return -EFAULT; + +diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c +index 511630db00a8..91cbe75a91d5 100644 +--- a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c +@@ -33,7 +33,7 @@ + #include + #include + +-#ifdef CONFIG_KEXEC_CORE ++#ifdef CONFIG_KEXEC + #include + #endif + +@@ -1748,7 +1748,7 @@ static struct notifier_block xen_hvm_cpu_notifier __cpuinitdata = { + .notifier_call = xen_hvm_cpu_notify, + }; + +-#ifdef CONFIG_KEXEC_CORE ++#ifdef CONFIG_KEXEC + static void xen_hvm_shutdown(void) + { + native_machine_shutdown(); +@@ -1777,7 +1777,7 @@ static void __init xen_hvm_guest_init(void) + x86_init.irqs.intr_init = xen_init_IRQ; + xen_hvm_init_time_ops(); + xen_hvm_init_mmu_ops(); +-#ifdef CONFIG_KEXEC_CORE ++#ifdef CONFIG_KEXEC + machine_ops.shutdown = xen_hvm_shutdown; + machine_ops.crash_shutdown = xen_hvm_crash_shutdown; + #endif +diff --git a/crypto/ablkcipher.c b/crypto/ablkcipher.c +index 7d4a8d28277e..ebcec7439a1a 100644 +--- a/crypto/ablkcipher.c b/crypto/ablkcipher.c +@@ -700,7 +700,7 @@ struct crypto_ablkcipher *crypto_alloc_ablkcipher(const char *alg_name, + err: + if (err != -EAGAIN) + break; +- if (signal_pending(current)) { ++ if (fatal_signal_pending(current)) { + err = -EINTR; + break; + } +diff --git a/crypto/algapi.c b/crypto/algapi.c +index 00d8d939733b..daf2f653b131 100644 +--- a/crypto/algapi.c b/crypto/algapi.c +@@ -325,7 +325,7 @@ static void crypto_wait_for_test(struct crypto_larval *larval) + crypto_alg_tested(larval->alg.cra_driver_name, 0); + } + +- err = wait_for_completion_interruptible(&larval->completion); ++ err = wait_for_completion_killable(&larval->completion); + WARN_ON(err); + + out: +diff --git a/crypto/api.c b/crypto/api.c +index 335abea14f19..36a0d4602eba 100644 +--- a/crypto/api.c b/crypto/api.c +@@ -172,7 +172,7 @@ static struct crypto_alg *crypto_larval_wait(struct crypto_alg *alg) + struct crypto_larval *larval = (void *)alg; + long timeout; + +- timeout = wait_for_completion_interruptible_timeout( ++ timeout = wait_for_completion_killable_timeout( + &larval->completion, 60 * HZ); + + alg = larval->adult; +@@ -435,7 +435,7 @@ struct crypto_tfm *crypto_alloc_base(const char *alg_name, u32 type, u32 mask) + err: + if (err != -EAGAIN) + break; +- if (signal_pending(current)) { ++
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 81add174d3383b65dd28e1ce3ad998e75aed350f Author: Mike Pagano gentoo org> AuthorDate: Tue Oct 27 13:41:19 2015 + Commit: Mike Pagano gentoo org> CommitDate: Tue Oct 27 13:41:19 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=81add174 Linux patch 3.10.92 _README | 4 + 1091_linux-3.10.92.patch | 413 +++ 2 files changed, 417 insertions(+) diff --git a/_README b/_README index 15d5f51..b2a3944 100644 --- a/_README +++ b/_README @@ -406,6 +406,10 @@ Patch: 1090_linux-3.10.91.patch From: http://www.kernel.org Desc: Linux 3.10.91 +Patch: 1091_linux-3.10.92.patch +From: http://www.kernel.org +Desc: Linux 3.10.92 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1091_linux-3.10.92.patch b/1091_linux-3.10.92.patch new file mode 100644 index 000..ac354e3 --- /dev/null +++ b/1091_linux-3.10.92.patch @@ -0,0 +1,413 @@ +diff --git a/Makefile b/Makefile +index ba6a94cf354b..25701b67bb6d 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 91 ++SUBLEVEL = 92 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/m68k/include/asm/uaccess_mm.h b/arch/m68k/include/asm/uaccess_mm.h +index 472c891a4aee..15901db435b9 100644 +--- a/arch/m68k/include/asm/uaccess_mm.h b/arch/m68k/include/asm/uaccess_mm.h +@@ -90,7 +90,7 @@ asm volatile ("\n" \ + __put_user_asm(__pu_err, __pu_val, ptr, b, d, -EFAULT); \ + break; \ + case 2: \ +- __put_user_asm(__pu_err, __pu_val, ptr, w, d, -EFAULT); \ ++ __put_user_asm(__pu_err, __pu_val, ptr, w, r, -EFAULT); \ + break; \ + case 4: \ + __put_user_asm(__pu_err, __pu_val, ptr, l, r, -EFAULT); \ +@@ -158,7 +158,7 @@ asm volatile ("\n" \ + __get_user_asm(__gu_err, x, ptr, u8, b, d, -EFAULT);\ + break; \ + case 2: \ +- __get_user_asm(__gu_err, x, ptr, u16, w, d, -EFAULT); \ ++ __get_user_asm(__gu_err, x, ptr, u16, w, r, -EFAULT); \ + break; \ + case 4: \ + __get_user_asm(__gu_err, x, ptr, u32, l, r, -EFAULT); \ +@@ -245,7 +245,7 @@ __constant_copy_from_user(void *to, const void __user *from, unsigned long n) + __get_user_asm(res, *(u8 *)to, (u8 __user *)from, u8, b, d, 1); + break; + case 2: +- __get_user_asm(res, *(u16 *)to, (u16 __user *)from, u16, w, d, 2); ++ __get_user_asm(res, *(u16 *)to, (u16 __user *)from, u16, w, r, 2); + break; + case 3: + __constant_copy_from_user_asm(res, to, from, tmp, 3, w, b,); +@@ -326,7 +326,7 @@ __constant_copy_to_user(void __user *to, const void *from, unsigned long n) + __put_user_asm(res, *(u8 *)from, (u8 __user *)to, b, d, 1); + break; + case 2: +- __put_user_asm(res, *(u16 *)from, (u16 __user *)to, w, d, 2); ++ __put_user_asm(res, *(u16 *)from, (u16 __user *)to, w, r, 2); + break; + case 3: + __constant_copy_to_user_asm(res, to, from, tmp, 3, w, b,); +diff --git a/arch/m68k/lib/uaccess.c b/arch/m68k/lib/uaccess.c +index 5e97f2ee7c11..35d1442dee89 100644 +--- a/arch/m68k/lib/uaccess.c b/arch/m68k/lib/uaccess.c +@@ -52,7 +52,7 @@ unsigned long __generic_copy_from_user(void *to, const void __user *from, + " .long 3b,30b\n" + " .long 5b,50b\n" + " .previous" +- : "=d" (res), "+a" (from), "+a" (to), "=&r" (tmp) ++ : "=d" (res), "+a" (from), "+a" (to), "=&d" (tmp) + : "0" (n / 4), "d" (n & 3)); + + return res; +@@ -96,7 +96,7 @@ unsigned long __generic_copy_to_user(void __user *to, const void *from, + " .long 7b,50b\n" + " .long 8b,50b\n" + " .previous" +- : "=d" (res), "+a" (from), "+a" (to), "=&r" (tmp) ++ : "=d" (res), "+a" (from), "+a" (to), "=&d" (tmp) + : "0" (n / 4), "d" (n & 3)); + + return res; +@@ -141,7 +141,7 @@ unsigned long __clear_user(void __user *to, unsigned long n) + " .long 7b,40b\n" + " .p
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: e9d11b41faa5c31e2f5d49759dbc78d9ebd4f050 Author: Mike Pagano gentoo org> AuthorDate: Fri Oct 23 22:49:49 2015 + Commit: Mike Pagano gentoo org> CommitDate: Fri Oct 23 22:49:49 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=e9d11b41 Linux patch 3.10.91 _README |4 + 1090_linux-3.10.91.patch | 1875 ++ 2 files changed, 1879 insertions(+) diff --git a/_README b/_README index 1a0d13e..15d5f51 100644 --- a/_README +++ b/_README @@ -402,6 +402,10 @@ Patch: 1089_linux-3.10.90.patch From: http://www.kernel.org Desc: Linux 3.10.90 +Patch: 1090_linux-3.10.91.patch +From: http://www.kernel.org +Desc: Linux 3.10.91 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1090_linux-3.10.91.patch b/1090_linux-3.10.91.patch new file mode 100644 index 000..61c930c --- /dev/null +++ b/1090_linux-3.10.91.patch @@ -0,0 +1,1875 @@ +diff --git a/Makefile b/Makefile +index ce741a9f5b1c..ba6a94cf354b 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 90 ++SUBLEVEL = 91 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm/Makefile b/arch/arm/Makefile +index 1ba358ba16b8..7d4ce431107b 100644 +--- a/arch/arm/Makefile b/arch/arm/Makefile +@@ -55,6 +55,14 @@ endif + + comma = , + ++# ++# The Scalar Replacement of Aggregates (SRA) optimization pass in GCC 4.9 and ++# later may result in code being generated that handles signed short and signed ++# char struct members incorrectly. So disable it. ++# (https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65932) ++# ++KBUILD_CFLAGS += $(call cc-option,-fno-ipa-sra) ++ + # This selects which instruction set is used. + # Note that GCC does not numerically define an architecture version + # macro, but instead defines a whole series of macros which makes +diff --git a/arch/arm64/mm/fault.c b/arch/arm64/mm/fault.c +index b5d458769b65..250319040de2 100644 +--- a/arch/arm64/mm/fault.c b/arch/arm64/mm/fault.c +@@ -278,6 +278,7 @@ retry: +* starvation. +*/ + mm_flags &= ~FAULT_FLAG_ALLOW_RETRY; ++ mm_flags |= FAULT_FLAG_TRIED; + goto retry; + } + } +diff --git a/arch/m68k/include/asm/linkage.h b/arch/m68k/include/asm/linkage.h +index 5a822bb790f7..066e74f666ae 100644 +--- a/arch/m68k/include/asm/linkage.h b/arch/m68k/include/asm/linkage.h +@@ -4,4 +4,34 @@ + #define __ALIGN .align 4 + #define __ALIGN_STR ".align 4" + ++/* ++ * Make sure the compiler doesn't do anything stupid with the ++ * arguments on the stack - they are owned by the *caller*, not ++ * the callee. This just fools gcc into not spilling into them, ++ * and keeps it from doing tailcall recursion and/or using the ++ * stack slots for temporaries, since they are live and "used" ++ * all the way to the end of the function. ++ */ ++#define asmlinkage_protect(n, ret, args...) \ ++ __asmlinkage_protect##n(ret, ##args) ++#define __asmlinkage_protect_n(ret, args...) \ ++ __asm__ __volatile__ ("" : "=r" (ret) : "0" (ret), ##args) ++#define __asmlinkage_protect0(ret) \ ++ __asmlinkage_protect_n(ret) ++#define __asmlinkage_protect1(ret, arg1) \ ++ __asmlinkage_protect_n(ret, "m" (arg1)) ++#define __asmlinkage_protect2(ret, arg1, arg2) \ ++ __asmlinkage_protect_n(ret, "m" (arg1), "m" (arg2)) ++#define __asmlinkage_protect3(ret, arg1, arg2, arg3) \ ++ __asmlinkage_protect_n(ret, "m" (arg1), "m" (arg2), "m" (arg3)) ++#define __asmlinkage_protect4(ret, arg1, arg2, arg3, arg4) \ ++ __asmlinkage_protect_n(ret, "m" (arg1), "m" (arg2), "m" (arg3), \ ++"m" (arg4)) ++#define __asmlinkage_protect5(ret, arg1, arg2, arg3, arg4, arg5) \ ++ __asmlinkage_protect_n(ret, "m" (arg1), "m" (arg2), "m" (arg3), \ ++"m" (arg4), "m" (arg5)) ++#define __asmlinkage_protect6(ret, arg1, arg2, arg3, arg4, arg5, arg6) \ ++ __asmlinkage_protect_n(ret, "m" (arg1), "m" (arg2), "m" (arg3), \ ++"m" (arg4), "m" (arg5), "m" (arg6)) ++ + #endif +diff --git a/arch/mips/mm/dma-default.c b/arch/mips/mm/dma-default.c +index 23129d1005db..5fa55b80b7b6 100644 +--- a/arch/mips/mm/dma-default.c b/arch/mips/mm/dma-default.c +@@ -91,7 +91,7 @@ static gfp_t massage_gfp_flags(const struct device *dev, gfp_t gfp) + else + #endif + #if defined(CONFIG_ZONE_DMA) && !defined(CONFIG_ZONE_DMA32) +- if (dev->coherent_dma_mask < DMA_BIT_MASK(64)) ++ if (dev->coherent_dma_mask < DMA_BIT_MASK(sizeof(phys_addr_t) * 8)) + dma_flag = __GFP_DMA; + else + #endif +diff --git a/arch/powerpc/platforms/powernv/pci.c b/arch/powerpc/platforms/powernv/pci.c +inde
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: ecbcbadac50cb64adb3f10a399e0a77d53228854 Author: Mike Pagano gentoo org> AuthorDate: Tue Oct 13 02:04:58 2015 + Commit: Mike Pagano gentoo org> CommitDate: Tue Oct 13 02:04:58 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=ecbcbada Linux patch 3.10.90 _README |4 + 1089_linux-3.10.90.patch | 2146 ++ 2 files changed, 2150 insertions(+) diff --git a/_README b/_README index 2d39ba5..1a0d13e 100644 --- a/_README +++ b/_README @@ -398,6 +398,10 @@ Patch: 1088_linux-3.10.89.patch From: http://www.kernel.org Desc: Linux 3.10.89 +Patch: 1089_linux-3.10.90.patch +From: http://www.kernel.org +Desc: Linux 3.10.90 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1089_linux-3.10.90.patch b/1089_linux-3.10.90.patch new file mode 100644 index 000..d5611b8 --- /dev/null +++ b/1089_linux-3.10.90.patch @@ -0,0 +1,2146 @@ +diff --git a/Makefile b/Makefile +index ca82393e1eea..ce741a9f5b1c 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 89 ++SUBLEVEL = 90 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig +index 0677ff4814fa..661ccf87b9ad 100644 +--- a/arch/arm64/Kconfig b/arch/arm64/Kconfig +@@ -56,6 +56,10 @@ config NO_IOPORT + config STACKTRACE_SUPPORT + def_bool y + ++config ILLEGAL_POINTER_VALUE ++ hex ++ default 0xdead ++ + config LOCKDEP_SUPPORT + def_bool y + +diff --git a/arch/arm64/kernel/head.S b/arch/arm64/kernel/head.S +index 53dcae49e729..f480e7d6e8b2 100644 +--- a/arch/arm64/kernel/head.S b/arch/arm64/kernel/head.S +@@ -184,6 +184,11 @@ ENTRY(el2_setup) + msr hstr_el2, xzr // Disable CP15 traps to EL2 + #endif + ++ /* EL2 debug */ ++ mrs x0, pmcr_el0// Disable debug access traps ++ ubfxx0, x0, #11, #5 // to EL2 and allow access to ++ msr mdcr_el2, x0// all PMU counters from EL1 ++ + /* Stage-2 translation */ + msr vttbr_el2, xzr + +diff --git a/arch/arm64/kernel/signal32.c b/arch/arm64/kernel/signal32.c +index b9564b8d6bab..1e60acc6a4d7 100644 +--- a/arch/arm64/kernel/signal32.c b/arch/arm64/kernel/signal32.c +@@ -231,14 +231,32 @@ int copy_siginfo_from_user32(siginfo_t *to, compat_siginfo_t __user *from) + + /* + * VFP save/restore code. ++ * ++ * We have to be careful with endianness, since the fpsimd context-switch ++ * code operates on 128-bit (Q) register values whereas the compat ABI ++ * uses an array of 64-bit (D) registers. Consequently, we need to swap ++ * the two halves of each Q register when running on a big-endian CPU. + */ ++union __fpsimd_vreg { ++ __uint128_t raw; ++ struct { ++#ifdef __AARCH64EB__ ++ u64 hi; ++ u64 lo; ++#else ++ u64 lo; ++ u64 hi; ++#endif ++ }; ++}; ++ + static int compat_preserve_vfp_context(struct compat_vfp_sigframe __user *frame) + { + struct fpsimd_state *fpsimd = ¤t->thread.fpsimd_state; + compat_ulong_t magic = VFP_MAGIC; + compat_ulong_t size = VFP_STORAGE_SIZE; + compat_ulong_t fpscr, fpexc; +- int err = 0; ++ int i, err = 0; + + /* +* Save the hardware registers to the fpsimd_state structure. +@@ -254,10 +272,15 @@ static int compat_preserve_vfp_context(struct compat_vfp_sigframe __user *frame) + /* +* Now copy the FP registers. Since the registers are packed, +* we can copy the prefix we want (V0-V15) as it is. +- * FIXME: Won't work if big endian. +*/ +- err |= __copy_to_user(&frame->ufp.fpregs, fpsimd->vregs, +-sizeof(frame->ufp.fpregs)); ++ for (i = 0; i < ARRAY_SIZE(frame->ufp.fpregs); i += 2) { ++ union __fpsimd_vreg vreg = { ++ .raw = fpsimd->vregs[i >> 1], ++ }; ++ ++ __put_user_error(vreg.lo, &frame->ufp.fpregs[i], err); ++ __put_user_error(vreg.hi, &frame->ufp.fpregs[i + 1], err); ++ } + + /* Create an AArch32 fpscr from the fpsr and the fpcr. */ + fpscr = (fpsimd->fpsr & VFP_FPSCR_STAT_MASK) | +@@ -282,7 +305,7 @@ static int compat_restore_vfp_context(struct compat_vfp_sigframe __user *frame) + compat_ulong_t magic = VFP_MAGIC; + compat_ulong_t size = VFP_STORAGE_SIZE; + compat_ulong_t fpscr; +- int err = 0; ++ int i, err = 0; + + __get_user_error(magic, &frame->magic, err); + __get_user_error(size, &frame->size, err); +@@ -292,12 +315,14 @@ static int compat_restore_vfp_context(struct compat_vfp_sigframe __user *frame) + if (magic != VFP_MAGIC ||
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 0b50229c6cfa46b016839ffc0fe426f6a06ce213 Author: Mike Pagano gentoo org> AuthorDate: Mon Sep 21 17:23:36 2015 + Commit: Mike Pagano gentoo org> CommitDate: Mon Sep 21 17:23:36 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=0b50229c Linux patch 3.10.89 _README | 4 + 1088_linux-3.10.89.patch | 661 +++ 2 files changed, 665 insertions(+) diff --git a/_README b/_README index ad2e99c..2d39ba5 100644 --- a/_README +++ b/_README @@ -394,6 +394,10 @@ Patch: 1087_linux-3.10.88.patch From: http://www.kernel.org Desc: Linux 3.10.88 +Patch: 1088_linux-3.10.89.patch +From: http://www.kernel.org +Desc: Linux 3.10.89 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1088_linux-3.10.89.patch b/1088_linux-3.10.89.patch new file mode 100644 index 000..cb2dc79 --- /dev/null +++ b/1088_linux-3.10.89.patch @@ -0,0 +1,661 @@ +diff --git a/Makefile b/Makefile +index e94ce68ecf87..ca82393e1eea 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 88 ++SUBLEVEL = 89 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/x86/crypto/ghash-clmulni-intel_glue.c b/arch/x86/crypto/ghash-clmulni-intel_glue.c +index a8d6f69f92a3..4bcf841e4701 100644 +--- a/arch/x86/crypto/ghash-clmulni-intel_glue.c b/arch/x86/crypto/ghash-clmulni-intel_glue.c +@@ -291,6 +291,7 @@ static struct ahash_alg ghash_async_alg = { + .cra_name = "ghash", + .cra_driver_name= "ghash-clmulni", + .cra_priority = 400, ++ .cra_ctxsize= sizeof(struct ghash_async_ctx), + .cra_flags = CRYPTO_ALG_TYPE_AHASH | CRYPTO_ALG_ASYNC, + .cra_blocksize = GHASH_BLOCK_SIZE, + .cra_type = &crypto_ahash_type, +diff --git a/arch/xtensa/Makefile b/arch/xtensa/Makefile +index 136224b74d4f..81250ece3062 100644 +--- a/arch/xtensa/Makefile b/arch/xtensa/Makefile +@@ -55,10 +55,10 @@ ifneq ($(CONFIG_LD_NO_RELAX),) + LDFLAGS := --no-relax + endif + +-ifeq ($(shell echo -e __XTENSA_EB__ | $(CC) -E - | grep -v "\#"),1) ++ifeq ($(shell echo __XTENSA_EB__ | $(CC) -E - | grep -v "\#"),1) + CHECKFLAGS += -D__XTENSA_EB__ + endif +-ifeq ($(shell echo -e __XTENSA_EL__ | $(CC) -E - | grep -v "\#"),1) ++ifeq ($(shell echo __XTENSA_EL__ | $(CC) -E - | grep -v "\#"),1) + CHECKFLAGS += -D__XTENSA_EL__ + endif + +diff --git a/arch/xtensa/boot/Makefile b/arch/xtensa/boot/Makefile +index 64ffc4b53df6..ca20a892021b 100644 +--- a/arch/xtensa/boot/Makefile b/arch/xtensa/boot/Makefile +@@ -12,7 +12,7 @@ + KBUILD_CFLAGS += -fno-builtin -Iarch/$(ARCH)/boot/include + HOSTFLAGS += -Iarch/$(ARCH)/boot/include + +-BIG_ENDIAN:= $(shell echo -e __XTENSA_EB__ | $(CC) -E - | grep -v "\#") ++BIG_ENDIAN:= $(shell echo __XTENSA_EB__ | $(CC) -E - | grep -v "\#") + + export ccflags-y + export BIG_ENDIAN +diff --git a/arch/xtensa/include/asm/traps.h b/arch/xtensa/include/asm/traps.h +index f2faa58f9a43..03d02df47b9a 100644 +--- a/arch/xtensa/include/asm/traps.h b/arch/xtensa/include/asm/traps.h +@@ -24,30 +24,39 @@ static inline void spill_registers(void) + { + #if XCHAL_NUM_AREGS > 16 + __asm__ __volatile__ ( +- " call12 1f\n" ++ " call8 1f\n" + " _j 2f\n" + " retw\n" + " .align 4\n" + "1:\n" ++#if XCHAL_NUM_AREGS == 32 ++ " _entry a1, 32\n" ++ " addia8, a0, 3\n" ++ " _entry a1, 16\n" ++ " mov a12, a12\n" ++ " retw\n" ++#else + " _entry a1, 48\n" +- " addia12, a0, 3\n" +-#if XCHAL_NUM_AREGS > 32 +- " .rept (" __stringify(XCHAL_NUM_AREGS) " - 32) / 12\n" ++ " call12 1f\n" ++ " retw\n" ++ " .align 4\n" ++ "1:\n" ++ " .rept (" __stringify(XCHAL_NUM_AREGS) " - 16) / 12\n" + " _entry a1, 48\n" + " mov a12, a0\n" + " .endr\n" +-#endif +- " _entry a1, 48\n" ++ " _entry a1, 16\n" + #if XCHAL_NUM_AREGS % 12 == 0 +- " mov a8, a8\n" +-#elif XCHAL_NUM_AREGS % 12 == 4 + " mov a12, a12\n" +-#elif XCHAL_NUM_AREGS % 12 == 8 ++#elif XCHAL_NUM_AREGS % 12 == 4 + " mov a4, a4\n" ++#elif XCHAL_NUM_AREGS % 12 == 8 ++ " mov a8, a8\n" + #endif + " retw\n" ++#en
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: f7ce3a80f59d837e3f2a129d78e019f54ee42faa Author: Mike Pagano gentoo org> AuthorDate: Mon Sep 14 15:47:46 2015 + Commit: Mike Pagano gentoo org> CommitDate: Mon Sep 14 15:47:46 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=f7ce3a80 Linux patch 3.10.88 _README | 4 + 1087_linux-3.10.88.patch | 285 +++ 2 files changed, 289 insertions(+) diff --git a/_README b/_README index f2882cc..ad2e99c 100644 --- a/_README +++ b/_README @@ -390,6 +390,10 @@ Patch: 1086_linux-3.10.87.patch From: http://www.kernel.org Desc: Linux 3.10.87 +Patch: 1087_linux-3.10.88.patch +From: http://www.kernel.org +Desc: Linux 3.10.88 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1087_linux-3.10.88.patch b/1087_linux-3.10.88.patch new file mode 100644 index 000..b6de808 --- /dev/null +++ b/1087_linux-3.10.88.patch @@ -0,0 +1,285 @@ +diff --git a/Makefile b/Makefile +index 0d4fd6427349..e94ce68ecf87 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 87 ++SUBLEVEL = 88 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm64/mm/mmap.c b/arch/arm64/mm/mmap.c +index 7c7be7855638..8aaf073ee078 100644 +--- a/arch/arm64/mm/mmap.c b/arch/arm64/mm/mmap.c +@@ -47,22 +47,14 @@ static int mmap_is_legacy(void) + return sysctl_legacy_va_layout; + } + +-/* +- * Since get_random_int() returns the same value within a 1 jiffy window, we +- * will almost always get the same randomisation for the stack and mmap +- * region. This will mean the relative distance between stack and mmap will be +- * the same. +- * +- * To avoid this we can shift the randomness by 1 bit. +- */ + static unsigned long mmap_rnd(void) + { + unsigned long rnd = 0; + + if (current->flags & PF_RANDOMIZE) +- rnd = (long)get_random_int() & (STACK_RND_MASK >> 1); ++ rnd = (long)get_random_int() & STACK_RND_MASK; + +- return rnd << (PAGE_SHIFT + 1); ++ return rnd << PAGE_SHIFT; + } + + static unsigned long mmap_base(void) +diff --git a/drivers/crypto/caam/caamhash.c b/drivers/crypto/caam/caamhash.c +index 84573b4d6f92..dda43cc4b6cd 100644 +--- a/drivers/crypto/caam/caamhash.c b/drivers/crypto/caam/caamhash.c +@@ -895,13 +895,14 @@ static int ahash_final_ctx(struct ahash_request *req) + state->buflen_1; + u32 *sh_desc = ctx->sh_desc_fin, *desc; + dma_addr_t ptr = ctx->sh_desc_fin_dma; +- int sec4_sg_bytes; ++ int sec4_sg_bytes, sec4_sg_src_index; + int digestsize = crypto_ahash_digestsize(ahash); + struct ahash_edesc *edesc; + int ret = 0; + int sh_len; + +- sec4_sg_bytes = (1 + (buflen ? 1 : 0)) * sizeof(struct sec4_sg_entry); ++ sec4_sg_src_index = 1 + (buflen ? 1 : 0); ++ sec4_sg_bytes = sec4_sg_src_index * sizeof(struct sec4_sg_entry); + + /* allocate space for base edesc and hw desc commands, link tables */ + edesc = kmalloc(sizeof(struct ahash_edesc) + DESC_JOB_IO_LEN + +@@ -928,7 +929,7 @@ static int ahash_final_ctx(struct ahash_request *req) + state->buf_dma = try_buf_map_to_sec4_sg(jrdev, edesc->sec4_sg + 1, + buf, state->buf_dma, buflen, + last_buflen); +- (edesc->sec4_sg + sec4_sg_bytes - 1)->len |= SEC4_SG_LEN_FIN; ++ (edesc->sec4_sg + sec4_sg_src_index - 1)->len |= SEC4_SG_LEN_FIN; + + append_seq_in_ptr(desc, edesc->sec4_sg_dma, ctx->ctx_len + buflen, + LDST_SGF); +diff --git a/drivers/edac/ppc4xx_edac.c b/drivers/edac/ppc4xx_edac.c +index ef6b7e08f485..5c361f3c66aa 100644 +--- a/drivers/edac/ppc4xx_edac.c b/drivers/edac/ppc4xx_edac.c +@@ -921,7 +921,7 @@ static int ppc4xx_edac_init_csrows(struct mem_ctl_info *mci, u32 mcopt1) +*/ + + for (row = 0; row < mci->nr_csrows; row++) { +- struct csrow_info *csi = &mci->csrows[row]; ++ struct csrow_info *csi = mci->csrows[row]; + + /* +* Get the configuration settings for this +diff --git a/drivers/md/dm-thin-metadata.c b/drivers/md/dm-thin-metadata.c +index 3b1503dc1f13..43f6250baadd 100644 +--- a/drivers/md/dm-thin-metadata.c b/drivers/md/dm-thin-metadata.c +@@ -1281,8 +1281,8 @@ static int __release_metadata_snap(struct dm_pool_metadata *pmd) + return r; + + disk_super = dm_block_data(copy); +- dm_sm_dec_block(pmd->metadata_sm, le64_to_cpu(disk_super->data_mapping_root)); +- dm_sm_dec_block(pmd->metadata_sm, le64_to_cpu(disk_super->device_details_root)); ++ dm_btree_del(&pmd->info, le64_to_cpu(disk_super->data_mapping_root)); ++ dm_btree_del(&pmd->details_info, le64_to
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 88995e4f17dee7d97d16d8029ddf0bc0c0a6de68 Author: Mike Pagano gentoo org> AuthorDate: Mon Aug 17 21:55:35 2015 + Commit: Mike Pagano gentoo org> CommitDate: Mon Aug 17 21:55:35 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=88995e4f Linux patch 3.10.87 _README |4 + 1086_linux-3.10.87.patch | 1317 ++ 2 files changed, 1321 insertions(+) diff --git a/_README b/_README index e519e9a..f2882cc 100644 --- a/_README +++ b/_README @@ -386,6 +386,10 @@ Patch: 1085_linux-3.10.86.patch From: http://www.kernel.org Desc: Linux 3.10.86 +Patch: 1086_linux-3.10.87.patch +From: http://www.kernel.org +Desc: Linux 3.10.87 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1086_linux-3.10.87.patch b/1086_linux-3.10.87.patch new file mode 100644 index 000..c17a77d --- /dev/null +++ b/1086_linux-3.10.87.patch @@ -0,0 +1,1317 @@ +diff --git a/Makefile b/Makefile +index 25ee724c9089..0d4fd6427349 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 86 ++SUBLEVEL = 87 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S +index 32640ae7750f..03a1e26ba3a3 100644 +--- a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S +@@ -358,7 +358,8 @@ ENDPROC(__pabt_svc) + .endm + + .macro kuser_cmpxchg_check +-#if !defined(CONFIG_CPU_32v6K) && !defined(CONFIG_NEEDS_SYSCALL_FOR_CMPXCHG) ++#if !defined(CONFIG_CPU_32v6K) && defined(CONFIG_KUSER_HELPERS) && \ ++!defined(CONFIG_NEEDS_SYSCALL_FOR_CMPXCHG) + #ifndef CONFIG_MMU + #warning "NPTL on non MMU needs fixing" + #else +diff --git a/arch/arm/kernel/fiq.c b/arch/arm/kernel/fiq.c +index 25442f451148..918875d96d5d 100644 +--- a/arch/arm/kernel/fiq.c b/arch/arm/kernel/fiq.c +@@ -84,17 +84,14 @@ int show_fiq_list(struct seq_file *p, int prec) + + void set_fiq_handler(void *start, unsigned int length) + { +-#if defined(CONFIG_CPU_USE_DOMAINS) +- void *base = (void *)0x; +-#else + void *base = vectors_page; +-#endif + unsigned offset = FIQ_OFFSET; + + memcpy(base + offset, start, length); ++ if (!cache_is_vipt_nonaliasing()) ++ flush_icache_range((unsigned long)base + offset, offset + ++ length); + flush_icache_range(0x + offset, 0x + offset + length); +- if (!vectors_high()) +- flush_icache_range(offset, offset + length); + } + + int claim_fiq(struct fiq_handler *f) +diff --git a/arch/arm/mach-realview/include/mach/memory.h b/arch/arm/mach-realview/include/mach/memory.h +index 2022e092f0ca..db09170e3832 100644 +--- a/arch/arm/mach-realview/include/mach/memory.h b/arch/arm/mach-realview/include/mach/memory.h +@@ -56,6 +56,8 @@ + #define PAGE_OFFSET1 (PAGE_OFFSET + 0x1000) + #define PAGE_OFFSET2 (PAGE_OFFSET + 0x3000) + ++#define PHYS_OFFSET PLAT_PHYS_OFFSET ++ + #define __phys_to_virt(phys) \ + ((phys) >= 0x8000 ? (phys) - 0x8000 + PAGE_OFFSET2 :\ +(phys) >= 0x2000 ? (phys) - 0x2000 + PAGE_OFFSET1 :\ +diff --git a/arch/arm64/kernel/signal32.c b/arch/arm64/kernel/signal32.c +index 3d478102b1c0..b9564b8d6bab 100644 +--- a/arch/arm64/kernel/signal32.c b/arch/arm64/kernel/signal32.c +@@ -193,7 +193,8 @@ int copy_siginfo_to_user32(compat_siginfo_t __user *to, siginfo_t *from) +* Other callers might not initialize the si_lsb field, +* so check explicitely for the right codes here. +*/ +- if (from->si_code == BUS_MCEERR_AR || from->si_code == BUS_MCEERR_AO) ++ if (from->si_signo == SIGBUS && ++ (from->si_code == BUS_MCEERR_AR || from->si_code == BUS_MCEERR_AO)) + err |= __put_user(from->si_addr_lsb, &to->si_addr_lsb); + #endif + break; +@@ -220,8 +221,6 @@ int copy_siginfo_to_user32(compat_siginfo_t __user *to, siginfo_t *from) + + int copy_siginfo_from_user32(siginfo_t *to, compat_siginfo_t __user *from) + { +- memset(to, 0, sizeof *to); +- + if (copy_from_user(to, from, __ARCH_SI_PREAMBLE_SIZE) || + copy_from_user(to->_sifields._pad, + from->_sifields._pad, SI_PAD_SIZE)) +diff --git a/arch/mips/include/asm/pgtable.h b/arch/mips/include/asm/pgtable.h +index 8b8f6b393363..e821de7cb14e 100644 +--- a/arch/mips/include/asm/pgtable.h b/arch/mips/include/asm/pgtable.h +@@ -150,8 +150,39 @@ static inline void set_pte(pte_t *ptep, pte_t pteval) +* Make sure the buddy is global too (if it's !none, +* it better already be global) +*/ ++#ifdef CONF
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 0020f91452211b9aacca97a362b5492455891453 Author: Mike Pagano gentoo org> AuthorDate: Mon Aug 10 22:40:15 2015 + Commit: Mike Pagano gentoo org> CommitDate: Mon Aug 10 22:40:15 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=0020f914 Linux patch 3.10.86. _README | 4 + 1085_linux-3.10.86.patch | 597 +++ 2 files changed, 601 insertions(+) diff --git a/_README b/_README index c441446..e519e9a 100644 --- a/_README +++ b/_README @@ -382,6 +382,10 @@ Patch: 1084_linux-3.10.85.patch From: http://www.kernel.org Desc: Linux 3.10.85 +Patch: 1085_linux-3.10.86.patch +From: http://www.kernel.org +Desc: Linux 3.10.86 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1085_linux-3.10.86.patch b/1085_linux-3.10.86.patch new file mode 100644 index 000..cd986a2 --- /dev/null +++ b/1085_linux-3.10.86.patch @@ -0,0 +1,597 @@ +diff --git a/Makefile b/Makefile +index 11a7e7bc31f2..25ee724c9089 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 85 ++SUBLEVEL = 86 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arc/include/asm/ptrace.h b/arch/arc/include/asm/ptrace.h +index 2046a89a57cf..78485493639a 100644 +--- a/arch/arc/include/asm/ptrace.h b/arch/arc/include/asm/ptrace.h +@@ -83,7 +83,7 @@ struct callee_regs { + long r13; + }; + +-#define instruction_pointer(regs) ((regs)->ret) ++#define instruction_pointer(regs) (unsigned long)((regs)->ret) + #define profile_pc(regs) instruction_pointer(regs) + + /* return 1 if user mode or 0 if kernel mode */ +diff --git a/arch/s390/kernel/sclp.S b/arch/s390/kernel/sclp.S +index 29bd7bec4176..1ecd47b5e250 100644 +--- a/arch/s390/kernel/sclp.S b/arch/s390/kernel/sclp.S +@@ -276,6 +276,8 @@ ENTRY(_sclp_print_early) + jno .Lesa2 + ahi %r15,-80 + stmh%r6,%r15,96(%r15) # store upper register halves ++ basr%r13,0 ++ lmh %r0,%r15,.Lzeroes-.(%r13) # clear upper register halves + .Lesa2: + #endif + lr %r10,%r2# save string pointer +@@ -299,6 +301,8 @@ ENTRY(_sclp_print_early) + #endif + lm %r6,%r15,120(%r15) # restore registers + br %r14 ++.Lzeroes: ++ .fill 64,4,0 + + .LwritedataS4: + .long 0x00760005 # SCLP command for write data +diff --git a/arch/tile/kernel/setup.c b/arch/tile/kernel/setup.c +index 7a5aa1a7864e..5ebe93676201 100644 +--- a/arch/tile/kernel/setup.c b/arch/tile/kernel/setup.c +@@ -1064,7 +1064,7 @@ static void __init load_hv_initrd(void) + + void __init free_initrd_mem(unsigned long begin, unsigned long end) + { +- free_bootmem(__pa(begin), end - begin); ++ free_bootmem_late(__pa(begin), end - begin); + } + + #else +diff --git a/arch/x86/boot/compressed/head_32.S b/arch/x86/boot/compressed/head_32.S +index abb988a54c69..3b28eff9b90b 100644 +--- a/arch/x86/boot/compressed/head_32.S b/arch/x86/boot/compressed/head_32.S +@@ -54,7 +54,7 @@ ENTRY(efi_pe_entry) + callreloc + reloc: + popl%ecx +- sublreloc, %ecx ++ subl$reloc, %ecx + movl%ecx, BP_code32_start(%eax) + + sub $0x4, %esp +diff --git a/block/blk-cgroup.c b/block/blk-cgroup.c +index 1ff8e97f853a..8c4e81ac5e75 100644 +--- a/block/blk-cgroup.c b/block/blk-cgroup.c +@@ -720,8 +720,12 @@ int blkg_conf_prep(struct blkcg *blkcg, const struct blkcg_policy *pol, + return -EINVAL; + + disk = get_gendisk(MKDEV(major, minor), &part); +- if (!disk || part) ++ if (!disk) + return -EINVAL; ++ if (part) { ++ put_disk(disk); ++ return -EINVAL; ++ } + + rcu_read_lock(); + spin_lock_irq(disk->queue->queue_lock); +diff --git a/drivers/ata/libata-pmp.c b/drivers/ata/libata-pmp.c +index 7ccc084bf1df..85aa76116a30 100644 +--- a/drivers/ata/libata-pmp.c b/drivers/ata/libata-pmp.c +@@ -460,6 +460,13 @@ static void sata_pmp_quirks(struct ata_port *ap) + ATA_LFLAG_NO_SRST | + ATA_LFLAG_ASSUME_ATA; + } ++ } else if (vendor == 0x11ab && devid == 0x4140) { ++ /* Marvell 4140 quirks */ ++ ata_for_each_link(link, ap, EDGE) { ++ /* port 4 is for SEMB device and it doesn't like SRST */ ++ if (link->pmp == 4) ++ link->flags |= ATA_LFLAG_DISABLED; ++ } + } + } + +diff --git a/drivers/input/touchscreen/usbtouchscreen.c b/drivers/input/touchscreen/usbtouchscreen.c +index 5f87bed05467..20aef5d5a242 100644 +--- a/drivers/input/
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 3254e809b0bacc10071a00edc184e5da0e45b6e7 Author: Mike Pagano gentoo org> AuthorDate: Tue Aug 4 00:04:03 2015 + Commit: Mike Pagano gentoo org> CommitDate: Tue Aug 4 00:04:03 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=3254e809 Linux patch 3.10.85 _README |4 + 1084_linux-3.10.85.patch | 2941 ++ 2 files changed, 2945 insertions(+) diff --git a/_README b/_README index 3025db2..c441446 100644 --- a/_README +++ b/_README @@ -378,6 +378,10 @@ Patch: 1083_linux-3.10.84.patch From: http://www.kernel.org Desc: Linux 3.10.84 +Patch: 1084_linux-3.10.85.patch +From: http://www.kernel.org +Desc: Linux 3.10.85 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1084_linux-3.10.85.patch b/1084_linux-3.10.85.patch new file mode 100644 index 000..fcc7952 --- /dev/null +++ b/1084_linux-3.10.85.patch @@ -0,0 +1,2941 @@ +diff --git a/Documentation/devicetree/bindings/pinctrl/marvell,armada-370-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/marvell,armada-370-pinctrl.txt +index 01ef408e205f..8faff12e7014 100644 +--- a/Documentation/devicetree/bindings/pinctrl/marvell,armada-370-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/marvell,armada-370-pinctrl.txt +@@ -91,5 +91,5 @@ mpp61 61 gpo, dev(wen1), uart1(txd), audio(rclk) + mpp62 62 gpio, dev(a2), uart1(cts), tdm(drx), pcie(clkreq0), +audio(mclk), uart0(cts) + mpp63 63 gpo, spi0(sck), tclk +-mpp64 64 gpio, spi0(miso), spi0-1(cs1) +-mpp65 65 gpio, spi0(mosi), spi0-1(cs2) ++mpp64 64 gpio, spi0(miso), spi0(cs1) ++mpp65 65 gpio, spi0(mosi), spi0(cs2) +diff --git a/Documentation/devicetree/bindings/pinctrl/marvell,armada-xp-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/marvell,armada-xp-pinctrl.txt +index bfa0a2e5e0cb..86dec67e5450 100644 +--- a/Documentation/devicetree/bindings/pinctrl/marvell,armada-xp-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/marvell,armada-xp-pinctrl.txt +@@ -41,15 +41,15 @@ mpp20 20 gpio, ge0(rxd4), ge1(rxd2), lcd(d20), ptp(clk) + mpp21 21 gpio, ge0(rxd5), ge1(rxd3), lcd(d21), mem(bat) + mpp22 22 gpio, ge0(rxd6), ge1(rxctl), lcd(d22), sata0(prsnt) + mpp23 23 gpio, ge0(rxd7), ge1(rxclk), lcd(d23), sata1(prsnt) +-mpp24 24 gpio, lcd(hsync), sata1(prsnt), nf(bootcs-re), tdm(rst) +-mpp25 25 gpio, lcd(vsync), sata0(prsnt), nf(bootcs-we), tdm(pclk) +-mpp26 26 gpio, lcd(clk), tdm(fsync), vdd(cpu1-pd) ++mpp24 24 gpio, lcd(hsync), sata1(prsnt), tdm(rst) ++mpp25 25 gpio, lcd(vsync), sata0(prsnt), tdm(pclk) ++mpp26 26 gpio, lcd(clk), tdm(fsync) + mpp27 27 gpio, lcd(e), tdm(dtx), ptp(trig) + mpp28 28 gpio, lcd(pwm), tdm(drx), ptp(evreq) +-mpp29 29 gpio, lcd(ref-clk), tdm(int0), ptp(clk), vdd(cpu0-pd) ++mpp29 29 gpio, lcd(ref-clk), tdm(int0), ptp(clk) + mpp30 30 gpio, tdm(int1), sd0(clk) +-mpp31 31 gpio, tdm(int2), sd0(cmd), vdd(cpu0-pd) +-mpp32 32 gpio, tdm(int3), sd0(d0), vdd(cpu1-pd) ++mpp31 31 gpio, tdm(int2), sd0(cmd) ++mpp32 32 gpio, tdm(int3), sd0(d0) + mpp33 33 gpio, tdm(int4), sd0(d1), mem(bat) + mpp34 34 gpio, tdm(int5), sd0(d2), sata0(prsnt) + mpp35 35 gpio, tdm(int6), sd0(d3), sata1(prsnt) +@@ -57,21 +57,18 @@ mpp36 36 gpio, spi(mosi) + mpp37 37 gpio, spi(miso) + mpp38 38 gpio, spi(sck) + mpp39 39 gpio, spi(cs0) +-mpp40 40 gpio, spi(cs1), uart2(cts), lcd(vga-hsync), vdd(cpu1-pd), +- pcie(clkreq0) ++mpp40 40 gpio, spi(cs1), uart2(cts), lcd(vga-hsync), pcie(clkreq0) + mpp41 41 gpio, spi(cs2), uart2(rts), lcd(vga-vsync), sata1(prsnt), +pcie(clkreq1) +-mpp42 42 gpio, uart2(rxd), uart0(cts), tdm(int7), tdm-1(timer), +- vdd(cpu0-pd) +-mpp43 43 gpio, uart2(txd), uart0(rts), spi(cs3), pcie(rstout), +- vdd(cpu2-3-pd){1} ++mpp42 42 gpio, uart2(rxd), uart0(cts), tdm(int7), tdm-1(timer) ++mpp43 43 gpio, uart2(txd), uart0(rts), spi(cs3), pcie(rstout) + mpp44 44 gpio, uart2(cts), uart3(rxd), spi(cs4), pcie(clkreq2), +mem(bat) + mpp45 45 gpio, uart2(rts), uart3(txd), spi(cs5), sata1(prsnt) + mpp46 46 gpio, uart3(rts), uart1(rts), spi(cs6), sata0(prsnt) + mpp47 47 gpio, uart3(cts), uart1(cts), spi(cs
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: c996377f0b6842fe8979fc070718d87473d759de Author: Mike Pagano gentoo org> AuthorDate: Thu Jul 30 12:56:18 2015 + Commit: Mike Pagano gentoo org> CommitDate: Thu Jul 30 12:56:18 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=c996377f BFQ v7r8 _README| 12 +- ...oups-kconfig-build-bits-for-BFQ-v7r8-3.10.patch | 6 +- ...ntroduce-the-BFQ-v7r8-I-O-sched-for-3.10.patch1 | 196 ++--- ...arly-Queue-Merge-EQM-to-BFQ-v7r8-for-3.10.patch | 96 +- 4 files changed, 147 insertions(+), 163 deletions(-) diff --git a/_README b/_README index fc173a9..3025db2 100644 --- a/_README +++ b/_README @@ -430,15 +430,15 @@ Patch: 5000_enable-additional-cpu-optimizations-for-gcc.patch From: https://github.com/graysky2/kernel_gcc_patch/ Desc: Kernel patch enables gcc optimizations for additional CPUs. -Patch: 5001_BFQ-1-block-cgroups-kconfig-build-bits-for-v7r7-3.10.patch +Patch: 5001_block-cgroups-kconfig-build-bits-for-BFQ-v7r8-3.10.patch From: http://algo.ing.unimo.it/people/paolo/disk_sched/ -Desc: BFQ v7r7 patch 1 for 3.10: Build, cgroups and kconfig bits +Desc: BFQ v7r8 patch 1 for 3.10: Build, cgroups and kconfig bits -Patch: 5002_BFQ-2-block-introduce-the-v7r7-I-O-sched-for-3.10.patch1 +Patch: 5002_block-introduce-the-BFQ-v7r8-I-O-sched-for-3.10.patch1 From: http://algo.ing.unimo.it/people/paolo/disk_sched/ -Desc: BFQ v7r7 patch 2 for 3.10: BFQ Scheduler +Desc: BFQ v7r8 patch 2 for 3.10: BFQ Scheduler -Patch: 5003_BFQ-3-block-add-Early-Queue-Merge-EQM-v7r7-for-3.10.0.patch +Patch: 5003_block-bfq-add-Early-Queue-Merge-EQM-to-BFQ-v7r8-for-3.10.patch From: http://algo.ing.unimo.it/people/paolo/disk_sched/ -Desc: BFQ v7r7 patch 3 for 3.10: Early Queue Merge (EQM) +Desc: BFQ v7r8 patch 3 for 3.10: Early Queue Merge (EQM) diff --git a/5001_BFQ-1-block-cgroups-kconfig-build-bits-for-v7r7-3.10.patch b/5001_block-cgroups-kconfig-build-bits-for-BFQ-v7r8-3.10.patch similarity index 97% rename from 5001_BFQ-1-block-cgroups-kconfig-build-bits-for-v7r7-3.10.patch rename to 5001_block-cgroups-kconfig-build-bits-for-BFQ-v7r8-3.10.patch index c76d0e9..1ea37d8 100644 --- a/5001_BFQ-1-block-cgroups-kconfig-build-bits-for-v7r7-3.10.patch +++ b/5001_block-cgroups-kconfig-build-bits-for-BFQ-v7r8-3.10.patch @@ -1,7 +1,7 @@ -From d8a4dc281659c63154708bfd1a66c7ad0fdd2f09 Mon Sep 17 00:00:00 2001 +From dca9e130a9596b036b6ef352e41054f9adce64bd Mon Sep 17 00:00:00 2001 From: Arianna Avanzini Date: Mon, 27 Jan 2014 23:50:08 +0100 -Subject: [PATCH 1/3] block: cgroups, kconfig, build bits for BFQ-v7r7-3.10 +Subject: [PATCH 1/3] block: cgroups, kconfig, build bits for BFQ-v7r8-3.10 Update Kconfig.iosched and do the related Makefile changes to include kernel configuration options for BFQ. Also add the bfqio controller @@ -99,5 +99,5 @@ index 6e7ec64..e5e6b0d 100644 + +/* */ -- -2.1.3 +2.1.4 diff --git a/5002_BFQ-2-block-introduce-the-v7r7-I-O-sched-for-3.10.patch1 b/5002_block-introduce-the-BFQ-v7r8-I-O-sched-for-3.10.patch1 similarity index 98% rename from 5002_BFQ-2-block-introduce-the-v7r7-I-O-sched-for-3.10.patch1 rename to 5002_block-introduce-the-BFQ-v7r8-I-O-sched-for-3.10.patch1 index 07fd62f..49bf09c 100644 --- a/5002_BFQ-2-block-introduce-the-v7r7-I-O-sched-for-3.10.patch1 +++ b/5002_block-introduce-the-BFQ-v7r8-I-O-sched-for-3.10.patch1 @@ -1,9 +1,9 @@ -From db537b3062665d5442c516b31d396e61dc4c145c Mon Sep 17 00:00:00 2001 +From b8461d2a63e08357aa8111cbcb87a51d61b68c61 Mon Sep 17 00:00:00 2001 From: Paolo Valente Date: Thu, 9 May 2013 19:10:02 +0200 -Subject: [PATCH 2/3] block: introduce the BFQ-v7r7 I/O sched for 3.10 +Subject: [PATCH 2/3] block: introduce the BFQ-v7r8 I/O sched for 3.10 -Add the BFQ-v7r7 I/O scheduler to 3.10. +Add the BFQ-v7r8 I/O scheduler to 3.10. The general structure is borrowed from CFQ, as much of the code for handling I/O contexts Over time, several useful features have been ported from CFQ as well (details in the changelog in README.BFQ). A @@ -58,10 +58,10 @@ Signed-off-by: Arianna Avanzini --- block/bfq-cgroup.c | 913 block/bfq-ioc.c | 36 + - block/bfq-iosched.c | 3890 +++ - block/bfq-sched.c | 1214 - block/bfq.h | 773 ++ - 5 files changed, 6826 insertions(+) + block/bfq-iosched.c | 3886 +++ + block/bfq-sched.c | 1208 + block/bfq.h | 769 ++ + 5 files changed, 6812 insertions(+) create mode 100644 block/bfq-cgroup.c create mode 100644 block/bfq-ioc.c create mode 100644 block/bfq-iosched.c @@ -1031,10 +1031,10 @@ index 000..7f6b000 +} diff --git a/block/bfq-iosched.c b/block/bfq-iosched.c new file mode 100644 -index 000..9de51e3 +index 000..729f3e4 --- /dev/null +++ b/block/bfq-iosched.c
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 2a83da120accdc9f3d66856fcc4b60dea3f4a9f3 Author: Mike Pagano gentoo org> AuthorDate: Fri Jul 10 23:26:15 2015 + Commit: Mike Pagano gentoo org> CommitDate: Fri Jul 10 23:26:15 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=2a83da12 Linux patch 3.10.84 _README | 4 + 1083_linux-3.10.84.patch | 369 +++ 2 files changed, 373 insertions(+) diff --git a/_README b/_README index 1cfdd1d..fc173a9 100644 --- a/_README +++ b/_README @@ -374,6 +374,10 @@ Patch: 1082_linux-3.10.83.patch From: http://www.kernel.org Desc: Linux 3.10.83 +Patch: 1083_linux-3.10.84.patch +From: http://www.kernel.org +Desc: Linux 3.10.84 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1083_linux-3.10.84.patch b/1083_linux-3.10.84.patch new file mode 100644 index 000..2851596 --- /dev/null +++ b/1083_linux-3.10.84.patch @@ -0,0 +1,369 @@ +diff --git a/Makefile b/Makefile +index 21529dbcc11d..f7b10bb56737 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 83 ++SUBLEVEL = 84 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm/kvm/interrupts.S b/arch/arm/kvm/interrupts.S +index 16cd4ba5d7fd..bb117abb1b3b 100644 +--- a/arch/arm/kvm/interrupts.S b/arch/arm/kvm/interrupts.S +@@ -159,13 +159,9 @@ __kvm_vcpu_return: + @ Don't trap coprocessor accesses for host kernel + set_hstr vmexit + set_hdcr vmexit +- set_hcptr vmexit, (HCPTR_TTA | HCPTR_TCP(10) | HCPTR_TCP(11)) ++ set_hcptr vmexit, (HCPTR_TTA | HCPTR_TCP(10) | HCPTR_TCP(11)), after_vfp_restore + + #ifdef CONFIG_VFPv3 +- @ Save floating point registers we if let guest use them. +- tst r2, #(HCPTR_TCP(10) | HCPTR_TCP(11)) +- bne after_vfp_restore +- + @ Switch VFP/NEON hardware state to the host's + add r7, vcpu, #VCPU_VFP_GUEST + store_vfp_state r7 +@@ -177,6 +173,8 @@ after_vfp_restore: + @ Restore FPEXC_EN which we clobbered on entry + pop {r2} + VFPFMXR FPEXC, r2 ++#else ++after_vfp_restore: + #endif + + @ Reset Hyp-role +@@ -458,7 +456,7 @@ switch_to_guest_vfp: + push{r3-r7} + + @ NEON/VFP used. Turn on VFP access. +- set_hcptr vmexit, (HCPTR_TCP(10) | HCPTR_TCP(11)) ++ set_hcptr vmtrap, (HCPTR_TCP(10) | HCPTR_TCP(11)) + + @ Switch VFP/NEON hardware state to the guest's + add r7, r0, #VCPU_VFP_HOST +diff --git a/arch/arm/kvm/interrupts_head.S b/arch/arm/kvm/interrupts_head.S +index 6f18695a09cb..b6f6137f5984 100644 +--- a/arch/arm/kvm/interrupts_head.S b/arch/arm/kvm/interrupts_head.S +@@ -570,8 +570,13 @@ vcpu .reqr0 @ vcpu pointer always in r0 + .endm + + /* Configures the HCPTR (Hyp Coprocessor Trap Register) on entry/return +- * (hardware reset value is 0). Keep previous value in r2. */ +-.macro set_hcptr operation, mask ++ * (hardware reset value is 0). Keep previous value in r2. ++ * An ISB is emited on vmexit/vmtrap, but executed on vmexit only if ++ * VFP wasn't already enabled (always executed on vmtrap). ++ * If a label is specified with vmexit, it is branched to if VFP wasn't ++ * enabled. ++ */ ++.macro set_hcptr operation, mask, label = none + mrc p15, 4, r2, c1, c1, 2 + ldr r3, =\mask + .if \operation == vmentry +@@ -580,6 +585,17 @@ vcpu .reqr0 @ vcpu pointer always in r0 + bic r3, r2, r3 @ Don't trap defined coproc-accesses + .endif + mcr p15, 4, r3, c1, c1, 2 ++ .if \operation != vmentry ++ .if \operation == vmexit ++ tst r2, #(HCPTR_TCP(10) | HCPTR_TCP(11)) ++ beq 1f ++ .endif ++ isb ++ .if \label != none ++ b \label ++ .endif ++1: ++ .endif + .endm + + /* Configures the HDCR (Hyp Debug Configuration Register) on entry/return +diff --git a/arch/mips/include/asm/mach-generic/spaces.h b/arch/mips/include/asm/mach-generic/spaces.h +index 5b2f2e68e57f..503eb6ca5802 100644 +--- a/arch/mips/include/asm/mach-generic/spaces.h b/arch/mips/include/asm/mach-generic/spaces.h +@@ -90,7 +90,11 @@ + #endif + + #ifndef FIXADDR_TOP ++#ifdef CONFIG_KVM_GUEST ++#define FIXADDR_TOP ((unsigned long)(long)(int)0x7ffe) ++#else + #define FIXADDR_TOP ((unsigned long)(long)(int)0xfffe) + #endif ++#endif + + #endif /* __ASM_MACH_GENERIC_SPACES_H */ +diff --git a/arch/powerpc/perf/core-book3s.c b/arch/powerpc/perf/core-book3s.c +index 846861a20b07..b63dc809596d 100644 +--- a/arch/powerpc/perf/core-book3s.c b/arch/powerpc/perf/core-book3s.c +@@ -112,7 +112,16 @@ static inline void power_pmu_bhrb_read(struct cpu_hw_events *cpuhw) {} + + static bool regs_use_siar(struct pt_regs *regs) + { +-
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 1c12fddcb69afbf1077cbcf5aae1022ad463aaf6 Author: Mike Pagano gentoo org> AuthorDate: Tue Jul 7 00:43:05 2015 + Commit: Mike Pagano gentoo org> CommitDate: Tue Jul 7 00:43:05 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=1c12fddc Linux patch 3.10.83 _README |4 + 1082_linux-3.10.83.patch | 1734 ++ 2 files changed, 1738 insertions(+) diff --git a/_README b/_README index 5e45831..1cfdd1d 100644 --- a/_README +++ b/_README @@ -370,6 +370,10 @@ Patch: 1081_linux-3.10.82.patch From: http://www.kernel.org Desc: Linux 3.10.82 +Patch: 1082_linux-3.10.83.patch +From: http://www.kernel.org +Desc: Linux 3.10.83 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1082_linux-3.10.83.patch b/1082_linux-3.10.83.patch new file mode 100644 index 000..187a86e --- /dev/null +++ b/1082_linux-3.10.83.patch @@ -0,0 +1,1734 @@ +diff --git a/Makefile b/Makefile +index 5e3e665a10b7..21529dbcc11d 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 82 ++SUBLEVEL = 83 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm/mach-dove/common.c b/arch/arm/mach-dove/common.c +index e2b5da031f96..8d4f5dc56910 100644 +--- a/arch/arm/mach-dove/common.c b/arch/arm/mach-dove/common.c +@@ -226,7 +226,7 @@ void __init dove_init_early(void) + orion_time_set_base(TIMER_VIRT_BASE); + mvebu_mbus_init("marvell,dove-mbus", + BRIDGE_WINS_BASE, BRIDGE_WINS_SZ, +- DOVE_MC_WINS_BASE, DOVE_MC_WINS_SZ); ++ DOVE_MC_WINS_BASE, DOVE_MC_WINS_SZ, 0); + } + + static int __init dove_find_tclk(void) +diff --git a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c +index 2acaded8025d..ed00c9e3bfc6 100644 +--- a/arch/arm/mach-imx/clk-imx6q.c b/arch/arm/mach-imx/clk-imx6q.c +@@ -515,7 +515,7 @@ int __init mx6q_clocks_init(void) + clk[gpmi_io] = imx_clk_gate2("gpmi_io", "enfc", base + 0x78, 28); + clk[gpmi_apb] = imx_clk_gate2("gpmi_apb", "usdhc3", base + 0x78, 30); + clk[rom] = imx_clk_gate2("rom", "ahb", base + 0x7c, 0); +- clk[sata] = imx_clk_gate2("sata", "ipg", base + 0x7c, 4); ++ clk[sata] = imx_clk_gate2("sata", "ahb", base + 0x7c, 4); + clk[sdma] = imx_clk_gate2("sdma", "ahb", base + 0x7c, 6); + clk[spba] = imx_clk_gate2("spba", "ipg", base + 0x7c, 12); + clk[ssi1_ipg] = imx_clk_gate2("ssi1_ipg", "ipg", base + 0x7c, 18); +diff --git a/arch/arm/mach-kirkwood/common.c b/arch/arm/mach-kirkwood/common.c +index f38922897563..4f6831ea88c5 100644 +--- a/arch/arm/mach-kirkwood/common.c b/arch/arm/mach-kirkwood/common.c +@@ -530,7 +530,7 @@ void __init kirkwood_init_early(void) + + mvebu_mbus_init("marvell,kirkwood-mbus", + BRIDGE_WINS_BASE, BRIDGE_WINS_SZ, +- DDR_WINDOW_CPU_BASE, DDR_WINDOW_CPU_SZ); ++ DDR_WINDOW_CPU_BASE, DDR_WINDOW_CPU_SZ, 0); + } + + int kirkwood_tclk; +diff --git a/arch/arm/mach-mv78xx0/common.c b/arch/arm/mach-mv78xx0/common.c +index 749a7f8c4992..4722c98dc1bb 100644 +--- a/arch/arm/mach-mv78xx0/common.c b/arch/arm/mach-mv78xx0/common.c +@@ -337,11 +337,11 @@ void __init mv78xx0_init_early(void) + if (mv78xx0_core_index() == 0) + mvebu_mbus_init("marvell,mv78xx0-mbus", + BRIDGE_WINS_CPU0_BASE, BRIDGE_WINS_SZ, +- DDR_WINDOW_CPU0_BASE, DDR_WINDOW_CPU_SZ); ++ DDR_WINDOW_CPU0_BASE, DDR_WINDOW_CPU_SZ, 0); + else + mvebu_mbus_init("marvell,mv78xx0-mbus", + BRIDGE_WINS_CPU1_BASE, BRIDGE_WINS_SZ, +- DDR_WINDOW_CPU1_BASE, DDR_WINDOW_CPU_SZ); ++ DDR_WINDOW_CPU1_BASE, DDR_WINDOW_CPU_SZ, 0); + } + + void __init_refok mv78xx0_timer_init(void) +diff --git a/arch/arm/mach-mvebu/armada-370-xp.c b/arch/arm/mach-mvebu/armada-370-xp.c +index 1c48890bb72b..4377c3484a62 100644 +--- a/arch/arm/mach-mvebu/armada-370-xp.c b/arch/arm/mach-mvebu/armada-370-xp.c +@@ -66,7 +66,8 @@ void __init armada_370_xp_init_early(void) + ARMADA_370_XP_MBUS_WINS_BASE, + ARMADA_370_XP_MBUS_WINS_SIZE, + ARMADA_370_XP_SDRAM_WINS_BASE, +- ARMADA_370_XP_SDRAM_WINS_SIZE); ++ ARMADA_370_XP_SDRAM_WINS_SIZE, ++ coherency_available()); + + #ifdef CONFIG_CACHE_L2X0 +
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 522c40275ae0a217e0c6ca0507d8e22e000f53ef Author: Mike Pagano gentoo org> AuthorDate: Tue Jun 30 13:01:16 2015 + Commit: Mike Pagano gentoo org> CommitDate: Tue Jun 30 13:01:16 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=522c4027 Linux patch 3.10.82 _README | 4 + 1081_linux-3.10.82.patch | 263 +++ 2 files changed, 267 insertions(+) diff --git a/_README b/_README index 574c6c0..5e45831 100644 --- a/_README +++ b/_README @@ -366,6 +366,10 @@ Patch: 1080_linux-3.10.81.patch From: http://www.kernel.org Desc: Linux 3.10.81 +Patch: 1081_linux-3.10.82.patch +From: http://www.kernel.org +Desc: Linux 3.10.82 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1081_linux-3.10.82.patch b/1081_linux-3.10.82.patch new file mode 100644 index 000..b14a1fe --- /dev/null +++ b/1081_linux-3.10.82.patch @@ -0,0 +1,263 @@ +diff --git a/Makefile b/Makefile +index 6d19e37d36d5..5e3e665a10b7 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 81 ++SUBLEVEL = 82 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/drivers/crypto/caam/caamrng.c b/drivers/crypto/caam/caamrng.c +index d1939a9539c0..04aefffb4dd9 100644 +--- a/drivers/crypto/caam/caamrng.c b/drivers/crypto/caam/caamrng.c +@@ -56,7 +56,7 @@ + + /* Buffer, its dma address and lock */ + struct buf_data { +- u8 buf[RN_BUF_SIZE]; ++ u8 buf[RN_BUF_SIZE] cacheline_aligned; + dma_addr_t addr; + struct completion filled; + u32 hw_desc[DESC_JOB_O_LEN]; +diff --git a/drivers/gpu/drm/mgag200/mgag200_mode.c b/drivers/gpu/drm/mgag200/mgag200_mode.c +index f6341e8622ee..7bd2acce9f81 100644 +--- a/drivers/gpu/drm/mgag200/mgag200_mode.c b/drivers/gpu/drm/mgag200/mgag200_mode.c +@@ -1487,6 +1487,11 @@ static int mga_vga_mode_valid(struct drm_connector *connector, + return MODE_BANDWIDTH; + } + ++ if ((mode->hdisplay % 8) != 0 || (mode->hsync_start % 8) != 0 || ++ (mode->hsync_end % 8) != 0 || (mode->htotal % 8) != 0) { ++ return MODE_H_ILLEGAL; ++ } ++ + if (mode->crtc_hdisplay > 2048 || mode->crtc_hsync_start > 4096 || + mode->crtc_hsync_end > 4096 || mode->crtc_htotal > 4096 || + mode->crtc_vdisplay > 2048 || mode->crtc_vsync_start > 4096 || +diff --git a/drivers/scsi/lpfc/lpfc_sli.c b/drivers/scsi/lpfc/lpfc_sli.c +index 572579f87de4..90861416b9e9 100644 +--- a/drivers/scsi/lpfc/lpfc_sli.c b/drivers/scsi/lpfc/lpfc_sli.c +@@ -263,6 +263,16 @@ lpfc_sli4_eq_get(struct lpfc_queue *q) + return NULL; + + q->hba_index = idx; ++ ++ /* ++ * insert barrier for instruction interlock : data from the hardware ++ * must have the valid bit checked before it can be copied and acted ++ * upon. Given what was seen in lpfc_sli4_cq_get() of speculative ++ * instructions allowing action on content before valid bit checked, ++ * add barrier here as well. May not be needed as "content" is a ++ * single 32-bit entity here (vs multi word structure for cq's). ++ */ ++ mb(); + return eqe; + } + +@@ -368,6 +378,17 @@ lpfc_sli4_cq_get(struct lpfc_queue *q) + + cqe = q->qe[q->hba_index].cqe; + q->hba_index = idx; ++ ++ /* ++ * insert barrier for instruction interlock : data from the hardware ++ * must have the valid bit checked before it can be copied and acted ++ * upon. Speculative instructions were allowing a bcopy at the start ++ * of lpfc_sli4_fp_handle_wcqe(), which is called immediately ++ * after our return, to copy data before the valid bit check above ++ * was done. As such, some of the copied data was stale. The barrier ++ * ensures the check is before any data is copied. ++ */ ++ mb(); + return cqe; + } + +diff --git a/fs/pipe.c b/fs/pipe.c +index 0e0752ef2715..3e7ab278bb0c 100644 +--- a/fs/pipe.c b/fs/pipe.c +@@ -117,25 +117,27 @@ void pipe_wait(struct pipe_inode_info *pipe) + } + + static int +-pipe_iov_copy_from_user(void *to, struct iovec *iov, unsigned long len, +- int atomic) ++pipe_iov_copy_from_user(void *addr, int *offset, struct iovec *iov, ++ size_t *remaining, int atomic) + { + unsigned long copy; + +- while (len > 0) { ++ while (*remaining > 0) { + while (!iov->iov_len) + iov++; +- copy = min_t(unsigned long, len, iov->iov_len); ++ copy = min_t(unsigned long, *remaining, iov->iov_len); + + if (atomic) { +- if (__copy_from_user_inatomic(to, iov->iov_base, copy)) ++ if (__copy_from_user_inatomic(addr
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: e86077ce612e6428c0d7ea965da69e99ad5d6dce Author: Mike Pagano gentoo org> AuthorDate: Tue Jun 23 11:46:21 2015 + Commit: Mike Pagano gentoo org> CommitDate: Tue Jun 23 11:46:21 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=e86077ce Linux patch 3.10.81 _README | 4 + 1080_linux-3.10.81.patch | 698 +++ 2 files changed, 702 insertions(+) diff --git a/_README b/_README index b0171f5..574c6c0 100644 --- a/_README +++ b/_README @@ -362,6 +362,10 @@ Patch: 1079_linux-3.10.80.patch From: http://www.kernel.org Desc: Linux 3.10.80 +Patch: 1080_linux-3.10.81.patch +From: http://www.kernel.org +Desc: Linux 3.10.81 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1080_linux-3.10.81.patch b/1080_linux-3.10.81.patch new file mode 100644 index 000..20d9392 --- /dev/null +++ b/1080_linux-3.10.81.patch @@ -0,0 +1,698 @@ +diff --git a/Makefile b/Makefile +index 067433219984..6d19e37d36d5 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 80 ++SUBLEVEL = 81 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/mips/kernel/irq.c b/arch/mips/kernel/irq.c +index d1fea7a054be..7479d8d847a6 100644 +--- a/arch/mips/kernel/irq.c b/arch/mips/kernel/irq.c +@@ -110,7 +110,7 @@ void __init init_IRQ(void) + #endif + } + +-#ifdef DEBUG_STACKOVERFLOW ++#ifdef CONFIG_DEBUG_STACKOVERFLOW + static inline void check_stack_overflow(void) + { + unsigned long sp; +diff --git a/block/genhd.c b/block/genhd.c +index 7694dffe9f0e..b09f5fc94dee 100644 +--- a/block/genhd.c b/block/genhd.c +@@ -422,9 +422,9 @@ int blk_alloc_devt(struct hd_struct *part, dev_t *devt) + /* allocate ext devt */ + idr_preload(GFP_KERNEL); + +- spin_lock(&ext_devt_lock); ++ spin_lock_bh(&ext_devt_lock); + idx = idr_alloc(&ext_devt_idr, part, 0, NR_EXT_DEVT, GFP_NOWAIT); +- spin_unlock(&ext_devt_lock); ++ spin_unlock_bh(&ext_devt_lock); + + idr_preload_end(); + if (idx < 0) +@@ -449,9 +449,9 @@ void blk_free_devt(dev_t devt) + return; + + if (MAJOR(devt) == BLOCK_EXT_MAJOR) { +- spin_lock(&ext_devt_lock); ++ spin_lock_bh(&ext_devt_lock); + idr_remove(&ext_devt_idr, blk_mangle_minor(MINOR(devt))); +- spin_unlock(&ext_devt_lock); ++ spin_unlock_bh(&ext_devt_lock); + } + } + +@@ -691,13 +691,13 @@ struct gendisk *get_gendisk(dev_t devt, int *partno) + } else { + struct hd_struct *part; + +- spin_lock(&ext_devt_lock); ++ spin_lock_bh(&ext_devt_lock); + part = idr_find(&ext_devt_idr, blk_mangle_minor(MINOR(devt))); + if (part && get_disk(part_to_disk(part))) { + *partno = part->partno; + disk = part_to_disk(part); + } +- spin_unlock(&ext_devt_lock); ++ spin_unlock_bh(&ext_devt_lock); + } + + return disk; +diff --git a/drivers/ata/pata_octeon_cf.c b/drivers/ata/pata_octeon_cf.c +index e73bef3093d2..5507f36a06b4 100644 +--- a/drivers/ata/pata_octeon_cf.c b/drivers/ata/pata_octeon_cf.c +@@ -1068,7 +1068,7 @@ static struct of_device_id octeon_cf_match[] = { + }, + {}, + }; +-MODULE_DEVICE_TABLE(of, octeon_i2c_match); ++MODULE_DEVICE_TABLE(of, octeon_cf_match); + + static struct platform_driver octeon_cf_driver = { + .probe = octeon_cf_probe, +diff --git a/drivers/gpu/drm/i915/intel_i2c.c b/drivers/gpu/drm/i915/intel_i2c.c +index 4a21e13cc58c..d5e666fb459c 100644 +--- a/drivers/gpu/drm/i915/intel_i2c.c b/drivers/gpu/drm/i915/intel_i2c.c +@@ -441,7 +441,7 @@ gmbus_xfer(struct i2c_adapter *adapter, + struct intel_gmbus, + adapter); + struct drm_i915_private *dev_priv = bus->dev_priv; +- int i, reg_offset; ++ int i = 0, inc, try = 0, reg_offset; + int ret = 0; + + mutex_lock(&dev_priv->gmbus_mutex); +@@ -453,12 +453,14 @@ gmbus_xfer(struct i2c_adapter *adapter, + + reg_offset = dev_priv->gpio_mmio_base; + ++retry: + I915_WRITE(GMBUS0 + reg_offset, bus->reg0); + +- for (i = 0; i < num; i++) { ++ for (; i < num; i += inc) { ++ inc = 1; + if (gmbus_is_index_read(msgs, i, num)) { + ret = gmbus_xfer_index_read(dev_priv, &msgs[i]); +- i += 1; /* set i to the index of the read xfer */ ++ inc = 2; /* an index read is two msgs */ + } else if (msgs[i].flags & I2C_M_RD) { + ret = gmbus_xfer_read(dev_priv, &msgs[i], 0); +
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: deace538eb71c304fde3e80ccbd7e2a9826920e3 Author: Mike Pagano gentoo org> AuthorDate: Sat Jun 6 22:18:17 2015 + Commit: Mike Pagano gentoo org> CommitDate: Sat Jun 6 22:18:17 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=deace538 Linux patch 3.10.80 _README |4 + 1079_linux-3.10.80.patch | 1148 ++ 2 files changed, 1152 insertions(+) diff --git a/_README b/_README index 712a318..b0171f5 100644 --- a/_README +++ b/_README @@ -358,6 +358,10 @@ Patch: 1078_linux-3.10.79.patch From: http://www.kernel.org Desc: Linux 3.10.79 +Patch: 1079_linux-3.10.80.patch +From: http://www.kernel.org +Desc: Linux 3.10.80 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1079_linux-3.10.80.patch b/1079_linux-3.10.80.patch new file mode 100644 index 000..737e5c4 --- /dev/null +++ b/1079_linux-3.10.80.patch @@ -0,0 +1,1148 @@ +diff --git a/Makefile b/Makefile +index e26cb1e56266..067433219984 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 79 ++SUBLEVEL = 80 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +@@ -241,7 +241,7 @@ CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \ + + HOSTCC = gcc + HOSTCXX = g++ +-HOSTCFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer ++HOSTCFLAGS = -Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu89 + HOSTCXXFLAGS = -O2 + + # Decide whether to build built-in, modular, or both. +@@ -373,7 +373,9 @@ KBUILD_CFLAGS := -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs \ + -fno-strict-aliasing -fno-common \ + -Werror-implicit-function-declaration \ + -Wno-format-security \ +- -fno-delete-null-pointer-checks ++ -fno-delete-null-pointer-checks \ ++ -std=gnu89 ++ + KBUILD_AFLAGS_KERNEL := + KBUILD_CFLAGS_KERNEL := + KBUILD_AFLAGS := -D__ASSEMBLY__ +diff --git a/arch/arm/boot/dts/imx27.dtsi b/arch/arm/boot/dts/imx27.dtsi +index 75bd11386516..77730a37344e 100644 +--- a/arch/arm/boot/dts/imx27.dtsi b/arch/arm/boot/dts/imx27.dtsi +@@ -290,7 +290,7 @@ + + fec: ethernet@1002b000 { + compatible = "fsl,imx27-fec"; +- reg = <0x1002b000 0x4000>; ++ reg = <0x1002b000 0x1000>; + interrupts = <50>; + clocks = <&clks 48>, <&clks 67>, <&clks 0>; + clock-names = "ipg", "ahb", "ptp"; +diff --git a/arch/arm/kernel/entry-common.S b/arch/arm/kernel/entry-common.S +index 4bc816a74a2e..f2646934c714 100644 +--- a/arch/arm/kernel/entry-common.S b/arch/arm/kernel/entry-common.S +@@ -32,7 +32,9 @@ ret_fast_syscall: + UNWIND(.fnstart ) + UNWIND(.cantunwind ) + disable_irq @ disable interrupts +- ldr r1, [tsk, #TI_FLAGS] ++ ldr r1, [tsk, #TI_FLAGS]@ re-check for syscall tracing ++ tst r1, #_TIF_SYSCALL_WORK ++ bne __sys_trace_return + tst r1, #_TIF_WORK_MASK + bne fast_work_pending + asm_trace_hardirqs_on +diff --git a/arch/powerpc/kernel/vmlinux.lds.S b/arch/powerpc/kernel/vmlinux.lds.S +index f096e72262f4..1db685104ffc 100644 +--- a/arch/powerpc/kernel/vmlinux.lds.S b/arch/powerpc/kernel/vmlinux.lds.S +@@ -213,6 +213,7 @@ SECTIONS + *(.opd) + } + ++ . = ALIGN(256); + .got : AT(ADDR(.got) - LOAD_OFFSET) { + __toc_start = .; + #ifndef CONFIG_RELOCATABLE +diff --git a/arch/s390/crypto/ghash_s390.c b/arch/s390/crypto/ghash_s390.c +index 7940dc90e80b..b258110da952 100644 +--- a/arch/s390/crypto/ghash_s390.c b/arch/s390/crypto/ghash_s390.c +@@ -16,11 +16,12 @@ + #define GHASH_DIGEST_SIZE 16 + + struct ghash_ctx { +- u8 icv[16]; +- u8 key[16]; ++ u8 key[GHASH_BLOCK_SIZE]; + }; + + struct ghash_desc_ctx { ++ u8 icv[GHASH_BLOCK_SIZE]; ++ u8 key[GHASH_BLOCK_SIZE]; + u8 buffer[GHASH_BLOCK_SIZE]; + u32 bytes; + }; +@@ -28,8 +29,10 @@ struct ghash_desc_ctx { + static int ghash_init(struct shash_desc *desc) + { + struct ghash_desc_ctx *dctx = shash_desc_ctx(desc); ++ struct ghash_ctx *ctx = crypto_shash_ctx(desc->tfm); + + memset(dctx, 0, sizeof(*dctx)); ++ memcpy(dctx->key, ctx->key, GHASH_BLOCK_SIZE); + + return 0; + } +@@ -45,7 +48,6 @@ static int ghash_setkey(struct crypto_shash *tfm, + } + + memcpy(ctx->key, key, GHASH_BLOCK_SIZE); +- memset(ctx->icv, 0, GHASH_BLOCK_SIZE); + + return 0; + } +@@ -54,7 +56,6 @@ static int ghash_update(struct shash_des
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: bc635c7de2515835b8cfca29d153b3fdbedac7db Author: Mike Pagano gentoo org> AuthorDate: Sun May 17 18:29:19 2015 + Commit: Mike Pagano gentoo org> CommitDate: Sun May 17 18:29:19 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=bc635c7d Linux patches 3.10.78 amd 3.10.79. _README |8 + 1077_linux-3.10.78.patch | 1032 ++ 1078_linux-3.10.79.patch | 728 3 files changed, 1768 insertions(+) diff --git a/_README b/_README index 89fcce7..712a318 100644 --- a/_README +++ b/_README @@ -350,6 +350,14 @@ Patch: 1076_linux-3.10.77.patch From: http://www.kernel.org Desc: Linux 3.10.77 +Patch: 1077_linux-3.10.78.patch +From: http://www.kernel.org +Desc: Linux 3.10.78 + +Patch: 1078_linux-3.10.79.patch +From: http://www.kernel.org +Desc: Linux 3.10.79 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1077_linux-3.10.78.patch b/1077_linux-3.10.78.patch new file mode 100644 index 000..9646397 --- /dev/null +++ b/1077_linux-3.10.78.patch @@ -0,0 +1,1032 @@ +diff --git a/Makefile b/Makefile +index 923ad8a64e3b..cf99a9b53c6f 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 77 ++SUBLEVEL = 78 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arc/kernel/signal.c b/arch/arc/kernel/signal.c +index 7e95e1a86510..6763654239a2 100644 +--- a/arch/arc/kernel/signal.c b/arch/arc/kernel/signal.c +@@ -131,6 +131,15 @@ SYSCALL_DEFINE0(rt_sigreturn) + /* Don't restart from sigreturn */ + syscall_wont_restart(regs); + ++ /* ++ * Ensure that sigreturn always returns to user mode (in case the ++ * regs saved on user stack got fudged between save and sigreturn) ++ * Otherwise it is easy to panic the kernel with a custom ++ * signal handler and/or restorer which clobberes the status32/ret ++ * to return to a bogus location in kernel mode. ++ */ ++ regs->status32 |= STATUS_U_MASK; ++ + return regs->r0; + + badframe: +@@ -234,8 +243,11 @@ setup_rt_frame(int signo, struct k_sigaction *ka, siginfo_t *info, + + /* +* handler returns using sigreturn stub provided already by userpsace ++ * If not, nuke the process right away +*/ +- BUG_ON(!(ka->sa.sa_flags & SA_RESTORER)); ++ if(!(ka->sa.sa_flags & SA_RESTORER)) ++ return 1; ++ + regs->blink = (unsigned long)ka->sa.sa_restorer; + + /* User Stack for signal handler will be above the frame just carved */ +@@ -302,12 +314,12 @@ handle_signal(unsigned long sig, struct k_sigaction *ka, siginfo_t *info, + struct pt_regs *regs) + { + sigset_t *oldset = sigmask_to_save(); +- int ret; ++ int failed; + + /* Set up the stack frame */ +- ret = setup_rt_frame(sig, ka, info, oldset, regs); ++ failed = setup_rt_frame(sig, ka, info, oldset, regs); + +- if (ret) ++ if (failed) + force_sigsegv(sig, current); + else + signal_delivered(sig, info, ka, regs, 0); +diff --git a/arch/arm/boot/dts/dove.dtsi b/arch/arm/boot/dts/dove.dtsi +index 6cab46849cdb..d1e47092d21a 100644 +--- a/arch/arm/boot/dts/dove.dtsi b/arch/arm/boot/dts/dove.dtsi +@@ -75,7 +75,7 @@ + + uart2: serial@12200 { + compatible = "ns16550a"; +- reg = <0x12000 0x100>; ++ reg = <0x12200 0x100>; + reg-shift = <2>; + interrupts = <9>; + clocks = <&core_clk 0>; +@@ -84,7 +84,7 @@ + + uart3: serial@12300 { + compatible = "ns16550a"; +- reg = <0x12100 0x100>; ++ reg = <0x12300 0x100>; + reg-shift = <2>; + interrupts = <10>; + clocks = <&core_clk 0>; +diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c +index 7e3f45105f11..dd297099c99d 100644 +--- a/drivers/block/rbd.c b/drivers/block/rbd.c +@@ -2115,6 +2115,11 @@ static bool rbd_img_obj_end_request(struct rbd_obj_request *obj_request) + result, xferred); + if (!img_request->result) + img_request->result = result; ++ /* ++ * Need to end I/O on the entire obj_request worth of ++ * bytes in case of error. ++ */ ++ xferred = obj_request->length; + } + + /* Image object requests don't own their page array */ +diff --git a/drivers/hv/channel_mgmt.c b/drivers/hv/channel_mgmt.c +index 21ef68934a20..edf8995cb3b3 100644 +--- a/drivers/hv/channel_mgmt.c b/drivers/hv/channel_mgmt.c +@@ -64
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 975efe6fa0366a157bd1f54900693cdcc23c501d Author: Mike Pagano gentoo org> AuthorDate: Fri May 8 12:53:49 2015 + Commit: Mike Pagano gentoo org> CommitDate: Fri May 8 12:53:49 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=975efe6f Linux patch 3.10.76. Linux patch 3.10.77 _README |8 + 1075_linux-3.10.76.patch | 2030 ++ 1076_linux-3.10.77.patch | 1848 + 3 files changed, 3886 insertions(+) diff --git a/_README b/_README index 7ca2835..89fcce7 100644 --- a/_README +++ b/_README @@ -342,6 +342,14 @@ Patch: 1074_linux-3.10.75.patch From: http://www.kernel.org Desc: Linux 3.10.75 +Patch: 1075_linux-3.10.76.patch +From: http://www.kernel.org +Desc: Linux 3.10.76 + +Patch: 1076_linux-3.10.77.patch +From: http://www.kernel.org +Desc: Linux 3.10.77 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1075_linux-3.10.76.patch b/1075_linux-3.10.76.patch new file mode 100644 index 000..6293ff4 --- /dev/null +++ b/1075_linux-3.10.76.patch @@ -0,0 +1,2030 @@ +diff --git a/Makefile b/Makefile +index 87909d8302ad..019a6a4b386d 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 75 ++SUBLEVEL = 76 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/alpha/mm/fault.c b/arch/alpha/mm/fault.c +index 98838a05ba6d..9d0ac091a52a 100644 +--- a/arch/alpha/mm/fault.c b/arch/alpha/mm/fault.c +@@ -156,6 +156,8 @@ retry: + if (unlikely(fault & VM_FAULT_ERROR)) { + if (fault & VM_FAULT_OOM) + goto out_of_memory; ++ else if (fault & VM_FAULT_SIGSEGV) ++ goto bad_area; + else if (fault & VM_FAULT_SIGBUS) + goto do_sigbus; + BUG(); +diff --git a/arch/arc/mm/fault.c b/arch/arc/mm/fault.c +index 50533b750a99..08f65bcf9130 100644 +--- a/arch/arc/mm/fault.c b/arch/arc/mm/fault.c +@@ -160,6 +160,8 @@ good_area: + /* TBD: switch to pagefault_out_of_memory() */ + if (fault & VM_FAULT_OOM) + goto out_of_memory; ++ else if (fault & VM_FAULT_SIGSEGV) ++ goto bad_area; + else if (fault & VM_FAULT_SIGBUS) + goto do_sigbus; + +diff --git a/arch/avr32/mm/fault.c b/arch/avr32/mm/fault.c +index 0eca93327195..d223a8b57c1e 100644 +--- a/arch/avr32/mm/fault.c b/arch/avr32/mm/fault.c +@@ -142,6 +142,8 @@ good_area: + if (unlikely(fault & VM_FAULT_ERROR)) { + if (fault & VM_FAULT_OOM) + goto out_of_memory; ++ else if (fault & VM_FAULT_SIGSEGV) ++ goto bad_area; + else if (fault & VM_FAULT_SIGBUS) + goto do_sigbus; + BUG(); +diff --git a/arch/cris/mm/fault.c b/arch/cris/mm/fault.c +index 1790f22e71a2..2686a7aa8ec8 100644 +--- a/arch/cris/mm/fault.c b/arch/cris/mm/fault.c +@@ -176,6 +176,8 @@ retry: + if (unlikely(fault & VM_FAULT_ERROR)) { + if (fault & VM_FAULT_OOM) + goto out_of_memory; ++ else if (fault & VM_FAULT_SIGSEGV) ++ goto bad_area; + else if (fault & VM_FAULT_SIGBUS) + goto do_sigbus; + BUG(); +diff --git a/arch/frv/mm/fault.c b/arch/frv/mm/fault.c +index 9a66372fc7c7..ec4917ddf678 100644 +--- a/arch/frv/mm/fault.c b/arch/frv/mm/fault.c +@@ -168,6 +168,8 @@ asmlinkage void do_page_fault(int datammu, unsigned long esr0, unsigned long ear + if (unlikely(fault & VM_FAULT_ERROR)) { + if (fault & VM_FAULT_OOM) + goto out_of_memory; ++ else if (fault & VM_FAULT_SIGSEGV) ++ goto bad_area; + else if (fault & VM_FAULT_SIGBUS) + goto do_sigbus; + BUG(); +diff --git a/arch/ia64/mm/fault.c b/arch/ia64/mm/fault.c +index 7225dad87094..ba5ba7accd0d 100644 +--- a/arch/ia64/mm/fault.c b/arch/ia64/mm/fault.c +@@ -172,6 +172,8 @@ retry: +*/ + if (fault & VM_FAULT_OOM) { + goto out_of_memory; ++ } else if (fault & VM_FAULT_SIGSEGV) { ++ goto bad_area; + } else if (fault & VM_FAULT_SIGBUS) { + signal = SIGBUS; + goto bad_area; +diff --git a/arch/m32r/mm/fault.c b/arch/m32r/mm/fault.c +index e9c6a8014bd6..e3d4d4890104 100644 +--- a/arch/m32r/mm/fault.c b/arch/m32r/mm/fault.c +@@ -200,6 +200,8 @@ good_area: + if (unlikely(fault & VM_FAULT_ERROR)) { + if (fault & VM_FAULT_OOM) + goto out_of_memory; ++ else
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 1ed07cdf3b5a38329411bb4efeae4093c2160fae Author: Mike Pagano gentoo org> AuthorDate: Mon Apr 20 09:26:56 2015 + Commit: Mike Pagano gentoo org> CommitDate: Mon Apr 20 09:26:56 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=1ed07cdf Linux patch 3.10.75 _README | 4 + 1074_linux-3.10.75.patch | 748 +++ 2 files changed, 752 insertions(+) diff --git a/_README b/_README index 43a21aa..7ca2835 100644 --- a/_README +++ b/_README @@ -338,6 +338,10 @@ Patch: 1073_linux-3.10.74.patch From: http://www.kernel.org Desc: Linux 3.10.74 +Patch: 1074_linux-3.10.75.patch +From: http://www.kernel.org +Desc: Linux 3.10.75 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1074_linux-3.10.75.patch b/1074_linux-3.10.75.patch new file mode 100644 index 000..01ac0ff --- /dev/null +++ b/1074_linux-3.10.75.patch @@ -0,0 +1,748 @@ +diff --git a/Makefile b/Makefile +index d2a3930159ea..87909d8302ad 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 74 ++SUBLEVEL = 75 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c +index a88894190e41..c991fe680e58 100644 +--- a/drivers/acpi/processor_idle.c b/drivers/acpi/processor_idle.c +@@ -978,7 +978,7 @@ static int acpi_processor_setup_cpuidle_states(struct acpi_processor *pr) + return -EINVAL; + + drv->safe_state_index = -1; +- for (i = 0; i < CPUIDLE_STATE_MAX; i++) { ++ for (i = CPUIDLE_DRIVER_STATE_START; i < CPUIDLE_STATE_MAX; i++) { + drv->states[i].name[0] = '\0'; + drv->states[i].desc[0] = '\0'; + } +diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c +index cf1576d54363..a5c987ae665d 100644 +--- a/drivers/block/nbd.c b/drivers/block/nbd.c +@@ -815,10 +815,6 @@ static int __init nbd_init(void) + return -EINVAL; + } + +- nbd_dev = kcalloc(nbds_max, sizeof(*nbd_dev), GFP_KERNEL); +- if (!nbd_dev) +- return -ENOMEM; +- + part_shift = 0; + if (max_part > 0) { + part_shift = fls(max_part); +@@ -840,6 +836,10 @@ static int __init nbd_init(void) + if (nbds_max > 1UL << (MINORBITS - part_shift)) + return -EINVAL; + ++ nbd_dev = kcalloc(nbds_max, sizeof(*nbd_dev), GFP_KERNEL); ++ if (!nbd_dev) ++ return -ENOMEM; ++ + for (i = 0; i < nbds_max; i++) { + struct gendisk *disk = alloc_disk(1 << part_shift); + if (!disk) +diff --git a/drivers/dma/omap-dma.c b/drivers/dma/omap-dma.c +index ec3fc4fd9160..b94a37630e36 100644 +--- a/drivers/dma/omap-dma.c b/drivers/dma/omap-dma.c +@@ -487,6 +487,7 @@ static int omap_dma_terminate_all(struct omap_chan *c) +* c->desc is NULL and exit.) +*/ + if (c->desc) { ++ omap_dma_desc_free(&c->desc->vd); + c->desc = NULL; + /* Avoid stopping the dma twice */ + if (!c->paused) +diff --git a/drivers/gpu/drm/radeon/radeon_bios.c b/drivers/gpu/drm/radeon/radeon_bios.c +index b131520521e4..72b02483ff03 100644 +--- a/drivers/gpu/drm/radeon/radeon_bios.c b/drivers/gpu/drm/radeon/radeon_bios.c +@@ -76,7 +76,7 @@ static bool igp_read_bios_from_vram(struct radeon_device *rdev) + + static bool radeon_read_bios(struct radeon_device *rdev) + { +- uint8_t __iomem *bios; ++ uint8_t __iomem *bios, val1, val2; + size_t size; + + rdev->bios = NULL; +@@ -86,15 +86,19 @@ static bool radeon_read_bios(struct radeon_device *rdev) + return false; + } + +- if (size == 0 || bios[0] != 0x55 || bios[1] != 0xaa) { ++ val1 = readb(&bios[0]); ++ val2 = readb(&bios[1]); ++ ++ if (size == 0 || val1 != 0x55 || val2 != 0xaa) { + pci_unmap_rom(rdev->pdev, bios); + return false; + } +- rdev->bios = kmemdup(bios, size, GFP_KERNEL); ++ rdev->bios = kzalloc(size, GFP_KERNEL); + if (rdev->bios == NULL) { + pci_unmap_rom(rdev->pdev, bios); + return false; + } ++ memcpy_fromio(rdev->bios, bios, size); + pci_unmap_rom(rdev->pdev, bios); + return true; + } +diff --git a/drivers/iio/imu/adis_trigger.c b/drivers/iio/imu/adis_trigger.c +index e0017c22bb9c..f53e9a803a0e 100644 +--- a/drivers/iio/imu/adis_trigger.c b/drivers/iio/imu/adis_trigger.c +@@ -60,7 +60,7 @@ int adis_probe_trigger(struct adis *adis, struct iio_dev *indio_dev) + iio_trigger_set_drvdata(adis->trig, adis); + ret = iio_trigger_register(adis->trig); + +- indio_dev->trig = adis->trig; ++ indio_dev->trig = iio_trigger_get(adis->trig); + if (ret) +
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 6580d9fac23bee925ad44b62d9bc581d33e22626 Author: Mike Pagano gentoo org> AuthorDate: Tue Apr 14 13:05:39 2015 + Commit: Mike Pagano gentoo org> CommitDate: Tue Apr 14 13:05:39 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=6580d9fa Linux patch 3.10.74 _README | 4 + 1073_linux-3.10.74.patch | 599 +++ 2 files changed, 603 insertions(+) diff --git a/_README b/_README index 9319079..43a21aa 100644 --- a/_README +++ b/_README @@ -334,6 +334,10 @@ Patch: 1072_linux-3.10.73.patch From: http://www.kernel.org Desc: Linux 3.10.73 +Patch: 1073_linux-3.10.74.patch +From: http://www.kernel.org +Desc: Linux 3.10.74 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1073_linux-3.10.74.patch b/1073_linux-3.10.74.patch new file mode 100644 index 000..7dc6831 --- /dev/null +++ b/1073_linux-3.10.74.patch @@ -0,0 +1,599 @@ +diff --git a/Makefile b/Makefile +index b1129094ebfd..d2a3930159ea 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 73 ++SUBLEVEL = 74 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/powerpc/boot/dts/fsl/pq3-etsec2-0.dtsi b/arch/powerpc/boot/dts/fsl/pq3-etsec2-0.dtsi +index 1382fec9e8c5..7fcb1ac0f232 100644 +--- a/arch/powerpc/boot/dts/fsl/pq3-etsec2-0.dtsi b/arch/powerpc/boot/dts/fsl/pq3-etsec2-0.dtsi +@@ -50,6 +50,7 @@ ethernet@b { + fsl,num_tx_queues = <0x8>; + fsl,magic-packet; + local-mac-address = [ 00 00 00 00 00 00 ]; ++ ranges; + + queue-group@b { + #address-cells = <1>; +diff --git a/arch/powerpc/boot/dts/fsl/pq3-etsec2-1.dtsi b/arch/powerpc/boot/dts/fsl/pq3-etsec2-1.dtsi +index 221cd2ea5b31..9f25427c1527 100644 +--- a/arch/powerpc/boot/dts/fsl/pq3-etsec2-1.dtsi b/arch/powerpc/boot/dts/fsl/pq3-etsec2-1.dtsi +@@ -50,6 +50,7 @@ ethernet@b1000 { + fsl,num_tx_queues = <0x8>; + fsl,magic-packet; + local-mac-address = [ 00 00 00 00 00 00 ]; ++ ranges; + + queue-group@b1000 { + #address-cells = <1>; +diff --git a/arch/powerpc/boot/dts/fsl/pq3-etsec2-2.dtsi b/arch/powerpc/boot/dts/fsl/pq3-etsec2-2.dtsi +index 61456c317609..cd7c318ab131 100644 +--- a/arch/powerpc/boot/dts/fsl/pq3-etsec2-2.dtsi b/arch/powerpc/boot/dts/fsl/pq3-etsec2-2.dtsi +@@ -49,6 +49,7 @@ ethernet@b2000 { + fsl,num_tx_queues = <0x8>; + fsl,magic-packet; + local-mac-address = [ 00 00 00 00 00 00 ]; ++ ranges; + + queue-group@b2000 { + #address-cells = <1>; +diff --git a/drivers/md/dm.c b/drivers/md/dm.c +index a87f0c42cb8b..f69fed826a56 100644 +--- a/drivers/md/dm.c b/drivers/md/dm.c +@@ -2333,10 +2333,16 @@ static void __dm_destroy(struct mapped_device *md, bool wait) + set_bit(DMF_FREEING, &md->flags); + spin_unlock(&_minor_lock); + ++ /* ++ * Take suspend_lock so that presuspend and postsuspend methods ++ * do not race with internal suspend. ++ */ ++ mutex_lock(&md->suspend_lock); + if (!dm_suspended_md(md)) { + dm_table_presuspend_targets(map); + dm_table_postsuspend_targets(map); + } ++ mutex_unlock(&md->suspend_lock); + + /* +* Rare, but there may be I/O requests still going to complete, +diff --git a/drivers/net/ethernet/amd/pcnet32.c b/drivers/net/ethernet/amd/pcnet32.c +index ed2130727643..f6415fda103b 100644 +--- a/drivers/net/ethernet/amd/pcnet32.c b/drivers/net/ethernet/amd/pcnet32.c +@@ -1516,7 +1516,7 @@ pcnet32_probe1(unsigned long ioaddr, int shared, struct pci_dev *pdev) + { + struct pcnet32_private *lp; + int i, media; +- int fdx, mii, fset, dxsuflo; ++ int fdx, mii, fset, dxsuflo, sram; + int chip_version; + char *chipname; + struct net_device *dev; +@@ -1553,7 +1553,7 @@ pcnet32_probe1(unsigned long ioaddr, int shared, struct pci_dev *pdev) + } + + /* initialize variables */ +- fdx = mii = fset = dxsuflo = 0; ++ fdx = mii = fset = dxsuflo = sram = 0; + chip_version = (chip_version >> 12) & 0x; + + switch (chip_version) { +@@ -1586,6 +1586,7 @@ pcnet32_probe1(unsigned long ioaddr, int shared, struct pci_dev *pdev) + chipname = "PCnet/FAST III 79C973"; /* PCI */ + fdx = 1; + mii = 1; ++ sram = 1; + break; + case 0x2626: + chipname = "PCnet/Home 79C978"; /* PCI */ +@@ -1609,6 +1610,7 @@ pcnet32_probe1(unsigned long ioaddr, int shared, struct pci_dev *pdev) + chipname = "PCnet/FAST III 79C975"; /* PCI */ + fdx = 1; + mii = 1; ++ sram = 1; + break; + case 0x2628: +
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 97608c66db0b4ea264f5fc4a6516f124d71da412 Author: Mike Pagano gentoo org> AuthorDate: Sat Mar 28 20:02:50 2015 + Commit: Mike Pagano gentoo org> CommitDate: Sat Mar 28 20:02:50 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=97608c66 Add check to saved_root_name for supported filesystem path naming. 2900_dev-root-proc-mount-fix.patch | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/2900_dev-root-proc-mount-fix.patch b/2900_dev-root-proc-mount-fix.patch index 4c89adf..4a7e42a 100644 --- a/2900_dev-root-proc-mount-fix.patch +++ b/2900_dev-root-proc-mount-fix.patch @@ -1,6 +1,6 @@ a/init/do_mounts.c 2013-01-25 19:11:11.609802424 -0500 -+++ b/init/do_mounts.c 2013-01-25 19:14:20.606053568 -0500 -@@ -461,7 +461,10 @@ void __init change_floppy(char *fmt, ... +--- a/init/do_mounts.c 2015-03-28 16:00:36.114842442 -0400 b/init/do_mounts.c 2015-03-28 16:01:57.768841663 -0400 +@@ -480,7 +480,10 @@ void __init change_floppy(char *fmt, ... va_start(args, fmt); vsprintf(buf, fmt, args); va_end(args); @@ -12,12 +12,12 @@ if (fd >= 0) { sys_ioctl(fd, FDEJECT, 0); sys_close(fd); -@@ -505,7 +508,13 @@ void __init mount_root(void) +@@ -524,7 +527,13 @@ void __init mount_root(void) #endif #ifdef CONFIG_BLOCK create_dev("/dev/root", ROOT_DEV); - mount_block_root("/dev/root", root_mountflags); -+ if (saved_root_name[0]) { ++ if (saved_root_name[0] == '/') { + create_dev(saved_root_name, ROOT_DEV); + mount_block_root(saved_root_name, root_mountflags); + } else {
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: ad556f40fb7e235038ee94c87a2b20fee2e064df Author: Mike Pagano gentoo org> AuthorDate: Thu Mar 26 17:04:56 2015 + Commit: Mike Pagano gentoo org> CommitDate: Thu Mar 26 17:04:56 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=ad556f40 Linux patch 3.10.73 _README |4 + 1072_linux-3.10.73.patch | 1772 ++ 2 files changed, 1776 insertions(+) diff --git a/_README b/_README index b0f0bc4..9319079 100644 --- a/_README +++ b/_README @@ -330,6 +330,10 @@ Patch: 1071_linux-3.10.72.patch From: http://www.kernel.org Desc: Linux 3.10.72 +Patch: 1072_linux-3.10.73.patch +From: http://www.kernel.org +Desc: Linux 3.10.73 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1072_linux-3.10.73.patch b/1072_linux-3.10.73.patch new file mode 100644 index 000..ec1cc88 --- /dev/null +++ b/1072_linux-3.10.73.patch @@ -0,0 +1,1772 @@ +diff --git a/Makefile b/Makefile +index 211bb34102bf..b1129094ebfd 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 72 ++SUBLEVEL = 73 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm/mach-at91/pm.h b/arch/arm/mach-at91/pm.h +index 2f5908f0b8c5..d8af0755bddc 100644 +--- a/arch/arm/mach-at91/pm.h b/arch/arm/mach-at91/pm.h +@@ -37,7 +37,7 @@ static inline void at91rm9200_standby(void) + "mcrp15, 0, %0, c7, c0, 4\n\t" + "str%5, [%1, %2]" + : +- : "r" (0), "r" (AT91_BASE_SYS), "r" (AT91RM9200_SDRAMC_LPR), ++ : "r" (0), "r" (at91_ramc_base[0]), "r" (AT91RM9200_SDRAMC_LPR), + "r" (1), "r" (AT91RM9200_SDRAMC_SRR), + "r" (lpr)); + } +diff --git a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c +index ee7ac5e6e28a..c5c640779549 100644 +--- a/arch/powerpc/kernel/smp.c b/arch/powerpc/kernel/smp.c +@@ -544,8 +544,8 @@ int __cpuinit __cpu_up(unsigned int cpu, struct task_struct *tidle) + if (smp_ops->give_timebase) + smp_ops->give_timebase(); + +- /* Wait until cpu puts itself in the online map */ +- while (!cpu_online(cpu)) ++ /* Wait until cpu puts itself in the online & active maps */ ++ while (!cpu_online(cpu) || !cpu_active(cpu)) + cpu_relax(); + + return 0; +diff --git a/arch/sparc/kernel/perf_event.c b/arch/sparc/kernel/perf_event.c +index b5c38faa4ead..d461b7ddf30e 100644 +--- a/arch/sparc/kernel/perf_event.c b/arch/sparc/kernel/perf_event.c +@@ -960,6 +960,8 @@ out: + cpuc->pcr[0] |= cpuc->event[0]->hw.config_base; + } + ++static void sparc_pmu_start(struct perf_event *event, int flags); ++ + /* On this PMU each PIC has it's own PCR control register. */ + static void calculate_multiple_pcrs(struct cpu_hw_events *cpuc) + { +@@ -972,20 +974,13 @@ static void calculate_multiple_pcrs(struct cpu_hw_events *cpuc) + struct perf_event *cp = cpuc->event[i]; + struct hw_perf_event *hwc = &cp->hw; + int idx = hwc->idx; +- u64 enc; + + if (cpuc->current_idx[i] != PIC_NO_INDEX) + continue; + +- sparc_perf_event_set_period(cp, hwc, idx); + cpuc->current_idx[i] = idx; + +- enc = perf_event_get_enc(cpuc->events[i]); +- cpuc->pcr[idx] &= ~mask_for_index(idx); +- if (hwc->state & PERF_HES_STOPPED) +- cpuc->pcr[idx] |= nop_for_index(idx); +- else +- cpuc->pcr[idx] |= event_encoding(enc, idx); ++ sparc_pmu_start(cp, PERF_EF_RELOAD); + } + out: + for (i = 0; i < cpuc->n_events; i++) { +@@ -1101,7 +1096,6 @@ static void sparc_pmu_del(struct perf_event *event, int _flags) + int i; + + local_irq_save(flags); +- perf_pmu_disable(event->pmu); + + for (i = 0; i < cpuc->n_events; i++) { + if (event == cpuc->event[i]) { +@@ -1127,7 +1121,6 @@ static void sparc_pmu_del(struct perf_event *event, int _flags) + } + } + +- perf_pmu_enable(event->pmu); + local_irq_restore(flags); + } + +@@ -1361,7 +1354,6 @@ static int sparc_pmu_add(struct perf_event *event, int ef_flags) + unsigned long flags; + + local_irq_save(flags); +- perf_pmu_disable(event->pmu); + + n0 = cpuc->n_events; + if (n0 >= sparc_pmu->max_hw_events) +@@ -1394,7 +1386,6 @@ nocheck: + + ret = 0; + out: +- perf_pmu_enable(event->pmu); + local_irq_restore(flags); + return ret; + } +diff --git a/arch/sparc/kernel/process_64.c b/arch/sparc/kernel/process_64.c +index b9cc9763faf4..036e43cef6fb 100644 +--- a/arch/sparc/kernel/process_64.c b/arch/sparc/kernel/process_6
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 052ca8438702120dc6223b16609b86ec006c6989 Author: Mike Pagano gentoo org> AuthorDate: Thu Mar 19 22:57:46 2015 + Commit: Mike Pagano gentoo org> CommitDate: Thu Mar 19 22:57:46 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=052ca843 Linux patch 3.10.72 _README |4 + 1071_linux-3.10.72.patch | 2207 ++ 2 files changed, 2211 insertions(+) diff --git a/_README b/_README index 16b79b8..b0f0bc4 100644 --- a/_README +++ b/_README @@ -326,6 +326,10 @@ Patch: 1070_linux-3.10.71.patch From: http://www.kernel.org Desc: Linux 3.10.71 +Patch: 1071_linux-3.10.72.patch +From: http://www.kernel.org +Desc: Linux 3.10.72 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1071_linux-3.10.72.patch b/1071_linux-3.10.72.patch new file mode 100644 index 000..430142d --- /dev/null +++ b/1071_linux-3.10.72.patch @@ -0,0 +1,2207 @@ +diff --git a/Makefile b/Makefile +index d8b42f71ea5a..211bb34102bf 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 71 ++SUBLEVEL = 72 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/mips/kvm/trace.h b/arch/mips/kvm/trace.h +index bc9e0f406c08..e51621e36152 100644 +--- a/arch/mips/kvm/trace.h b/arch/mips/kvm/trace.h +@@ -26,18 +26,18 @@ TRACE_EVENT(kvm_exit, + TP_PROTO(struct kvm_vcpu *vcpu, unsigned int reason), + TP_ARGS(vcpu, reason), + TP_STRUCT__entry( +- __field(struct kvm_vcpu *, vcpu) ++ __field(unsigned long, pc) + __field(unsigned int, reason) + ), + + TP_fast_assign( +- __entry->vcpu = vcpu; ++ __entry->pc = vcpu->arch.pc; + __entry->reason = reason; + ), + + TP_printk("[%s]PC: 0x%08lx", + kvm_mips_exit_types_str[__entry->reason], +-__entry->vcpu->arch.pc) ++__entry->pc) + ); + + #endif /* _TRACE_KVM_H */ +diff --git a/arch/x86/kernel/entry_64.S b/arch/x86/kernel/entry_64.S +index 948b2e14df8c..6ed8f16fd61b 100644 +--- a/arch/x86/kernel/entry_64.S b/arch/x86/kernel/entry_64.S +@@ -557,11 +557,14 @@ ENTRY(ret_from_fork) + testl $3, CS-ARGOFFSET(%rsp)# from kernel_thread? + jz 1f + +- testl $_TIF_IA32, TI_flags(%rcx)# 32-bit compat task needs IRET +- jnz int_ret_from_sys_call +- +- RESTORE_TOP_OF_STACK %rdi, -ARGOFFSET +- jmp ret_from_sys_call # go to the SYSRET fastpath ++ /* ++ * By the time we get here, we have no idea whether our pt_regs, ++ * ti flags, and ti status came from the 64-bit SYSCALL fast path, ++ * the slow path, or one of the ia32entry paths. ++ * Use int_ret_from_sys_call to return, since it can safely handle ++ * all of the above. ++ */ ++ jmp int_ret_from_sys_call + + 1: + subq $REST_SKIP, %rsp # leave space for volatiles +diff --git a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c +index 4c01f022c6ac..af88fa20dbe8 100644 +--- a/arch/x86/kvm/emulate.c b/arch/x86/kvm/emulate.c +@@ -4732,7 +4732,8 @@ int x86_emulate_insn(struct x86_emulate_ctxt *ctxt) + if (rc != X86EMUL_CONTINUE) + goto done; + } +- ctxt->dst.orig_val = ctxt->dst.val; ++ /* Copy full 64-bit value for CMPXCHG8B. */ ++ ctxt->dst.orig_val64 = ctxt->dst.val64; + + special_insn: + +diff --git a/drivers/acpi/video.c b/drivers/acpi/video.c +index 82a01cc45f9c..0dc9ff61d7c2 100644 +--- a/drivers/acpi/video.c b/drivers/acpi/video.c +@@ -1953,6 +1953,17 @@ EXPORT_SYMBOL(acpi_video_unregister); + + static int __init acpi_video_init(void) + { ++ /* ++ * Let the module load even if ACPI is disabled (e.g. due to ++ * a broken BIOS) so that i915.ko can still be loaded on such ++ * old systems without an AcpiOpRegion. ++ * ++ * acpi_video_register() will report -ENODEV later as well due ++ * to acpi_disabled when i915.ko tries to register itself afterwards. ++ */ ++ if (acpi_disabled) ++ return 0; ++ + dmi_check_system(video_dmi_table); + + if (intel_opregion_present()) +diff --git a/drivers/clk/sunxi/clk-factors.c b/drivers/clk/sunxi/clk-factors.c +index 88523f91d9b7..7555793097f2 100644 +--- a/drivers/clk/sunxi/clk-factors.c b/drivers/clk/sunxi/clk-factors.c +@@ -70,7 +70,7 @@ static unsigned long clk_factors_recalc_rate(struct clk_hw *hw, + p = FACTOR_GET(config->pshift, config->pwidth, reg); + + /* Calculate the rate */ +- rate = (parent_rate * n * (k + 1) >> p) / (m + 1); ++ rate = (parent_rate * (n +
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 8003cfece2af3029db01cf641310ce9c9af859de Author: Mike Pagano gentoo org> AuthorDate: Sat Mar 7 14:53:26 2015 + Commit: Mike Pagano gentoo org> CommitDate: Sat Mar 7 14:53:26 2015 + URL:https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=8003cfec Linux patch 3.10.71 _README |4 + 1070_linux-3.10.71.patch | 1503 ++ 2 files changed, 1507 insertions(+) diff --git a/_README b/_README index 59f86bb..16b79b8 100644 --- a/_README +++ b/_README @@ -322,6 +322,10 @@ Patch: 1069_linux-3.10.70.patch From: http://www.kernel.org Desc: Linux 3.10.70 +Patch: 1070_linux-3.10.71.patch +From: http://www.kernel.org +Desc: Linux 3.10.71 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1070_linux-3.10.71.patch b/1070_linux-3.10.71.patch new file mode 100644 index 000..3465e29 --- /dev/null +++ b/1070_linux-3.10.71.patch @@ -0,0 +1,1503 @@ +diff --git a/Makefile b/Makefile +index 402cbb7c27f1..d8b42f71ea5a 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 70 ++SUBLEVEL = 71 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arc/include/asm/pgtable.h b/arch/arc/include/asm/pgtable.h +index 95b1522212a7..ecf23eaa20c1 100644 +--- a/arch/arc/include/asm/pgtable.h b/arch/arc/include/asm/pgtable.h +@@ -270,7 +270,8 @@ static inline void pmd_set(pmd_t *pmdp, pte_t *ptep) + #define pmd_clear(xp) do { pmd_val(*(xp)) = 0; } while (0) + + #define pte_page(x) (mem_map + \ +- (unsigned long)(((pte_val(x) - PAGE_OFFSET) >> PAGE_SHIFT))) ++ (unsigned long)(((pte_val(x) - CONFIG_LINUX_LINK_BASE) >> \ ++ PAGE_SHIFT))) + + #define mk_pte(page, pgprot) \ + ({\ +diff --git a/arch/arm/mach-pxa/corgi.c b/arch/arm/mach-pxa/corgi.c +index a5b8fead7d61..9cb7ea776ecd 100644 +--- a/arch/arm/mach-pxa/corgi.c b/arch/arm/mach-pxa/corgi.c +@@ -26,6 +26,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -711,6 +712,8 @@ static void __init corgi_init(void) + sharpsl_nand_partitions[1].size = 53 * 1024 * 1024; + + platform_add_devices(devices, ARRAY_SIZE(devices)); ++ ++ regulator_has_full_constraints(); + } + + static void __init fixup_corgi(struct tag *tags, char **cmdline, +diff --git a/arch/arm/mach-pxa/hx4700.c b/arch/arm/mach-pxa/hx4700.c +index 133109ec7332..a07accfb3aec 100644 +--- a/arch/arm/mach-pxa/hx4700.c b/arch/arm/mach-pxa/hx4700.c +@@ -891,6 +891,8 @@ static void __init hx4700_init(void) + mdelay(10); + gpio_set_value(GPIO71_HX4700_ASIC3_nRESET, 1); + mdelay(10); ++ ++ regulator_has_full_constraints(); + } + + MACHINE_START(H4700, "HP iPAQ HX4700") +diff --git a/arch/arm/mach-pxa/poodle.c b/arch/arm/mach-pxa/poodle.c +index 50ccd5f1d560..362c05fffc28 100644 +--- a/arch/arm/mach-pxa/poodle.c b/arch/arm/mach-pxa/poodle.c +@@ -25,6 +25,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -452,6 +453,7 @@ static void __init poodle_init(void) + pxa_set_i2c_info(NULL); + i2c_register_board_info(0, ARRAY_AND_SIZE(poodle_i2c_devices)); + poodle_init_spi(); ++ regulator_has_full_constraints(); + } + + static void __init fixup_poodle(struct tag *tags, char **cmdline, +diff --git a/arch/arm/mach-sa1100/pm.c b/arch/arm/mach-sa1100/pm.c +index 6645d1e31f14..34853d5dfda2 100644 +--- a/arch/arm/mach-sa1100/pm.c b/arch/arm/mach-sa1100/pm.c +@@ -81,6 +81,7 @@ static int sa11x0_pm_enter(suspend_state_t state) + /* +* Ensure not to come back here if it wasn't intended +*/ ++ RCSR = RCSR_SMR; + PSPR = 0; + + /* +diff --git a/arch/arm64/kernel/signal32.c b/arch/arm64/kernel/signal32.c +index e393174fe859..3d478102b1c0 100644 +--- a/arch/arm64/kernel/signal32.c b/arch/arm64/kernel/signal32.c +@@ -179,8 +179,7 @@ int copy_siginfo_to_user32(compat_siginfo_t __user *to, siginfo_t *from) + case __SI_TIMER: +err |= __put_user(from->si_tid, &to->si_tid); +err |= __put_user(from->si_overrun, &to->si_overrun); +- err |= __put_user((compat_uptr_t)(unsigned long)from->si_ptr, +- &to->si_ptr); ++ err |= __put_user(from->si_int, &to->si_int); + break; + case __SI_POLL: + err |= __put_user(from->si_band, &to->si_band); +@@ -209,7 +208,7 @@ int copy_siginfo_to_user32(compat_siginfo_t __user *to, siginfo_t *from) + case __SI_MESGQ: /* But this is */ + err |= __put_user(from->si_pid, &to->si_pid); +
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 67b9d04ff69ca7c7a8be3fefb3247bd81d2241cc Author: Mike Pagano gentoo org> AuthorDate: Fri Feb 27 18:23:46 2015 + Commit: Mike Pagano gentoo org> CommitDate: Fri Feb 27 18:23:46 2015 + URL: http://sources.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=67b9d04f Linux patch 3.10.70. Enable link security restrictions by default. --- _README | 4 + 1069_linux-3.10.70.patch | 569 +++ 2 files changed, 573 insertions(+) diff --git a/_README b/_README index 1791ea5..59f86bb 100644 --- a/_README +++ b/_README @@ -318,6 +318,10 @@ Patch: 1068_linux-3.10.69.patch From: http://www.kernel.org Desc: Linux 3.10.69 +Patch: 1069_linux-3.10.70.patch +From: http://www.kernel.org +Desc: Linux 3.10.70 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1069_linux-3.10.70.patch b/1069_linux-3.10.70.patch new file mode 100644 index 000..eb0b700 --- /dev/null +++ b/1069_linux-3.10.70.patch @@ -0,0 +1,569 @@ +diff --git a/Makefile b/Makefile +index 81ede20061cf..402cbb7c27f1 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 69 ++SUBLEVEL = 70 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c +index 9951e66b8502..7e3f45105f11 100644 +--- a/drivers/block/rbd.c b/drivers/block/rbd.c +@@ -2149,7 +2149,6 @@ static void rbd_img_obj_callback(struct rbd_obj_request *obj_request) + rbd_assert(img_request->obj_request_count > 0); + rbd_assert(which != BAD_WHICH); + rbd_assert(which < img_request->obj_request_count); +- rbd_assert(which >= img_request->next_completion); + + spin_lock_irq(&img_request->completion_lock); + if (which != img_request->next_completion) +diff --git a/drivers/media/rc/ir-lirc-codec.c b/drivers/media/rc/ir-lirc-codec.c +index e4561264e124..a895ed02da86 100644 +--- a/drivers/media/rc/ir-lirc-codec.c b/drivers/media/rc/ir-lirc-codec.c +@@ -42,11 +42,17 @@ static int ir_lirc_decode(struct rc_dev *dev, struct ir_raw_event ev) + return -EINVAL; + + /* Packet start */ +- if (ev.reset) +- return 0; ++ if (ev.reset) { ++ /* Userspace expects a long space event before the start of ++ * the signal to use as a sync. This may be done with repeat ++ * packets and normal samples. But if a reset has been sent ++ * then we assume that a long time has passed, so we send a ++ * space with the maximum time value. */ ++ sample = LIRC_SPACE(LIRC_VALUE_MASK); ++ IR_dprintk(2, "delivering reset sync space to lirc_dev\n"); + + /* Carrier reports */ +- if (ev.carrier_report) { ++ } else if (ev.carrier_report) { + sample = LIRC_FREQUENCY(ev.carrier); + IR_dprintk(2, "carrier report (freq: %d)\n", sample); + +diff --git a/drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c b/drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c +index af951f343ff6..50104a7e963f 100644 +--- a/drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c b/drivers/net/ethernet/qlogic/netxen/netxen_nic_main.c +@@ -2315,7 +2315,10 @@ static int netxen_nic_poll(struct napi_struct *napi, int budget) + + work_done = netxen_process_rcv_ring(sds_ring, budget); + +- if ((work_done < budget) && tx_complete) { ++ if (!tx_complete) ++ work_done = budget; ++ ++ if (work_done < budget) { + napi_complete(&sds_ring->napi); + if (test_bit(__NX_DEV_UP, &adapter->state)) + netxen_nic_enable_int(sds_ring); +diff --git a/drivers/net/ppp/ppp_deflate.c b/drivers/net/ppp/ppp_deflate.c +index 602c625d95d5..b5edc7f96a39 100644 +--- a/drivers/net/ppp/ppp_deflate.c b/drivers/net/ppp/ppp_deflate.c +@@ -246,7 +246,7 @@ static int z_compress(void *arg, unsigned char *rptr, unsigned char *obuf, + /* +* See if we managed to reduce the size of the packet. +*/ +- if (olen < isize) { ++ if (olen < isize && olen <= osize) { + state->stats.comp_bytes += olen; + state->stats.comp_packets++; + } else { +diff --git a/include/net/ip.h b/include/net/ip.h +index 8695359982d1..0a62365149e2 100644 +--- a/include/net/ip.h b/include/net/ip.h +@@ -37,11 +37,12 @@ struct inet_skb_parm { + struct ip_options opt;/* Compiled IP options */ + unsigned char flags; + +-#define IPSKB_FORWARDED 1 +-#define IPSKB_XFRM_TUNNEL_SIZE2 +-#define IPSKB_XFRM_TRANSFORMED4 +-#define IPSKB_FRAG_COMPLETE 8 +-#define IPSKB_REROUTED16 ++#define IPSKB_FORWARDED BIT(0) ++#define I
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 2be779767cc0867fc31cbef0f8ccd1890ae53199 Author: Mike Pagano gentoo org> AuthorDate: Sat Feb 14 21:25:32 2015 + Commit: Mike Pagano gentoo org> CommitDate: Sat Feb 14 21:25:32 2015 + URL: http://sources.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=2be77976 Enable link security restrictions by default --- _README| 4 ...ble-link-security-restrictions-by-default.patch | 22 ++ 2 files changed, 26 insertions(+) diff --git a/_README b/_README index de5e6ac..1791ea5 100644 --- a/_README +++ b/_README @@ -326,6 +326,10 @@ Patch: 1505_selinux-add-SOCK_DIAG_BY_FAMILY-to-the-list-of-netli.patch From: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=6a96e15096da6e7491107321cfa660c7c2aa119d Desc: selinux: add SOCK_DIAG_BY_FAMILY to the list of netlink message types +Patch: 1510_fs-enable-link-security-restrictions-by-default.patch +From: http://sources.debian.net/src/linux/3.16.7-ckt4-3/debian/patches/debian/fs-enable-link-security-restrictions-by-default.patch/ +Desc: Enable link security restrictions by default + Patch: 1700_enable-thinkpad-micled.patch From: https://bugs.gentoo.org/show_bug.cgi?id=449248 Desc: Enable mic mute led in thinkpads diff --git a/1510_fs-enable-link-security-restrictions-by-default.patch b/1510_fs-enable-link-security-restrictions-by-default.patch new file mode 100644 index 000..639fb3c --- /dev/null +++ b/1510_fs-enable-link-security-restrictions-by-default.patch @@ -0,0 +1,22 @@ +From: Ben Hutchings +Subject: fs: Enable link security restrictions by default +Date: Fri, 02 Nov 2012 05:32:06 + +Bug-Debian: https://bugs.debian.org/609455 +Forwarded: not-needed + +This reverts commit 561ec64ae67ef25cac8d72bb9c4bfc955edfd415 +('VFS: don't do protected {sym,hard}links by default'). + +--- a/fs/namei.c b/fs/namei.c +@@ -651,8 +651,8 @@ static inline void put_link(struct namei + path_put(link); + } + +-int sysctl_protected_symlinks __read_mostly = 0; +-int sysctl_protected_hardlinks __read_mostly = 0; ++int sysctl_protected_symlinks __read_mostly = 1; ++int sysctl_protected_hardlinks __read_mostly = 1; + + /** + * may_follow_link - Check symlink following for unsafe situations
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 52f94c2bc556c879ebcf3aedcac90c48cf164cf9 Author: Mike Pagano gentoo org> AuthorDate: Wed Feb 11 15:22:14 2015 + Commit: Mike Pagano gentoo org> CommitDate: Wed Feb 11 15:22:14 2015 + URL: http://sources.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=52f94c2b Linux patch 3.10.69 --- _README | 4 + 1068_linux-3.10.69.patch | 876 +++ 2 files changed, 880 insertions(+) diff --git a/_README b/_README index 0cdf9c0..de5e6ac 100644 --- a/_README +++ b/_README @@ -314,6 +314,10 @@ Patch: 1067_linux-3.10.68.patch From: http://www.kernel.org Desc: Linux 3.10.68 +Patch: 1068_linux-3.10.69.patch +From: http://www.kernel.org +Desc: Linux 3.10.69 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1068_linux-3.10.69.patch b/1068_linux-3.10.69.patch new file mode 100644 index 000..a20a5fd --- /dev/null +++ b/1068_linux-3.10.69.patch @@ -0,0 +1,876 @@ +diff --git a/Makefile b/Makefile +index dd67be657716..81ede20061cf 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 68 ++SUBLEVEL = 69 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm64/include/asm/cputype.h b/arch/arm64/include/asm/cputype.h +index cf2749488cd4..be9b5ca9a6c0 100644 +--- a/arch/arm64/include/asm/cputype.h b/arch/arm64/include/asm/cputype.h +@@ -74,6 +74,8 @@ static inline u32 __attribute_const__ read_cpuid_cachetype(void) + return read_cpuid(ID_CTR_EL0); + } + ++void cpuinfo_store_cpu(void); ++ + #endif /* __ASSEMBLY__ */ + + #endif +diff --git a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c +index add6ea616843..7cc551d1b0e1 100644 +--- a/arch/arm64/kernel/setup.c b/arch/arm64/kernel/setup.c +@@ -41,6 +41,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -97,6 +98,19 @@ void __init early_print(const char *str, ...) + printk("%s", buf); + } + ++struct cpuinfo_arm64 { ++ struct cpu cpu; ++ u32 reg_midr; ++}; ++ ++static DEFINE_PER_CPU(struct cpuinfo_arm64, cpu_data); ++ ++void cpuinfo_store_cpu(void) ++{ ++ struct cpuinfo_arm64 *info = this_cpu_ptr(&cpu_data); ++ info->reg_midr = read_cpuid_id(); ++} ++ + static void __init setup_processor(void) + { + struct cpu_info *cpu_info; +@@ -127,6 +141,8 @@ static void __init setup_machine_fdt(phys_addr_t dt_phys) + struct boot_param_header *devtree; + unsigned long dt_root; + ++ cpuinfo_store_cpu(); ++ + /* Check we have a non-NULL DT pointer */ + if (!dt_phys) { + early_print("\n" +@@ -290,14 +306,12 @@ static int __init arm64_device_init(void) + } + arch_initcall(arm64_device_init); + +-static DEFINE_PER_CPU(struct cpu, cpu_data); +- + static int __init topology_init(void) + { + int i; + + for_each_possible_cpu(i) { +- struct cpu *cpu = &per_cpu(cpu_data, i); ++ struct cpu *cpu = &per_cpu(cpu_data.cpu, i); + cpu->hotpluggable = 1; + register_cpu(cpu, i); + } +@@ -312,14 +326,41 @@ static const char *hwcap_str[] = { + NULL + }; + ++#ifdef CONFIG_COMPAT ++static const char *compat_hwcap_str[] = { ++ "swp", ++ "half", ++ "thumb", ++ "26bit", ++ "fastmult", ++ "fpa", ++ "vfp", ++ "edsp", ++ "java", ++ "iwmmxt", ++ "crunch", ++ "thumbee", ++ "neon", ++ "vfpv3", ++ "vfpv3d16", ++ "tls", ++ "vfpv4", ++ "idiva", ++ "idivt", ++ "vfpd32", ++ "lpae", ++ "evtstrm" ++}; ++#endif /* CONFIG_COMPAT */ ++ + static int c_show(struct seq_file *m, void *v) + { +- int i; +- +- seq_printf(m, "Processor\t: %s rev %d (%s)\n", +- cpu_name, read_cpuid_id() & 15, ELF_PLATFORM); ++ int i, j; + + for_each_online_cpu(i) { ++ struct cpuinfo_arm64 *cpuinfo = &per_cpu(cpu_data, i); ++ u32 midr = cpuinfo->reg_midr; ++ + /* +* glibc reads /proc/cpuinfo to determine the number of +* online processors, looking for lines beginning with +@@ -328,27 +369,36 @@ static int c_show(struct seq_file *m, void *v) + #ifdef CONFIG_SMP + seq_printf(m, "processor\t: %d\n", i); + #endif +- seq_printf(m, "BogoMIPS\t: %lu.%02lu\n\n", ++ seq_printf(m, "BogoMIPS\t: %lu.%02lu\n", + loops_per_jiffy / (50UL/HZ), + loops_per_jiffy / (5000UL/HZ) % 100); +- } +- +- /* dump out the processor features */ +- seq_puts(m, "Features\t: "); +- +- for (i = 0; hwcap_str[i]; i++) +- if (elf_hwcap & (1 << i)) +- seq_printf(m, "%s ", hwcap_str[i]); + +- seq_print
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: b7bc08ab26f98f81741fbfcfb0219e28e17f88ba Author: Mike Pagano gentoo org> AuthorDate: Sat Feb 7 01:34:12 2015 + Commit: Mike Pagano gentoo org> CommitDate: Sat Feb 7 01:34:12 2015 + URL: http://sources.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=b7bc08ab Linux patch 3.10.68 --- _README |4 + 1067_linux-3.10.68.patch | 2322 ++ 2 files changed, 2326 insertions(+) diff --git a/_README b/_README index f5f4229..0cdf9c0 100644 --- a/_README +++ b/_README @@ -310,6 +310,10 @@ Patch: 1066_linux-3.10.67.patch From: http://www.kernel.org Desc: Linux 3.10.67 +Patch: 1067_linux-3.10.68.patch +From: http://www.kernel.org +Desc: Linux 3.10.68 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1067_linux-3.10.68.patch b/1067_linux-3.10.68.patch new file mode 100644 index 000..982ee80 --- /dev/null +++ b/1067_linux-3.10.68.patch @@ -0,0 +1,2322 @@ +diff --git a/Makefile b/Makefile +index 7c6711fa3c3f..dd67be657716 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 67 ++SUBLEVEL = 68 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm/include/asm/atomic.h b/arch/arm/include/asm/atomic.h +index da1c77d39327..9ee7e01066f9 100644 +--- a/arch/arm/include/asm/atomic.h b/arch/arm/include/asm/atomic.h +@@ -114,7 +114,8 @@ static inline int atomic_sub_return(int i, atomic_t *v) + + static inline int atomic_cmpxchg(atomic_t *ptr, int old, int new) + { +- unsigned long oldval, res; ++ int oldval; ++ unsigned long res; + + smp_mb(); + +@@ -238,15 +239,15 @@ static inline int __atomic_add_unless(atomic_t *v, int a, int u) + + #ifndef CONFIG_GENERIC_ATOMIC64 + typedef struct { +- u64 __aligned(8) counter; ++ long long counter; + } atomic64_t; + + #define ATOMIC64_INIT(i) { (i) } + + #ifdef CONFIG_ARM_LPAE +-static inline u64 atomic64_read(const atomic64_t *v) ++static inline long long atomic64_read(const atomic64_t *v) + { +- u64 result; ++ long long result; + + __asm__ __volatile__("@ atomic64_read\n" + " ldrd%0, %H0, [%1]" +@@ -257,7 +258,7 @@ static inline u64 atomic64_read(const atomic64_t *v) + return result; + } + +-static inline void atomic64_set(atomic64_t *v, u64 i) ++static inline void atomic64_set(atomic64_t *v, long long i) + { + __asm__ __volatile__("@ atomic64_set\n" + " strd%2, %H2, [%1]" +@@ -266,9 +267,9 @@ static inline void atomic64_set(atomic64_t *v, u64 i) + ); + } + #else +-static inline u64 atomic64_read(const atomic64_t *v) ++static inline long long atomic64_read(const atomic64_t *v) + { +- u64 result; ++ long long result; + + __asm__ __volatile__("@ atomic64_read\n" + " ldrexd %0, %H0, [%1]" +@@ -279,9 +280,9 @@ static inline u64 atomic64_read(const atomic64_t *v) + return result; + } + +-static inline void atomic64_set(atomic64_t *v, u64 i) ++static inline void atomic64_set(atomic64_t *v, long long i) + { +- u64 tmp; ++ long long tmp; + + __asm__ __volatile__("@ atomic64_set\n" + "1: ldrexd %0, %H0, [%2]\n" +@@ -294,9 +295,9 @@ static inline void atomic64_set(atomic64_t *v, u64 i) + } + #endif + +-static inline void atomic64_add(u64 i, atomic64_t *v) ++static inline void atomic64_add(long long i, atomic64_t *v) + { +- u64 result; ++ long long result; + unsigned long tmp; + + __asm__ __volatile__("@ atomic64_add\n" +@@ -311,9 +312,9 @@ static inline void atomic64_add(u64 i, atomic64_t *v) + : "cc"); + } + +-static inline u64 atomic64_add_return(u64 i, atomic64_t *v) ++static inline long long atomic64_add_return(long long i, atomic64_t *v) + { +- u64 result; ++ long long result; + unsigned long tmp; + + smp_mb(); +@@ -334,9 +335,9 @@ static inline u64 atomic64_add_return(u64 i, atomic64_t *v) + return result; + } + +-static inline void atomic64_sub(u64 i, atomic64_t *v) ++static inline void atomic64_sub(long long i, atomic64_t *v) + { +- u64 result; ++ long long result; + unsigned long tmp; + + __asm__ __volatile__("@ atomic64_sub\n" +@@ -351,9 +352,9 @@ static inline void atomic64_sub(u64 i, atomic64_t *v) + : "cc"); + } + +-static inline u64 atomic64_sub_return(u64 i, atomic64_t *v) ++static inline long long atomic64_sub_return(long long i, atomic64_t *v) + { +- u64 result; ++ long long result; + unsigned long tmp; + + smp_mb(); +@@ -374,9 +375,10 @@ static inline u64 atomic64_sub_return(u64 i, atomic64_t *v) + return result; + } + +-static inline u64 atomic64_cmpxchg(atomic64_t *ptr, u64 old, u64 new) ++static inline long long atomic64_cmpxchg(atomic64_t *ptr, long long old, ++ long l
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 30b7838f41cfebf7103845bb41ef499afe0c5e1e Author: Mike Pagano gentoo org> AuthorDate: Fri Jan 30 12:40:00 2015 + Commit: Mike Pagano gentoo org> CommitDate: Fri Jan 30 12:40:00 2015 + URL: http://sources.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=30b7838f Linux patch 3.10.67 --- _README |4 + 1066_linux-3.10.67.patch | 2417 ++ 2 files changed, 2421 insertions(+) diff --git a/_README b/_README index 1f0923b..f5f4229 100644 --- a/_README +++ b/_README @@ -306,6 +306,10 @@ Patch: 1065_linux-3.10.66.patch From: http://www.kernel.org Desc: Linux 3.10.66 +Patch: 1066_linux-3.10.67.patch +From: http://www.kernel.org +Desc: Linux 3.10.67 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1066_linux-3.10.67.patch b/1066_linux-3.10.67.patch new file mode 100644 index 000..43fdd4f --- /dev/null +++ b/1066_linux-3.10.67.patch @@ -0,0 +1,2417 @@ +diff --git a/Makefile b/Makefile +index 12ae1ef5437a..7c6711fa3c3f 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 66 ++SUBLEVEL = 67 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm/boot/dts/imx25.dtsi b/arch/arm/boot/dts/imx25.dtsi +index 82897e2d8d5a..97d1a550eb98 100644 +--- a/arch/arm/boot/dts/imx25.dtsi b/arch/arm/boot/dts/imx25.dtsi +@@ -335,7 +335,7 @@ + compatible = "fsl,imx25-pwm", "fsl,imx27-pwm"; + #pwm-cells = <2>; + reg = <0x53fa 0x4000>; +- clocks = <&clks 106>, <&clks 36>; ++ clocks = <&clks 106>, <&clks 52>; + clock-names = "ipg", "per"; + interrupts = <36>; + }; +@@ -354,7 +354,7 @@ + compatible = "fsl,imx25-pwm", "fsl,imx27-pwm"; + #pwm-cells = <2>; + reg = <0x53fa8000 0x4000>; +- clocks = <&clks 107>, <&clks 36>; ++ clocks = <&clks 107>, <&clks 52>; + clock-names = "ipg", "per"; + interrupts = <41>; + }; +@@ -394,7 +394,7 @@ + pwm4: pwm@53fc8000 { + compatible = "fsl,imx25-pwm", "fsl,imx27-pwm"; + reg = <0x53fc8000 0x4000>; +- clocks = <&clks 108>, <&clks 36>; ++ clocks = <&clks 108>, <&clks 52>; + clock-names = "ipg", "per"; + interrupts = <42>; + }; +@@ -439,7 +439,7 @@ + compatible = "fsl,imx25-pwm", "fsl,imx27-pwm"; + #pwm-cells = <2>; + reg = <0x53fe 0x4000>; +- clocks = <&clks 105>, <&clks 36>; ++ clocks = <&clks 105>, <&clks 52>; + clock-names = "ipg", "per"; + interrupts = <26>; + }; +diff --git a/arch/arm/crypto/aes_glue.c b/arch/arm/crypto/aes_glue.c +index 59f7877ead6a..e73ec2ab1316 100644 +--- a/arch/arm/crypto/aes_glue.c b/arch/arm/crypto/aes_glue.c +@@ -103,6 +103,6 @@ module_exit(aes_fini); + + MODULE_DESCRIPTION("Rijndael (AES) Cipher Algorithm (ASM)"); + MODULE_LICENSE("GPL"); +-MODULE_ALIAS("aes"); +-MODULE_ALIAS("aes-asm"); ++MODULE_ALIAS_CRYPTO("aes"); ++MODULE_ALIAS_CRYPTO("aes-asm"); + MODULE_AUTHOR("David McCullough "); +diff --git a/arch/arm/crypto/sha1_glue.c b/arch/arm/crypto/sha1_glue.c +index 76cd976230bc..ace4cd67464c 100644 +--- a/arch/arm/crypto/sha1_glue.c b/arch/arm/crypto/sha1_glue.c +@@ -175,5 +175,5 @@ module_exit(sha1_mod_fini); + + MODULE_LICENSE("GPL"); + MODULE_DESCRIPTION("SHA1 Secure Hash Algorithm (ARM)"); +-MODULE_ALIAS("sha1"); ++MODULE_ALIAS_CRYPTO("sha1"); + MODULE_AUTHOR("David McCullough "); +diff --git a/arch/powerpc/crypto/sha1.c b/arch/powerpc/crypto/sha1.c +index f9e8b9491efc..b51da9132744 100644 +--- a/arch/powerpc/crypto/sha1.c b/arch/powerpc/crypto/sha1.c +@@ -154,4 +154,5 @@ module_exit(sha1_powerpc_mod_fini); + MODULE_LICENSE("GPL"); + MODULE_DESCRIPTION("SHA1 Secure Hash Algorithm"); + +-MODULE_ALIAS("sha1-powerpc"); ++MODULE_ALIAS_CRYPTO("sha1"); ++MODULE_ALIAS_CRYPTO("sha1-powerpc"); +diff --git a/arch/s390/crypto/aes_s390.c b/arch/s390/crypto/aes_s390.c +index fd104db9cea1..92eb4d6ad39d 100644 +--- a/arch/s390/crypto/aes_s390.c b/arch/s390/crypto/aes_s390.c +@@ -970,7 +970,7 @@ static void __exit aes_s390_fini(void) + module_init(aes_
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 26c3d37f6333cc85f0ab2f9107f9ee2103f0ea29 Author: Mike Pagano gentoo org> AuthorDate: Tue Jan 27 23:57:45 2015 + Commit: Mike Pagano gentoo org> CommitDate: Tue Jan 27 23:57:45 2015 + URL: http://sources.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=26c3d37f Linux patch 3.10.66 --- _README |6 +- 1065_linux-3.10.66.patch | 1519 ++ 2 files changed, 1524 insertions(+), 1 deletion(-) diff --git a/_README b/_README index 755963e..1f0923b 100644 --- a/_README +++ b/_README @@ -298,10 +298,14 @@ Patch: 1063_linux-3.10.64.patch From: http://www.kernel.org Desc: Linux 3.10.64 -Patch: 1063_linux-3.10.65.patch +Patch: 1064_linux-3.10.65.patch From: http://www.kernel.org Desc: Linux 3.10.65 +Patch: 1065_linux-3.10.66.patch +From: http://www.kernel.org +Desc: Linux 3.10.66 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1065_linux-3.10.66.patch b/1065_linux-3.10.66.patch new file mode 100644 index 000..4cd0ef4 --- /dev/null +++ b/1065_linux-3.10.66.patch @@ -0,0 +1,1519 @@ +diff --git a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt +index 1311a48a7367..98da831a14ba 100644 +--- a/Documentation/kernel-parameters.txt b/Documentation/kernel-parameters.txt +@@ -1061,6 +1061,7 @@ bytes respectively. Such letter suffixes can also be entirely omitted. + i8042.notimeout [HW] Ignore timeout condition signalled by controller + i8042.reset [HW] Reset the controller during init and cleanup + i8042.unlock[HW] Unlock (ignore) the keylock ++ i8042.kbdreset [HW] Reset device connected to KBD port + + i810= [HW,DRM] + +diff --git a/Makefile b/Makefile +index 7889b38766db..12ae1ef5437a 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 65 ++SUBLEVEL = 66 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arc/boot/dts/nsimosci.dts b/arch/arc/boot/dts/nsimosci.dts +index 398064cef746..4c169d825415 100644 +--- a/arch/arc/boot/dts/nsimosci.dts b/arch/arc/boot/dts/nsimosci.dts +@@ -20,7 +20,7 @@ + /* this is for console on PGU */ + /* bootargs = "console=tty0 consoleblank=0"; */ + /* this is for console on serial */ +- bootargs = "earlycon=uart8250,mmio32,0xc000,115200n8 console=tty0 console=ttyS0,115200n8 consoleblank=0 debug"; ++ bootargs = "earlycon=uart8250,mmio32,0xf000,115200n8 console=tty0 console=ttyS0,115200n8 consoleblank=0 debug"; + }; + + aliases { +@@ -46,9 +46,9 @@ + #interrupt-cells = <1>; + }; + +- uart0: serial@c000 { ++ uart0: serial@f000 { + compatible = "ns8250"; +- reg = <0xc000 0x2000>; ++ reg = <0xf000 0x2000>; + interrupts = <11>; + clock-frequency = <3686400>; + baud = <115200>; +@@ -57,21 +57,21 @@ + no-loopback-test = <1>; + }; + +- pgu0: pgu@c900 { ++ pgu0: pgu@f900 { + compatible = "snps,arcpgufb"; +- reg = <0xc900 0x400>; ++ reg = <0xf900 0x400>; + }; + +- ps2: ps2@c9001000 { ++ ps2: ps2@f9001000 { + compatible = "snps,arc_ps2"; +- reg = <0xc9000400 0x14>; ++ reg = <0xf9000400 0x14>; + interrupts = <13>; + interrupt-names = "arc_ps2_irq"; + }; + +- eth0: ethernet@c0003000 { ++ eth0: ethernet@f0003000 { + compatible = "snps,oscilan"; +- reg = <0xc0003000 0x44>; ++ reg = <0xf0003000 0x44>; + interrupts = <7>, <8>; + interrupt-names = "rx", "tx"; + }; +diff --git a/arch/arm/boot/dts/imx25.dtsi b/arch/arm/boot/dts/imx25.dtsi +index 701153992c69..82897e2d8d5a 100644 +--- a/arch/arm/boot/dts/imx25.dtsi b/arch/arm/boot/dts/imx25.dtsi +@@ -141,7 +141,7 @@ + #size-cells = <0>; + compatible = "fsl,imx25-cspi", "fsl,imx35-cspi"; + reg = <0x43fa4000 0x4000>; +- clocks = <&clks 62>, <&clks 62>; ++ clocks = <&clks 78>, <&clks 78>; + clock-names = "ipg", "per"; + interrupts = <14>; + status = "disabled"; +diff --git a/arch/arm
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 6c68a8814b8fb45ad5ec871aeacc3377f1056ecd Author: Mike Pagano gentoo org> AuthorDate: Sat Jan 17 01:24:35 2015 + Commit: Mike Pagano gentoo org> CommitDate: Sat Jan 17 01:24:35 2015 + URL: http://sources.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=6c68a881 Linux patch 3.10.65 --- _README |4 + 1064_linux-3.10.65.patch | 1498 ++ 2 files changed, 1502 insertions(+) diff --git a/_README b/_README index 940fe8c..755963e 100644 --- a/_README +++ b/_README @@ -298,6 +298,10 @@ Patch: 1063_linux-3.10.64.patch From: http://www.kernel.org Desc: Linux 3.10.64 +Patch: 1063_linux-3.10.65.patch +From: http://www.kernel.org +Desc: Linux 3.10.65 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1064_linux-3.10.65.patch b/1064_linux-3.10.65.patch new file mode 100644 index 000..983b755 --- /dev/null +++ b/1064_linux-3.10.65.patch @@ -0,0 +1,1498 @@ +diff --git a/Documentation/ramoops.txt b/Documentation/ramoops.txt +index 69b3cac4749d..5d8675615e59 100644 +--- a/Documentation/ramoops.txt b/Documentation/ramoops.txt +@@ -14,11 +14,19 @@ survive after a restart. + + 1. Ramoops concepts + +-Ramoops uses a predefined memory area to store the dump. The start and size of +-the memory area are set using two variables: ++Ramoops uses a predefined memory area to store the dump. The start and size ++and type of the memory area are set using three variables: + * "mem_address" for the start + * "mem_size" for the size. The memory size will be rounded down to a + power of two. ++ * "mem_type" to specifiy if the memory type (default is pgprot_writecombine). ++ ++Typically the default value of mem_type=0 should be used as that sets the pstore ++mapping to pgprot_writecombine. Setting mem_type=1 attempts to use ++pgprot_noncached, which only works on some platforms. This is because pstore ++depends on atomic operations. At least on ARM, pgprot_noncached causes the ++memory to be mapped strongly ordered, and atomic operations on strongly ordered ++memory are implementation defined, and won't work on many ARMs such as omaps. + + The memory area is divided into "record_size" chunks (also rounded down to + power of two) and each oops/panic writes a "record_size" chunk of +@@ -55,6 +63,7 @@ Setting the ramoops parameters can be done in 2 different manners: + static struct ramoops_platform_data ramoops_data = { + .mem_size = <...>, + .mem_address= <...>, ++.mem_type = <...>, + .record_size= <...>, + .dump_oops = <...>, + .ecc= <...>, +diff --git a/Makefile b/Makefile +index e5b63fb3d0e1..7889b38766db 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 64 ++SUBLEVEL = 65 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm/mach-mvebu/coherency.c b/arch/arm/mach-mvebu/coherency.c +index 8278960066c3..3ee701f1d38e 100644 +--- a/arch/arm/mach-mvebu/coherency.c b/arch/arm/mach-mvebu/coherency.c +@@ -141,6 +141,29 @@ int __init coherency_init(void) + { + struct device_node *np; + ++ /* ++ * The coherency fabric is needed: ++ * - For coherency between processors on Armada XP, so only ++ * when SMP is enabled. ++ * - For coherency between the processor and I/O devices, but ++ * this coherency requires many pre-requisites (write ++ * allocate cache policy, shareable pages, SMP bit set) that ++ * are only meant in SMP situations. ++ * ++ * Note that this means that on Armada 370, there is currently ++ * no way to use hardware I/O coherency, because even when ++ * CONFIG_SMP is enabled, is_smp() returns false due to the ++ * Armada 370 being a single-core processor. To lift this ++ * limitation, we would have to find a way to make the cache ++ * policy set to write-allocate (on all Armada SoCs), and to ++ * set the shareable attribute in page tables (on all Armada ++ * SoCs except the Armada 370). Unfortunately, such decisions ++ * are taken very early in the kernel boot process, at a point ++ * where we don't know yet on which SoC we are running. ++ */ ++ if (!is_smp()) ++ return 0; ++ + np = of_find_matching_node(NULL, of_coherency_table); + if (np) { + pr_info("Initializing Coherency fabric\n"); +diff --git a/arch/x86/include/asm/vsyscall.h b/arch/x86/include/asm/vsyscall.h +index 2a46ca720afc..2874be9aef0a 100644 +--- a/arch/x86/include/asm/vsyscall.h b/arch/x86/include/asm/vsyscall.h +@@ -34,7 +34,7 @@ static inline unsigned int __getcpu(void) + native_read_tscp(&p); + }
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 93d41849a3c0d15a8e604528f35b055891401379 Author: Mike Pagano gentoo org> AuthorDate: Fri Jan 2 19:12:34 2015 + Commit: Mike Pagano gentoo org> CommitDate: Fri Jan 2 19:12:34 2015 + URL: http://sources.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=93d41849 Add DEVPTS_MULTIPLE_INSTANCES when GENTOO_LINUX_INIT_SYSTEMD is selected. See bug #534216 --- 4567_distro-Gentoo-Kconfig.patch | 15 +++ 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/4567_distro-Gentoo-Kconfig.patch b/4567_distro-Gentoo-Kconfig.patch index 850cabc..690454a 100644 --- a/4567_distro-Gentoo-Kconfig.patch +++ b/4567_distro-Gentoo-Kconfig.patch @@ -1,5 +1,5 @@ a/Kconfig 2014-04-02 10:11:12.959212144 -0400 -+++ b/Kconfig 2014-04-02 10:11:41.139211921 -0400 +--- a/Kconfig 2014-04-02 09:45:05.389224541 -0400 b/Kconfig 2014-04-02 09:45:39.269224273 -0400 @@ -8,4 +8,6 @@ config SRCARCH string option env="SRCARCH" @@ -7,9 +7,9 @@ +source "distro/Kconfig" + source "arch/$SRCARCH/Kconfig" 1969-12-31 19:00:00.0 -0500 -+++ b/distro/Kconfig 2014-04-02 10:14:34.049210553 -0400 -@@ -0,0 +1,110 @@ +--- a/distro/Kconfig 1969-12-31 19:00:00.0 -0500 b/distro/Kconfig 2015-01-02 13:54:45.589830665 -0500 +@@ -0,0 +1,109 @@ +menu "Gentoo Linux" + +config GENTOO_LINUX @@ -35,7 +35,6 @@ + select TMPFS + + select MMU -+ select HOTPLUG + select SHMEM + + help @@ -88,13 +87,13 @@ + select AUTOFS4_FS + select BLK_DEV_BSG + select CGROUPS ++ select DEVPTS_MULTIPLE_INSTANCES + select EPOLL + select FANOTIFY + select FHANDLE -+ select HOTPLUG + select INOTIFY_USER + select NET -+ select NET_NS ++ select NET_NS + select PROC_FS + select SIGNALFD + select SYSFS
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: c52a2df8e2b1f4899816e2993c356cd6cccf730d Author: Mike Pagano gentoo org> AuthorDate: Wed Dec 17 01:48:47 2014 + Commit: Mike Pagano gentoo org> CommitDate: Wed Dec 17 01:48:47 2014 + URL: http://sources.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=c52a2df8 Linux patch 3.10.63 --- _README | 4 + 1062_linux-3.10.63.patch | 473 +++ 2 files changed, 477 insertions(+) diff --git a/_README b/_README index 6ea5ed3..689a2fe 100644 --- a/_README +++ b/_README @@ -290,6 +290,10 @@ Patch: 1061_linux-3.10.62.patch From: http://www.kernel.org Desc: Linux 3.10.62 +Patch: 1062_linux-3.10.63.patch +From: http://www.kernel.org +Desc: Linux 3.10.63 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1062_linux-3.10.63.patch b/1062_linux-3.10.63.patch new file mode 100644 index 000..553ce98 --- /dev/null +++ b/1062_linux-3.10.63.patch @@ -0,0 +1,473 @@ +diff --git a/Makefile b/Makefile +index a0b86250d6ca..9383fe24baa9 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 62 ++SUBLEVEL = 63 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm/kernel/sched_clock.c b/arch/arm/kernel/sched_clock.c +index e8edcaa0e432..a57cc5d33540 100644 +--- a/arch/arm/kernel/sched_clock.c b/arch/arm/kernel/sched_clock.c +@@ -51,10 +51,11 @@ static inline u64 notrace cyc_to_ns(u64 cyc, u32 mult, u32 shift) + return (cyc * mult) >> shift; + } + +-static unsigned long long notrace cyc_to_sched_clock(u32 cyc, u32 mask) ++static unsigned long long notrace sched_clock_32(void) + { + u64 epoch_ns; + u32 epoch_cyc; ++ u32 cyc; + + if (cd.suspended) + return cd.epoch_ns; +@@ -73,7 +74,9 @@ static unsigned long long notrace cyc_to_sched_clock(u32 cyc, u32 mask) + smp_rmb(); + } while (epoch_cyc != cd.epoch_cyc_copy); + +- return epoch_ns + cyc_to_ns((cyc - epoch_cyc) & mask, cd.mult, cd.shift); ++ cyc = read_sched_clock(); ++ cyc = (cyc - epoch_cyc) & sched_clock_mask; ++ return epoch_ns + cyc_to_ns(cyc, cd.mult, cd.shift); + } + + /* +@@ -165,12 +168,6 @@ void __init setup_sched_clock(u32 (*read)(void), int bits, unsigned long rate) + pr_debug("Registered %pF as sched_clock source\n", read); + } + +-static unsigned long long notrace sched_clock_32(void) +-{ +- u32 cyc = read_sched_clock(); +- return cyc_to_sched_clock(cyc, sched_clock_mask); +-} +- + unsigned long long __read_mostly (*sched_clock_func)(void) = sched_clock_32; + + unsigned long long notrace sched_clock(void) +diff --git a/arch/powerpc/kernel/vdso32/getcpu.S b/arch/powerpc/kernel/vdso32/getcpu.S +index 47afd08c90f7..fe7e97a1aad9 100644 +--- a/arch/powerpc/kernel/vdso32/getcpu.S b/arch/powerpc/kernel/vdso32/getcpu.S +@@ -30,8 +30,8 @@ + V_FUNCTION_BEGIN(__kernel_getcpu) + .cfi_startproc + mfspr r5,SPRN_USPRG3 +- cmpdi cr0,r3,0 +- cmpdi cr1,r4,0 ++ cmpwi cr0,r3,0 ++ cmpwi cr1,r4,0 + clrlwi r6,r5,16 + rlwinm r7,r5,16,31-15,31-0 + beq cr0,1f +diff --git a/arch/x86/include/uapi/asm/vmx.h b/arch/x86/include/uapi/asm/vmx.h +index d651082c7cf7..7a34e8fe54bd 100644 +--- a/arch/x86/include/uapi/asm/vmx.h b/arch/x86/include/uapi/asm/vmx.h +@@ -65,6 +65,7 @@ + #define EXIT_REASON_EOI_INDUCED 45 + #define EXIT_REASON_EPT_VIOLATION 48 + #define EXIT_REASON_EPT_MISCONFIG 49 ++#define EXIT_REASON_INVEPT 50 + #define EXIT_REASON_PREEMPTION_TIMER52 + #define EXIT_REASON_WBINVD 54 + #define EXIT_REASON_XSETBV 55 +diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c +index 51139ff34917..7112be5f1eaf 100644 +--- a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c +@@ -6242,6 +6242,12 @@ static int handle_vmptrst(struct kvm_vcpu *vcpu) + return 1; + } + ++static int handle_invept(struct kvm_vcpu *vcpu) ++{ ++ kvm_queue_exception(vcpu, UD_VECTOR); ++ return 1; ++} ++ + /* + * The exit handlers return 1 if the exit was handled fully and guest execution + * may resume. Otherwise they set the kvm_run parameter to indicate what needs +@@ -6286,6 +6292,7 @@ static int (*const kvm_vmx_exit_handlers[])(struct kvm_vcpu *vcpu) = { + [EXIT_REASON_PAUSE_INSTRUCTION] = handle_pause, + [EXIT_REASON_MWAIT_INSTRUCTION] = handle_invalid_op, + [EXIT_REASON_MONITOR_INSTRUCTION] = handle_invalid_op, ++ [EXIT_REASON_INVEPT] = handle_invept, + }; + + static const int kvm_vmx_max_exit_handlers = +@@ -6512,6 +6519,7 @@ static bool nested_vmx_exit_handled(struct kvm_vcpu *vcpu) + case EXIT_REASON_VMPTRST: case EXIT_REASON_VMREAD: + case EXIT_REASON_VMRESUME: case EXIT_REASON_VMWRITE
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 506a12d67dbbb1168633c41b800dc9588bbd4607 Author: Mike Pagano gentoo org> AuthorDate: Wed Dec 10 06:32:16 2014 + Commit: Mike Pagano gentoo org> CommitDate: Wed Dec 10 06:32:16 2014 + URL: http://sources.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=506a12d6 Linux patch 3.10.62 --- _README |4 + 1061_linux-3.10.62.patch | 1576 ++ 2 files changed, 1580 insertions(+) diff --git a/_README b/_README index 6cb8a74..6ea5ed3 100644 --- a/_README +++ b/_README @@ -286,6 +286,10 @@ Patch: 1060_linux-3.10.61.patch From: http://www.kernel.org Desc: Linux 3.10.61 +Patch: 1061_linux-3.10.62.patch +From: http://www.kernel.org +Desc: Linux 3.10.62 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1061_linux-3.10.62.patch b/1061_linux-3.10.62.patch new file mode 100644 index 000..f45e1be --- /dev/null +++ b/1061_linux-3.10.62.patch @@ -0,0 +1,1576 @@ +diff --git a/Makefile b/Makefile +index 0d5ba80786b8..a0b86250d6ca 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 61 ++SUBLEVEL = 62 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S +index 19da84172cc3..4562ebf8449d 100644 +--- a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S +@@ -201,7 +201,6 @@ __v7_pj4b_setup: + /* Auxiliary Debug Modes Control 1 Register */ + #define PJ4B_STATIC_BP (1 << 2) /* Enable Static BP */ + #define PJ4B_INTER_PARITY (1 << 8) /* Disable Internal Parity Handling */ +-#define PJ4B_BCK_OFF_STREX (1 << 5) /* Enable the back off of STREX instr */ + #define PJ4B_CLEAN_LINE (1 << 16) /* Disable data transfer for clean line */ + + /* Auxiliary Debug Modes Control 2 Register */ +@@ -224,7 +223,6 @@ __v7_pj4b_setup: + /* Auxiliary Debug Modes Control 1 Register */ + mrc p15, 1, r0, c15, c1, 1 + orr r0, r0, #PJ4B_CLEAN_LINE +- orr r0, r0, #PJ4B_BCK_OFF_STREX + orr r0, r0, #PJ4B_INTER_PARITY + bic r0, r0, #PJ4B_STATIC_BP + mcr p15, 1, r0, c15, c1, 1 +diff --git a/arch/arm/mm/proc-xscale.S b/arch/arm/mm/proc-xscale.S +index e766f889bfd6..08b51b7dbf69 100644 +--- a/arch/arm/mm/proc-xscale.S b/arch/arm/mm/proc-xscale.S +@@ -535,7 +535,7 @@ ENTRY(cpu_xscale_do_suspend) + mrc p15, 0, r5, c15, c1, 0 @ CP access reg + mrc p15, 0, r6, c13, c0, 0 @ PID + mrc p15, 0, r7, c3, c0, 0 @ domain ID +- mrc p15, 0, r8, c1, c1, 0 @ auxiliary control reg ++ mrc p15, 0, r8, c1, c0, 1 @ auxiliary control reg + mrc p15, 0, r9, c1, c0, 0 @ control reg + bic r4, r4, #2 @ clear frequency change bit + stmia r0, {r4 - r9} @ store cp regs +@@ -552,7 +552,7 @@ ENTRY(cpu_xscale_do_resume) + mcr p15, 0, r6, c13, c0, 0 @ PID + mcr p15, 0, r7, c3, c0, 0 @ domain ID + mcr p15, 0, r1, c2, c0, 0 @ translation table base addr +- mcr p15, 0, r8, c1, c1, 0 @ auxiliary control reg ++ mcr p15, 0, r8, c1, c0, 1 @ auxiliary control reg + mov r0, r9 @ control register + b cpu_resume_mmu + ENDPROC(cpu_xscale_do_resume) +diff --git a/arch/mips/loongson/common/Makefile b/arch/mips/loongson/common/Makefile +index 4c57b3e5743f..33f76e658d19 100644 +--- a/arch/mips/loongson/common/Makefile b/arch/mips/loongson/common/Makefile +@@ -10,7 +10,8 @@ obj-$(CONFIG_GPIOLIB) += gpio.o + # Serial port support + # + obj-$(CONFIG_EARLY_PRINTK) += early_printk.o +-obj-$(CONFIG_SERIAL_8250) += serial.o ++loongson-serial-$(CONFIG_SERIAL_8250) := serial.o ++obj-y += $(loongson-serial-m) $(loongson-serial-y) + obj-$(CONFIG_LOONGSON_UART_BASE) += uart_base.o + obj-$(CONFIG_LOONGSON_MC146818) += rtc.o + +diff --git a/arch/mips/oprofile/backtrace.c b/arch/mips/oprofile/backtrace.c +index 6854ed5097d2..83a1dfd8f0e3 100644 +--- a/arch/mips/oprofile/backtrace.c b/arch/mips/oprofile/backtrace.c +@@ -92,7 +92,7 @@ static inline int unwind_user_frame(struct stackframe *old_frame, + /* This marks the end of the previous function, + which means we overran. */ + break; +- stack_size = (unsigned) stack_adjustment; ++ stack_size = (unsigned long) stack_adjustment; + } else if (is_ra_save_ins(&ip)) { + int ra_slot = ip.i_format.simmediate; + if (ra_slot < 0) +diff --git a/arch/powerpc/platforms/powernv/pci-ioda.c b/arch/powerpc/platforms/powernv/pci-ioda.c +index f75607c93e8a..b2bbb79bd99d 100644 +--- a/arch/powerpc/platforms/powernv/pci-ioda.c b/arch/powerpc/platforms/powernv/pci-ioda.c +@
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 2eed7d083266b0fb026036cd7a4f183f0dfe4e84 Author: Mike Pagano gentoo org> AuthorDate: Sat Nov 22 20:14:03 2014 + Commit: Mike Pagano gentoo org> CommitDate: Sat Nov 22 20:14:03 2014 + URL: http://sources.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=2eed7d08 Linux patch 3.10.61 --- _README |4 + 1060_linux-3.10.61.patch | 4431 ++ 2 files changed, 4435 insertions(+) diff --git a/_README b/_README index 6a1392d..6cb8a74 100644 --- a/_README +++ b/_README @@ -282,6 +282,10 @@ Patch: 1059_linux-3.10.60.patch From: http://www.kernel.org Desc: Linux 3.10.60 +Patch: 1060_linux-3.10.61.patch +From: http://www.kernel.org +Desc: Linux 3.10.61 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1060_linux-3.10.61.patch b/1060_linux-3.10.61.patch new file mode 100644 index 000..e58cd17 --- /dev/null +++ b/1060_linux-3.10.61.patch @@ -0,0 +1,4431 @@ +diff --git a/Makefile b/Makefile +index 9d4f30d0d201..0d5ba80786b8 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 60 ++SUBLEVEL = 61 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/alpha/mm/fault.c b/arch/alpha/mm/fault.c +index 0c4132dd3507..98838a05ba6d 100644 +--- a/arch/alpha/mm/fault.c b/arch/alpha/mm/fault.c +@@ -89,8 +89,7 @@ do_page_fault(unsigned long address, unsigned long mmcsr, + const struct exception_table_entry *fixup; + int fault, si_code = SEGV_MAPERR; + siginfo_t info; +- unsigned int flags = (FAULT_FLAG_ALLOW_RETRY | FAULT_FLAG_KILLABLE | +-(cause > 0 ? FAULT_FLAG_WRITE : 0)); ++ unsigned int flags = FAULT_FLAG_ALLOW_RETRY | FAULT_FLAG_KILLABLE; + + /* As of EV6, a load into $31/$f31 is a prefetch, and never faults + (or is suppressed by the PALcode). Support that for older CPUs +@@ -115,7 +114,8 @@ do_page_fault(unsigned long address, unsigned long mmcsr, + if (address >= TASK_SIZE) + goto vmalloc_fault; + #endif +- ++ if (user_mode(regs)) ++ flags |= FAULT_FLAG_USER; + retry: + down_read(&mm->mmap_sem); + vma = find_vma(mm, address); +@@ -142,6 +142,7 @@ retry: + } else { + if (!(vma->vm_flags & VM_WRITE)) + goto bad_area; ++ flags |= FAULT_FLAG_WRITE; + } + + /* If for any reason at all we couldn't handle the fault, +diff --git a/arch/arc/mm/fault.c b/arch/arc/mm/fault.c +index 331a0846628e..50533b750a99 100644 +--- a/arch/arc/mm/fault.c b/arch/arc/mm/fault.c +@@ -59,8 +59,7 @@ void do_page_fault(struct pt_regs *regs, int write, unsigned long address, + struct mm_struct *mm = tsk->mm; + siginfo_t info; + int fault, ret; +- unsigned int flags = FAULT_FLAG_ALLOW_RETRY | FAULT_FLAG_KILLABLE | +- (write ? FAULT_FLAG_WRITE : 0); ++ unsigned int flags = FAULT_FLAG_ALLOW_RETRY | FAULT_FLAG_KILLABLE; + + /* +* We fault-in kernel-space virtual memory on-demand. The +@@ -88,6 +87,8 @@ void do_page_fault(struct pt_regs *regs, int write, unsigned long address, + if (in_atomic() || !mm) + goto no_context; + ++ if (user_mode(regs)) ++ flags |= FAULT_FLAG_USER; + retry: + down_read(&mm->mmap_sem); + vma = find_vma(mm, address); +@@ -115,12 +116,12 @@ good_area: + if (write) { + if (!(vma->vm_flags & VM_WRITE)) + goto bad_area; ++ flags |= FAULT_FLAG_WRITE; + } else { + if (!(vma->vm_flags & (VM_READ | VM_EXEC))) + goto bad_area; + } + +-survive: + /* +* If for any reason at all we couldn't handle the fault, +* make sure we exit gracefully rather than endlessly redo +@@ -200,14 +201,12 @@ no_context: + die("Oops", regs, address, cause_code); + + out_of_memory: +- if (is_global_init(tsk)) { +- yield(); +- goto survive; +- } + up_read(&mm->mmap_sem); + +- if (user_mode(regs)) +- do_group_exit(SIGKILL); /* This will never return */ ++ if (user_mode(regs)) { ++ pagefault_out_of_memory(); ++ return; ++ } + + goto no_context; + +diff --git a/arch/arm/include/asm/bug.h b/arch/arm/include/asm/bug.h +index 7af5c6c3653a..b274bde24905 100644 +--- a/arch/arm/include/asm/bug.h b/arch/arm/include/asm/bug.h +@@ -2,6 +2,8 @@ + #define _ASMARM_BUG_H + + #include ++#include ++#include + + #ifdef CONFIG_BUG + +@@ -12,10 +14,10 @@ + */ + #ifdef CONFIG_THUMB2_KERNEL + #define BUG_INSTR_VALUE 0xde02 +-#define BUG_INSTR_TYPE ".hword " ++#define BUG_INSTR(__value) __inst_thumb16(__value) + #else + #
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: fdca1444333f450d874582ba2ad6532254eb6d4d Author: Mike Pagano gentoo org> AuthorDate: Fri Oct 31 11:18:46 2014 + Commit: Mike Pagano gentoo org> CommitDate: Fri Oct 31 11:18:46 2014 + URL: http://sources.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=fdca1444 Linux patch 3.10.59 --- _README |4 + 1058_linux-3.10.59.patch | 1369 ++ 2 files changed, 1373 insertions(+) diff --git a/_README b/_README index fb459eb..580573b 100644 --- a/_README +++ b/_README @@ -274,6 +274,10 @@ Patch: 1057_linux-3.10.58.patch From: http://www.kernel.org Desc: Linux 3.10.58 +Patch: 1058_linux-3.10.59.patch +From: http://www.kernel.org +Desc: Linux 3.10.59 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1058_linux-3.10.59.patch b/1058_linux-3.10.59.patch new file mode 100644 index 000..8bddbfc --- /dev/null +++ b/1058_linux-3.10.59.patch @@ -0,0 +1,1369 @@ +diff --git a/Documentation/lzo.txt b/Documentation/lzo.txt +new file mode 100644 +index ..ea45dd3901e3 +--- /dev/null b/Documentation/lzo.txt +@@ -0,0 +1,164 @@ ++ ++LZO stream format as understood by Linux's LZO decompressor ++=== ++ ++Introduction ++ ++ This is not a specification. No specification seems to be publicly available ++ for the LZO stream format. This document describes what input format the LZO ++ decompressor as implemented in the Linux kernel understands. The file subject ++ of this analysis is lib/lzo/lzo1x_decompress_safe.c. No analysis was made on ++ the compressor nor on any other implementations though it seems likely that ++ the format matches the standard one. The purpose of this document is to ++ better understand what the code does in order to propose more efficient fixes ++ for future bug reports. ++ ++Description ++ ++ The stream is composed of a series of instructions, operands, and data. The ++ instructions consist in a few bits representing an opcode, and bits forming ++ the operands for the instruction, whose size and position depend on the ++ opcode and on the number of literals copied by previous instruction. The ++ operands are used to indicate : ++ ++- a distance when copying data from the dictionary (past output buffer) ++- a length (number of bytes to copy from dictionary) ++- the number of literals to copy, which is retained in variable "state" ++ as a piece of information for next instructions. ++ ++ Optionally depending on the opcode and operands, extra data may follow. These ++ extra data can be a complement for the operand (eg: a length or a distance ++ encoded on larger values), or a literal to be copied to the output buffer. ++ ++ The first byte of the block follows a different encoding from other bytes, it ++ seems to be optimized for literal use only, since there is no dictionary yet ++ prior to that byte. ++ ++ Lengths are always encoded on a variable size starting with a small number ++ of bits in the operand. If the number of bits isn't enough to represent the ++ length, up to 255 may be added in increments by consuming more bytes with a ++ rate of at most 255 per extra byte (thus the compression ratio cannot exceed ++ around 255:1). The variable length encoding using #bits is always the same : ++ ++ length = byte & ((1 << #bits) - 1) ++ if (!length) { ++ length = ((1 << #bits) - 1) ++ length += 255*(number of zero bytes) ++ length += first-non-zero-byte ++ } ++ length += constant (generally 2 or 3) ++ ++ For references to the dictionary, distances are relative to the output ++ pointer. Distances are encoded using very few bits belonging to certain ++ ranges, resulting in multiple copy instructions using different encodings. ++ Certain encodings involve one extra byte, others involve two extra bytes ++ forming a little-endian 16-bit quantity (marked LE16 below). ++ ++ After any instruction except the large literal copy, 0, 1, 2 or 3 literals ++ are copied before starting the next instruction. The number of literals that ++ were copied may change the meaning and behaviour of the next instruction. In ++ practice, only one instruction needs to know whether 0, less than 4, or more ++ literals were copied. This is the information stored in the variable ++ in this implementation. This number of immediate literals to be copied is ++ generally encoded in the last two bits of the instruction but may also be ++ taken from the last two bits of an extra operand (eg: distance). ++ ++ End of stream is declared when a block copy of distance 0 is seen. Only one ++ instruction may encode this distance (0001HLLL), it takes one LE16 operand ++ for the distance, thus requiring 3 bytes. ++
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 5069914ae5cb07b578d952fb8f1c926755f0b5bf Author: Mike Pagano gentoo org> AuthorDate: Wed Oct 15 22:21:58 2014 + Commit: Mike Pagano gentoo org> CommitDate: Wed Oct 15 22:21:58 2014 + URL: http://sources.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=5069914a Linux patch 3.10.58 --- _README | 4 + 1057_linux-3.10.58.patch | 643 +++ 2 files changed, 647 insertions(+) diff --git a/_README b/_README index 840242c..fb459eb 100644 --- a/_README +++ b/_README @@ -270,6 +270,10 @@ Patch: 1056_linux-3.10.57.patch From: http://www.kernel.org Desc: Linux 3.10.57 +Patch: 1057_linux-3.10.58.patch +From: http://www.kernel.org +Desc: Linux 3.10.58 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1057_linux-3.10.58.patch b/1057_linux-3.10.58.patch new file mode 100644 index 000..b277448 --- /dev/null +++ b/1057_linux-3.10.58.patch @@ -0,0 +1,643 @@ +diff --git a/Makefile b/Makefile +index 9df630a513b7..c27454b8ca3e 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 57 ++SUBLEVEL = 58 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c +index 4942ddf9c8ae..3de4069f020e 100644 +--- a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c +@@ -6767,7 +6767,8 @@ static int tg3_rx(struct tg3_napi *tnapi, int budget) + skb->protocol = eth_type_trans(skb, tp->dev); + + if (len > (tp->dev->mtu + ETH_HLEN) && +- skb->protocol != htons(ETH_P_8021Q)) { ++ skb->protocol != htons(ETH_P_8021Q) && ++ skb->protocol != htons(ETH_P_8021AD)) { + dev_kfree_skb(skb); + goto drop_it_no_recycle; + } +@@ -7759,8 +7760,6 @@ static netdev_tx_t tg3_start_xmit(struct sk_buff *skb, struct net_device *dev) + + entry = tnapi->tx_prod; + base_flags = 0; +- if (skb->ip_summed == CHECKSUM_PARTIAL) +- base_flags |= TXD_FLAG_TCPUDP_CSUM; + + mss = skb_shinfo(skb)->gso_size; + if (mss) { +@@ -7776,6 +7775,13 @@ static netdev_tx_t tg3_start_xmit(struct sk_buff *skb, struct net_device *dev) + + hdr_len = skb_transport_offset(skb) + tcp_hdrlen(skb) - ETH_HLEN; + ++ /* HW/FW can not correctly segment packets that have been ++ * vlan encapsulated. ++ */ ++ if (skb->protocol == htons(ETH_P_8021Q) || ++ skb->protocol == htons(ETH_P_8021AD)) ++ return tg3_tso_bug(tp, skb); ++ + if (!skb_is_gso_v6(skb)) { + iph->check = 0; + iph->tot_len = htons(mss + hdr_len); +@@ -7822,6 +7828,17 @@ static netdev_tx_t tg3_start_xmit(struct sk_buff *skb, struct net_device *dev) + base_flags |= tsflags << 12; + } + } ++ } else if (skb->ip_summed == CHECKSUM_PARTIAL) { ++ /* HW/FW can not correctly checksum packets that have been ++ * vlan encapsulated. ++ */ ++ if (skb->protocol == htons(ETH_P_8021Q) || ++ skb->protocol == htons(ETH_P_8021AD)) { ++ if (skb_checksum_help(skb)) ++ goto drop; ++ } else { ++ base_flags |= TXD_FLAG_TCPUDP_CSUM; ++ } + } + + if (tg3_flag(tp, USE_JUMBO_BDFLAG) && +diff --git a/drivers/net/ethernet/myricom/myri10ge/myri10ge.c b/drivers/net/ethernet/myricom/myri10ge/myri10ge.c +index 7be9788ed0f6..4fb93c5b5563 100644 +--- a/drivers/net/ethernet/myricom/myri10ge/myri10ge.c b/drivers/net/ethernet/myricom/myri10ge/myri10ge.c +@@ -856,6 +856,10 @@ static int myri10ge_dma_test(struct myri10ge_priv *mgp, int test_type) + return -ENOMEM; + dmatest_bus = pci_map_page(mgp->pdev, dmatest_page, 0, PAGE_SIZE, + DMA_BIDIRECTIONAL); ++ if (unlikely(pci_dma_mapping_error(mgp->pdev, dmatest_bus))) { ++ __free_page(dmatest_page); ++ return -ENOMEM; ++ } + + /* Run a small DMA test. +* The magic multipliers to the length tell the firmware +@@ -1191,6 +1195,7 @@ myri10ge_alloc_rx_pages(struct myri10ge_priv *mgp, struct myri10ge_rx_buf *rx, + int bytes, int watchdog) + { + struct page *page; ++ dma_addr_t bus; + int idx; + #if MYRI10GE_ALLOC_SIZE > 4096 + int end_offset; +@@ -1215,11 +1220,21 @@ myri10ge_alloc_rx_pages(struct myri10ge_priv *mgp, struct myri10ge_rx_buf *rx, + rx->wa
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: b383b50388b99c883a23e8949dcedd27c4e9f5a0 Author: Mike Pagano gentoo org> AuthorDate: Thu Oct 9 23:29:00 2014 + Commit: Mike Pagano gentoo org> CommitDate: Thu Oct 9 23:29:00 2014 + URL: http://sources.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=b383b503 Linux patch 3.10.57 --- _README | 4 + 1056_linux-3.10.57.patch | 607 +++ 2 files changed, 611 insertions(+) diff --git a/_README b/_README index 5969ca2..840242c 100644 --- a/_README +++ b/_README @@ -266,6 +266,10 @@ Patch: 1055_linux-3.10.56.patch From: http://www.kernel.org Desc: Linux 3.10.56 +Patch: 1056_linux-3.10.57.patch +From: http://www.kernel.org +Desc: Linux 3.10.57 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1056_linux-3.10.57.patch b/1056_linux-3.10.57.patch new file mode 100644 index 000..e0975f9 --- /dev/null +++ b/1056_linux-3.10.57.patch @@ -0,0 +1,607 @@ +diff --git a/Makefile b/Makefile +index 03bd927522f7..9df630a513b7 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 56 ++SUBLEVEL = 57 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/drivers/block/drbd/drbd_nl.c b/drivers/block/drbd/drbd_nl.c +index 9e3f441e7e84..9c37f3d896a2 100644 +--- a/drivers/block/drbd/drbd_nl.c b/drivers/block/drbd/drbd_nl.c +@@ -514,6 +514,12 @@ void conn_try_outdate_peer_async(struct drbd_tconn *tconn) + struct task_struct *opa; + + kref_get(&tconn->kref); ++ /* We may just have force_sig()'ed this thread ++ * to get it out of some blocking network function. ++ * Clear signals; otherwise kthread_run(), which internally uses ++ * wait_on_completion_killable(), will mistake our pending signal ++ * for a new fatal signal and fail. */ ++ flush_signals(current); + opa = kthread_run(_try_outdate_peer_async, tconn, "drbd_async_h"); + if (IS_ERR(opa)) { + conn_err(tconn, "out of mem, failed to invoke fence-peer helper\n"); +diff --git a/drivers/cpufreq/cpufreq_governor.c b/drivers/cpufreq/cpufreq_governor.c +index 28a0b32c73b3..27b0e2a295ea 100644 +--- a/drivers/cpufreq/cpufreq_governor.c b/drivers/cpufreq/cpufreq_governor.c +@@ -97,7 +97,7 @@ void dbs_check_cpu(struct dbs_data *dbs_data, int cpu) + + policy = cdbs->cur_policy; + +- /* Get Absolute Load (in terms of freq for ondemand gov) */ ++ /* Get Absolute Load */ + for_each_cpu(j, policy->cpus) { + struct cpu_dbs_common_info *j_cdbs; + u64 cur_wall_time, cur_idle_time; +@@ -148,14 +148,6 @@ void dbs_check_cpu(struct dbs_data *dbs_data, int cpu) + + load = 100 * (wall_time - idle_time) / wall_time; + +- if (dbs_data->cdata->governor == GOV_ONDEMAND) { +- int freq_avg = __cpufreq_driver_getavg(policy, j); +- if (freq_avg <= 0) +- freq_avg = policy->cur; +- +- load *= freq_avg; +- } +- + if (load > max_load) + max_load = load; + } +diff --git a/drivers/cpufreq/cpufreq_governor.h b/drivers/cpufreq/cpufreq_governor.h +index 0d9e6befe1d5..4a9058aeb57e 100644 +--- a/drivers/cpufreq/cpufreq_governor.h b/drivers/cpufreq/cpufreq_governor.h +@@ -169,7 +169,6 @@ struct od_dbs_tuners { + unsigned int sampling_rate; + unsigned int sampling_down_factor; + unsigned int up_threshold; +- unsigned int adj_up_threshold; + unsigned int powersave_bias; + unsigned int io_is_busy; + }; +diff --git a/drivers/cpufreq/cpufreq_ondemand.c b/drivers/cpufreq/cpufreq_ondemand.c +index c087347d6688..25438bbf96bb 100644 +--- a/drivers/cpufreq/cpufreq_ondemand.c b/drivers/cpufreq/cpufreq_ondemand.c +@@ -29,11 +29,9 @@ + #include "cpufreq_governor.h" + + /* On-demand governor macros */ +-#define DEF_FREQUENCY_DOWN_DIFFERENTIAL (10) + #define DEF_FREQUENCY_UP_THRESHOLD(80) + #define DEF_SAMPLING_DOWN_FACTOR (1) + #define MAX_SAMPLING_DOWN_FACTOR (10) +-#define MICRO_FREQUENCY_DOWN_DIFFERENTIAL (3) + #define MICRO_FREQUENCY_UP_THRESHOLD (95) + #define MICRO_FREQUENCY_MIN_SAMPLE_RATE (1) + #define MIN_FREQUENCY_UP_THRESHOLD(11) +@@ -161,14 +159,10 @@ static void dbs_freq_increase(struct cpufreq_policy *p, unsigned int freq) + + /* + * Every sampling_rate, we check, if current idle time is less than 20% +- * (default), then we try to increase frequency. Every sampling_rate, we look +- * for the lowest frequency which can sustain the load while keeping idle time +- * over 30%. If such a frequency exist, we try to decrease to this frequency. +- * +- * Any frequency incre
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: a8ccf5b31f2b4730cba253a1b19d4e9ee3a494e0 Author: Anthony G. Basile gentoo org> AuthorDate: Wed Sep 17 22:09:40 2014 + Commit: Anthony G. Basile gentoo org> CommitDate: Wed Sep 17 22:09:40 2014 + URL: http://sources.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=a8ccf5b3 Fix README --- _README | 24 1 file changed, 24 insertions(+) diff --git a/_README b/_README index db70185..9ef942c 100644 --- a/_README +++ b/_README @@ -238,6 +238,30 @@ Patch: 1048_linux-3.10.49.patch From: http://www.kernel.org Desc: Linux 3.10.49 +Patch: 1049_linux-3.10.50.patch +From: http://www.kernel.org +Desc: Linux 3.10.50 + +Patch: 1050_linux-3.10.51.patch +From: http://www.kernel.org +Desc: Linux 3.10.51 + +Patch: 1051_linux-3.10.52.patch +From: http://www.kernel.org +Desc: Linux 3.10.52 + +Patch: 1052_linux-3.10.53.patch +From: http://www.kernel.org +Desc: Linux 3.10.53 + +Patch: 1053_linux-3.10.54.patch +From: http://www.kernel.org +Desc: Linux 3.10.54 + +Patch: 1054_linux-3.10.55.patch +From: http://www.kernel.org +Desc: Linux 3.10.55 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs.
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: f549a84a6f3db0a5cfc88e790f5d18430abf6a17 Author: Mike Pagano gentoo org> AuthorDate: Thu Aug 14 12:19:18 2014 + Commit: Mike Pagano gentoo org> CommitDate: Thu Aug 14 12:19:18 2014 + URL: http://git.overlays.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=f549a84a Linux patch 3.10.53 --- _README |4 + 1052_linux-3.10.53.patch | 1227 ++ 2 files changed, 1231 insertions(+) diff --git a/_README b/_README index 1e6798c..768761b 100644 --- a/_README +++ b/_README @@ -250,6 +250,10 @@ Patch: 1051_linux-3.10.52.patch From: http://www.kernel.org Desc: Linux 3.10.52 +Patch: 1052_linux-3.10.53.patch +From: http://www.kernel.org +Desc: Linux 3.10.53 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1052_linux-3.10.53.patch b/1052_linux-3.10.53.patch new file mode 100644 index 000..c0a634a --- /dev/null +++ b/1052_linux-3.10.53.patch @@ -0,0 +1,1227 @@ +diff --git a/Makefile b/Makefile +index b94f00938acc..2ac415a7e937 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 52 ++SUBLEVEL = 53 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/sparc/include/asm/pgtable_64.h b/arch/sparc/include/asm/pgtable_64.h +index dfb0019bf05b..6663604a902a 100644 +--- a/arch/sparc/include/asm/pgtable_64.h b/arch/sparc/include/asm/pgtable_64.h +@@ -24,7 +24,8 @@ + + /* The kernel image occupies 0x400 to 0x600 (4MB --> 96MB). + * The page copy blockops can use 0x600 to 0x800. +- * The TSB is mapped in the 0x800 to 0xa00 range. ++ * The 8K TSB is mapped in the 0x800 to 0x840 range. ++ * The 4M TSB is mapped in the 0x840 to 0x880 range. + * The PROM resides in an area spanning 0xf000 to 0x1. + * The vmalloc area spans 0x1 to 0x2. + * Since modules need to be in the lowest 32-bits of the address space, +@@ -33,7 +34,8 @@ + * 0x4. + */ + #define TLBTEMP_BASE_AC(0x0600,UL) +-#define TSBMAP_BASE _AC(0x0800,UL) ++#define TSBMAP_8K_BASE _AC(0x0800,UL) ++#define TSBMAP_4M_BASE _AC(0x0840,UL) + #define MODULES_VADDR _AC(0x1000,UL) + #define MODULES_LEN _AC(0xe000,UL) + #define MODULES_END _AC(0xf000,UL) +diff --git a/arch/sparc/include/asm/tlbflush_64.h b/arch/sparc/include/asm/tlbflush_64.h +index f0d6a9700f4c..1a4bb971e06d 100644 +--- a/arch/sparc/include/asm/tlbflush_64.h b/arch/sparc/include/asm/tlbflush_64.h +@@ -35,6 +35,8 @@ static inline void flush_tlb_range(struct vm_area_struct *vma, + { + } + ++void flush_tlb_kernel_range(unsigned long start, unsigned long end); ++ + #define __HAVE_ARCH_ENTER_LAZY_MMU_MODE + + extern void flush_tlb_pending(void); +@@ -49,11 +51,6 @@ extern void __flush_tlb_kernel_range(unsigned long start, unsigned long end); + + #ifndef CONFIG_SMP + +-#define flush_tlb_kernel_range(start,end) \ +-do { flush_tsb_kernel_range(start,end); \ +- __flush_tlb_kernel_range(start,end); \ +-} while (0) +- + static inline void global_flush_tlb_page(struct mm_struct *mm, unsigned long vaddr) + { + __flush_tlb_page(CTX_HWBITS(mm->context), vaddr); +@@ -64,11 +61,6 @@ static inline void global_flush_tlb_page(struct mm_struct *mm, unsigned long vad + extern void smp_flush_tlb_kernel_range(unsigned long start, unsigned long end); + extern void smp_flush_tlb_page(struct mm_struct *mm, unsigned long vaddr); + +-#define flush_tlb_kernel_range(start, end) \ +-do { flush_tsb_kernel_range(start,end); \ +- smp_flush_tlb_kernel_range(start, end); \ +-} while (0) +- + #define global_flush_tlb_page(mm, vaddr) \ + smp_flush_tlb_page(mm, vaddr) + +diff --git a/arch/sparc/kernel/ldc.c b/arch/sparc/kernel/ldc.c +index 54df554b82d9..fa4c900a0d1f 100644 +--- a/arch/sparc/kernel/ldc.c b/arch/sparc/kernel/ldc.c +@@ -1336,7 +1336,7 @@ int ldc_connect(struct ldc_channel *lp) + if (!(lp->flags & LDC_FLAG_ALLOCED_QUEUES) || + !(lp->flags & LDC_FLAG_REGISTERED_QUEUES) || + lp->hs_state != LDC_HS_OPEN) +- err = -EINVAL; ++ err = ((lp->hs_state > LDC_HS_OPEN) ? 0 : -EINVAL); + else + err = start_handshake(lp); + +diff --git a/arch/sparc/kernel/smp_64.c b/arch/sparc/kernel/smp_64.c +index 77539eda928c..8565ecd7d48a 100644 +--- a/arch/sparc/kernel/smp_64.c b/arch/sparc/kernel/smp_64.c +@@ -150,7 +150,7 @@ void cpu_panic(void) + #define NUM_ROUNDS64 /* magic value */ + #define NUM_ITERS 5 /* likewise */ + +-static DEFINE_SPINLOCK(itc_sync_lock); ++static DEFINE_RAW_SPINLOCK(itc_sync_lock); + static unsigned long go[SLAVE + 1]; + + #defin
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 55bddecaa455f53be117a668dca0f114c11bc216 Author: Mike Pagano gentoo org> AuthorDate: Fri Aug 8 17:52:12 2014 + Commit: Mike Pagano gentoo org> CommitDate: Fri Aug 8 17:52:12 2014 + URL: http://git.overlays.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=55bddeca Linux patch 3.10.52 --- _README |4 + 1051_linux-3.10.52.patch | 1554 ++ 2 files changed, 1558 insertions(+) diff --git a/_README b/_README index 35d32f5..1e6798c 100644 --- a/_README +++ b/_README @@ -246,6 +246,10 @@ Patch: 1050_linux-3.10.51.patch From: http://www.kernel.org Desc: Linux 3.10.51 +Patch: 1051_linux-3.10.52.patch +From: http://www.kernel.org +Desc: Linux 3.10.52 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1051_linux-3.10.52.patch b/1051_linux-3.10.52.patch new file mode 100644 index 000..570d7cd --- /dev/null +++ b/1051_linux-3.10.52.patch @@ -0,0 +1,1554 @@ +diff --git a/Documentation/x86/x86_64/mm.txt b/Documentation/x86/x86_64/mm.txt +index 881582f75c9c..bd4370487b07 100644 +--- a/Documentation/x86/x86_64/mm.txt b/Documentation/x86/x86_64/mm.txt +@@ -12,6 +12,8 @@ c900 - e8ff (=45 bits) vmalloc/ioremap space + e900 - e9ff (=40 bits) hole + ea00 - eaff (=40 bits) virtual memory map (1TB) + ... unused hole ... ++ff00 - ff7f (=39 bits) %esp fixup stacks ++... unused hole ... + 8000 - a000 (=512 MB) kernel text mapping, from phys 0 + a000 - ff5f (=1525 MB) module mapping space + ff60 - ffdf (=8 MB) vsyscalls +diff --git a/Makefile b/Makefile +index f9f6ee59c61a..b94f00938acc 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 51 ++SUBLEVEL = 52 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm/mm/idmap.c b/arch/arm/mm/idmap.c +index 83cb3ac27095..c61d2373408c 100644 +--- a/arch/arm/mm/idmap.c b/arch/arm/mm/idmap.c +@@ -24,6 +24,13 @@ static void idmap_add_pmd(pud_t *pud, unsigned long addr, unsigned long end, + pr_warning("Failed to allocate identity pmd.\n"); + return; + } ++ /* ++ * Copy the original PMD to ensure that the PMD entries for ++ * the kernel image are preserved. ++ */ ++ if (!pud_none(*pud)) ++ memcpy(pmd, pmd_offset(pud, 0), ++ PTRS_PER_PMD * sizeof(pmd_t)); + pud_populate(&init_mm, pud, pmd); + pmd += pmd_index(addr); + } else +diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig +index af88b27ce313..a649cb686692 100644 +--- a/arch/x86/Kconfig b/arch/x86/Kconfig +@@ -952,10 +952,27 @@ config VM86 + default y + depends on X86_32 + ---help--- +-This option is required by programs like DOSEMU to run 16-bit legacy +-code on X86 processors. It also may be needed by software like +-XFree86 to initialize some video cards via BIOS. Disabling this +-option saves about 6k. ++This option is required by programs like DOSEMU to run ++16-bit real mode legacy code on x86 processors. It also may ++be needed by software like XFree86 to initialize some video ++cards via BIOS. Disabling this option saves about 6K. ++ ++config X86_16BIT ++ bool "Enable support for 16-bit segments" if EXPERT ++ default y ++ ---help--- ++This option is required by programs like Wine to run 16-bit ++protected mode legacy code on x86 processors. Disabling ++this option saves about 300 bytes on i386, or around 6K text ++plus 16K runtime memory on x86-64, ++ ++config X86_ESPFIX32 ++ def_bool y ++ depends on X86_16BIT && X86_32 ++ ++config X86_ESPFIX64 ++ def_bool y ++ depends on X86_16BIT && X86_64 + + config TOSHIBA + tristate "Toshiba Laptop support" +diff --git a/arch/x86/include/asm/espfix.h b/arch/x86/include/asm/espfix.h +new file mode 100644 +index ..99efebb2f69d +--- /dev/null b/arch/x86/include/asm/espfix.h +@@ -0,0 +1,16 @@ ++#ifndef _ASM_X86_ESPFIX_H ++#define _ASM_X86_ESPFIX_H ++ ++#ifdef CONFIG_X86_64 ++ ++#include ++ ++DECLARE_PER_CPU_READ_MOSTLY(unsigned long, espfix_stack); ++DECLARE_PER_CPU_READ_MOSTLY(unsigned long, espfix_waddr); ++ ++extern void init_espfix_bsp(void); ++extern void init_espfix_ap(void); ++ ++#endif /* CONFIG_X86_64 */ ++ ++#endif /* _ASM_X86_ESPFIX_H */ +diff --git a/arch/x86/include/asm/irqflags.h b/arch/x86/include/asm/irqflags.h +index bba3cf88e624..0a8b519226b8 100644 +--- a/arch/x86/include/asm/irqflags.h b/arch/x86/include/
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 7f39f6e6b366931633750a78904e8b378f7f75eb Author: Mike Pagano gentoo org> AuthorDate: Sat Aug 2 15:26:14 2014 + Commit: Mike Pagano gentoo org> CommitDate: Sat Aug 2 15:26:14 2014 + URL: http://git.overlays.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=7f39f6e6 Linux patch 3.10.51 --- _README | 4 + 1050_linux-3.10.51.patch | 708 +++ 2 files changed, 712 insertions(+) diff --git a/_README b/_README index e86111a..35d32f5 100644 --- a/_README +++ b/_README @@ -242,6 +242,10 @@ Patch: 1049_linux-3.10.50.patch From: http://www.kernel.org Desc: Linux 3.10.50 +Patch: 1050_linux-3.10.51.patch +From: http://www.kernel.org +Desc: Linux 3.10.51 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1050_linux-3.10.51.patch b/1050_linux-3.10.51.patch new file mode 100644 index 000..ba39b5f --- /dev/null +++ b/1050_linux-3.10.51.patch @@ -0,0 +1,708 @@ +diff --git a/Makefile b/Makefile +index 8d891c66803c..f9f6ee59c61a 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 50 ++SUBLEVEL = 51 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +@@ -614,6 +614,8 @@ KBUILD_CFLAGS += -fomit-frame-pointer + endif + endif + ++KBUILD_CFLAGS += $(call cc-option, -fno-var-tracking-assignments) ++ + ifdef CONFIG_DEBUG_INFO + KBUILD_CFLAGS += -g + KBUILD_AFLAGS += -gdwarf-2 +diff --git a/arch/parisc/include/uapi/asm/signal.h b/arch/parisc/include/uapi/asm/signal.h +index a2fa297196bc..f5645d6a89f2 100644 +--- a/arch/parisc/include/uapi/asm/signal.h b/arch/parisc/include/uapi/asm/signal.h +@@ -69,8 +69,6 @@ + #define SA_NOMASK SA_NODEFER + #define SA_ONESHOTSA_RESETHAND + +-#define SA_RESTORER 0x0400 /* obsolete -- ignored */ +- + #define MINSIGSTKSZ 2048 + #define SIGSTKSZ 8192 + +diff --git a/arch/s390/kernel/ptrace.c b/arch/s390/kernel/ptrace.c +index a314c57f4e94..9677d935583c 100644 +--- a/arch/s390/kernel/ptrace.c b/arch/s390/kernel/ptrace.c +@@ -314,7 +314,9 @@ static int __poke_user(struct task_struct *child, addr_t addr, addr_t data) +* psw and gprs are stored on the stack +*/ + if (addr == (addr_t) &dummy->regs.psw.mask && +- ((data & ~PSW_MASK_USER) != psw_user_bits || ++ (((data^psw_user_bits) & ~PSW_MASK_USER) || ++ (((data^psw_user_bits) & PSW_MASK_ASC) && ++((data|psw_user_bits) & PSW_MASK_ASC) == PSW_MASK_ASC) || +((data & PSW_MASK_EA) && !(data & PSW_MASK_BA + /* Invalid psw mask. */ + return -EINVAL; +@@ -627,7 +629,10 @@ static int __poke_user_compat(struct task_struct *child, +*/ + if (addr == (addr_t) &dummy32->regs.psw.mask) { + /* Build a 64 bit psw mask from 31 bit mask. */ +- if ((tmp & ~PSW32_MASK_USER) != psw32_user_bits) ++ if (((tmp^psw32_user_bits) & ~PSW32_MASK_USER) || ++ (((tmp^psw32_user_bits) & PSW32_MASK_ASC) && ++ ((tmp|psw32_user_bits) & PSW32_MASK_ASC) ++ == PSW32_MASK_ASC)) + /* Invalid psw mask. */ + return -EINVAL; + regs->psw.mask = (regs->psw.mask & ~PSW_MASK_USER) | +diff --git a/arch/x86/boot/header.S b/arch/x86/boot/header.S +index 9ec06a1f6d61..425712462178 100644 +--- a/arch/x86/boot/header.S b/arch/x86/boot/header.S +@@ -91,10 +91,9 @@ bs_die: + + .section ".bsdata", "a" + bugger_off_msg: +- .ascii "Direct floppy boot is not supported. " +- .ascii "Use a boot loader program instead.\r\n" ++ .ascii "Use a boot loader.\r\n" + .ascii "\n" +- .ascii "Remove disk and press any key to reboot ...\r\n" ++ .ascii "Remove disk and press any key to reboot...\r\n" + .byte 0 + + #ifdef CONFIG_EFI_STUB +@@ -108,7 +107,7 @@ coff_header: + #else + .word 0x8664 # x86-64 + #endif +- .word 3 # nr_sections ++ .word 4 # nr_sections + .long 0 # TimeDateStamp + .long 0 # PointerToSymbolTable + .long 1 # NumberOfSymbols +@@ -250,6 +249,25 @@ section_table: + .word 0 # NumberOfLineNumbers + .long 0x60500020 # Characteristics (section flags) + ++ # ++ # The offset & size fields are filled in by build.c. ++ # ++ .ascii ".bss" ++ .byte 0 ++ .byte 0 ++ .byte 0
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: bb6262518ee99eb5e444a8cd8c6067fe52f55864 Author: Mike Pagano gentoo org> AuthorDate: Mon Jul 28 19:39:32 2014 + Commit: Mike Pagano gentoo org> CommitDate: Mon Jul 28 19:39:32 2014 + URL: http://git.overlays.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=bb626251 Linux patch 3.10.50 --- _README |4 + 1049_linux-3.10.50.patch | 1637 ++ 2 files changed, 1641 insertions(+) diff --git a/_README b/_README index db70185..e86111a 100644 --- a/_README +++ b/_README @@ -238,6 +238,10 @@ Patch: 1048_linux-3.10.49.patch From: http://www.kernel.org Desc: Linux 3.10.49 +Patch: 1049_linux-3.10.50.patch +From: http://www.kernel.org +Desc: Linux 3.10.50 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1049_linux-3.10.50.patch b/1049_linux-3.10.50.patch new file mode 100644 index 000..643e891 --- /dev/null +++ b/1049_linux-3.10.50.patch @@ -0,0 +1,1637 @@ +diff --git a/Makefile b/Makefile +index b8b8d33eab55..8d891c66803c 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 49 ++SUBLEVEL = 50 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arc/include/uapi/asm/ptrace.h b/arch/arc/include/uapi/asm/ptrace.h +index 30333cec0fef..ef9d79a3db25 100644 +--- a/arch/arc/include/uapi/asm/ptrace.h b/arch/arc/include/uapi/asm/ptrace.h +@@ -11,6 +11,7 @@ + #ifndef _UAPI__ASM_ARC_PTRACE_H + #define _UAPI__ASM_ARC_PTRACE_H + ++#define PTRACE_GET_THREAD_AREA25 + + #ifndef __ASSEMBLY__ + /* +diff --git a/arch/arc/kernel/ptrace.c b/arch/arc/kernel/ptrace.c +index 0851604bb9cd..f8a36ed9e0d5 100644 +--- a/arch/arc/kernel/ptrace.c b/arch/arc/kernel/ptrace.c +@@ -136,6 +136,10 @@ long arch_ptrace(struct task_struct *child, long request, + pr_debug("REQ=%ld: ADDR =0x%lx, DATA=0x%lx)\n", request, addr, data); + + switch (request) { ++ case PTRACE_GET_THREAD_AREA: ++ ret = put_user(task_thread_info(child)->thr_ptr, ++ (unsigned long __user *)data); ++ break; + default: + ret = ptrace_request(child, request, addr, data); + break; +diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig +index 18a9f5ef643a..d41951246cd6 100644 +--- a/arch/arm/Kconfig b/arch/arm/Kconfig +@@ -4,6 +4,7 @@ config ARM + select ARCH_BINFMT_ELF_RANDOMIZE_PIE + select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE + select ARCH_HAVE_CUSTOM_GPIO_H ++ select ARCH_SUPPORTS_ATOMIC_RMW + select ARCH_HAS_TICK_BROADCAST if GENERIC_CLOCKEVENTS_BROADCAST + select ARCH_WANT_IPC_PARSE_VERSION + select BUILDTIME_EXTABLE_SORT if MMU +diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig +index 56b3f6d447ae..0677ff4814fa 100644 +--- a/arch/arm64/Kconfig b/arch/arm64/Kconfig +@@ -1,6 +1,7 @@ + config ARM64 + def_bool y + select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE ++ select ARCH_SUPPORTS_ATOMIC_RMW + select ARCH_WANT_OPTIONAL_GPIOLIB + select ARCH_WANT_COMPAT_IPC_PARSE_VERSION + select ARCH_WANT_FRAME_POINTERS +diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig +index fe404e77246e..7f656f119ea6 100644 +--- a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig +@@ -138,6 +138,7 @@ config PPC + select ARCH_USE_BUILTIN_BSWAP + select OLD_SIGSUSPEND + select OLD_SIGACTION if PPC32 ++ select ARCH_SUPPORTS_ATOMIC_RMW + + config EARLY_PRINTK + bool +diff --git a/arch/sparc/Kconfig b/arch/sparc/Kconfig +index 2668b3142fa2..03a1bc3c3dde 100644 +--- a/arch/sparc/Kconfig b/arch/sparc/Kconfig +@@ -77,6 +77,7 @@ config SPARC64 + select ARCH_HAVE_NMI_SAFE_CMPXCHG + select HAVE_C_RECORDMCOUNT + select NO_BOOTMEM ++ select ARCH_SUPPORTS_ATOMIC_RMW + + config ARCH_DEFCONFIG + string +diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig +index fe120da25625..af88b27ce313 100644 +--- a/arch/x86/Kconfig b/arch/x86/Kconfig +@@ -121,6 +121,7 @@ config X86 + select OLD_SIGACTION if X86_32 + select COMPAT_OLD_SIGACTION if IA32_EMULATION + select RTC_LIB ++ select ARCH_SUPPORTS_ATOMIC_RMW + + config INSTRUCTION_DECODER + def_bool y +diff --git a/arch/x86/kernel/cpu/perf_event_intel.c b/arch/x86/kernel/cpu/perf_event_intel.c +index a9e22073bd56..b45ac6affa9c 100644 +--- a/arch/x86/kernel/cpu/perf_event_intel.c b/arch/x86/kernel/cpu/perf_event_intel.c +@@ -1199,6 +1199,15 @@ again: + intel_pmu_lbr_read(); + + /* ++ * CondChgd bit 63 doesn't mean any overflow status. Ignore ++ * and clear the bit. ++ */ ++ if (__test_and_clear_bit(63, (unsigned long *)&status)) { ++ if (!status) ++ goto done; ++ } ++ ++ /* +* PEBS over
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 274d40c3e4bf0dd4a68db69573c6765b56d8dd79 Author: Mike Pagano gentoo org> AuthorDate: Fri Jul 18 11:54:15 2014 + Commit: Mike Pagano gentoo org> CommitDate: Fri Jul 18 11:54:15 2014 + URL: http://git.overlays.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=274d40c3 Linux patch 3.10.49 --- _README |4 + 1048_linux-3.10.49.patch | 1621 ++ 2 files changed, 1625 insertions(+) diff --git a/_README b/_README index 7ca8043..db70185 100644 --- a/_README +++ b/_README @@ -234,6 +234,10 @@ Patch: 1047_linux-3.10.48.patch From: http://www.kernel.org Desc: Linux 3.10.48 +Patch: 1048_linux-3.10.49.patch +From: http://www.kernel.org +Desc: Linux 3.10.49 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1048_linux-3.10.49.patch b/1048_linux-3.10.49.patch new file mode 100644 index 000..66bb57c --- /dev/null +++ b/1048_linux-3.10.49.patch @@ -0,0 +1,1621 @@ +diff --git a/Makefile b/Makefile +index f7e5680740f9..b8b8d33eab55 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 48 ++SUBLEVEL = 49 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm64/include/asm/memory.h b/arch/arm64/include/asm/memory.h +index 381f556b664e..bf0838323896 100644 +--- a/arch/arm64/include/asm/memory.h b/arch/arm64/include/asm/memory.h +@@ -51,6 +51,8 @@ + #define TASK_SIZE_32 UL(0x1) + #define TASK_SIZE (test_thread_flag(TIF_32BIT) ? \ + TASK_SIZE_32 : TASK_SIZE_64) ++#define TASK_SIZE_OF(tsk) (test_tsk_thread_flag(tsk, TIF_32BIT) ? \ ++ TASK_SIZE_32 : TASK_SIZE_64) + #else + #define TASK_SIZE TASK_SIZE_64 + #endif /* CONFIG_COMPAT */ +diff --git a/arch/parisc/kernel/hardware.c b/arch/parisc/kernel/hardware.c +index 872275659d98..c22c3d84e28b 100644 +--- a/arch/parisc/kernel/hardware.c b/arch/parisc/kernel/hardware.c +@@ -1205,7 +1205,8 @@ static struct hp_hardware hp_hardware_list[] = { + {HPHW_FIO, 0x004, 0x00320, 0x0, "Metheus Frame Buffer"}, + {HPHW_FIO, 0x004, 0x00340, 0x0, "BARCO CX4500 VME Grphx Cnsl"}, + {HPHW_FIO, 0x004, 0x00360, 0x0, "Hughes TOG VME FDDI"}, +- {HPHW_FIO, 0x076, 0x000AD, 0x00, "Crestone Peak RS-232"}, ++ {HPHW_FIO, 0x076, 0x000AD, 0x0, "Crestone Peak Core RS-232"}, ++ {HPHW_FIO, 0x077, 0x000AD, 0x0, "Crestone Peak Fast? Core RS-232"}, + {HPHW_IOA, 0x185, 0xB, 0x00, "Java BC Summit Port"}, + {HPHW_IOA, 0x1FF, 0xB, 0x00, "Hitachi Ghostview Summit Port"}, + {HPHW_IOA, 0x580, 0xB, 0x10, "U2-IOA BC Runway Port"}, +diff --git a/arch/powerpc/include/asm/perf_event_server.h b/arch/powerpc/include/asm/perf_event_server.h +index f265049dd7d6..960bf64788a3 100644 +--- a/arch/powerpc/include/asm/perf_event_server.h b/arch/powerpc/include/asm/perf_event_server.h +@@ -59,7 +59,7 @@ struct power_pmu { + #define PPMU_SIAR_VALID 0x0010 /* Processor has SIAR Valid bit */ + #define PPMU_HAS_SSLOT0x0020 /* Has sampled slot in MMCRA */ + #define PPMU_HAS_SIER 0x0040 /* Has SIER */ +-#define PPMU_BHRB 0x0080 /* has BHRB feature enabled */ ++#define PPMU_ARCH_207S0x0080 /* PMC is architecture v2.07S */ + + /* + * Values for flags to get_alternatives() +diff --git a/arch/powerpc/perf/core-book3s.c b/arch/powerpc/perf/core-book3s.c +index d3ee2e50a3a6..846861a20b07 100644 +--- a/arch/powerpc/perf/core-book3s.c b/arch/powerpc/perf/core-book3s.c +@@ -749,7 +749,22 @@ static void power_pmu_read(struct perf_event *event) + } while (local64_cmpxchg(&event->hw.prev_count, prev, val) != prev); + + local64_add(delta, &event->count); +- local64_sub(delta, &event->hw.period_left); ++ ++ /* ++ * A number of places program the PMC with (0x8000 - period_left). ++ * We never want period_left to be less than 1 because we will program ++ * the PMC with a value >= 0x8 and an edge detected PMC will ++ * roll around to 0 before taking an exception. We have seen this ++ * on POWER8. ++ * ++ * To fix this, clamp the minimum value of period_left to 1. ++ */ ++ do { ++ prev = local64_read(&event->hw.period_left); ++ val = prev - delta; ++ if (val < 1) ++ val = 1; ++ } while (local64_cmpxchg(&event->hw.period_left, prev, val) != prev); + } + + /* +@@ -1327,6 +1342,9 @@ static int can_go_on_limited_pmc(struct perf_event *event, u64 ev, + if (ppmu->limited_pmc_event(ev)) + return 1; + ++ if (ppmu->flags & PPMU_ARCH_207S) ++ mtspr(SPRN_MMCR2, 0); ++ + /* +* The req
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: f4449b8ff9220f2c57f1ebe5ecad2fd86cd98ac2 Author: Mike Pagano gentoo org> AuthorDate: Wed Jul 9 23:38:57 2014 + Commit: Mike Pagano gentoo org> CommitDate: Wed Jul 9 23:38:57 2014 + URL: http://git.overlays.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=f4449b8f Linux patch 3.10.48 --- _README |4 + 1047_linux-3.10.48.patch | 1525 ++ 2 files changed, 1529 insertions(+) diff --git a/_README b/_README index 3f75e5c..7ca8043 100644 --- a/_README +++ b/_README @@ -230,6 +230,10 @@ Patch: 1046_linux-3.10.47.patch From: http://www.kernel.org Desc: Linux 3.10.47 +Patch: 1047_linux-3.10.48.patch +From: http://www.kernel.org +Desc: Linux 3.10.48 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1047_linux-3.10.48.patch b/1047_linux-3.10.48.patch new file mode 100644 index 000..1da735f --- /dev/null +++ b/1047_linux-3.10.48.patch @@ -0,0 +1,1525 @@ +diff --git a/Makefile b/Makefile +index 6a3b46d1863c..f7e5680740f9 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 47 ++SUBLEVEL = 48 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/arm/mach-omap2/mux.c b/arch/arm/mach-omap2/mux.c +index f82cf878d6af..94c2f6d17dae 100644 +--- a/arch/arm/mach-omap2/mux.c b/arch/arm/mach-omap2/mux.c +@@ -183,8 +183,10 @@ static int __init _omap_mux_get_by_name(struct omap_mux_partition *partition, + m0_entry = mux->muxnames[0]; + + /* First check for full name in mode0.muxmode format */ +- if (mode0_len && strncmp(muxname, m0_entry, mode0_len)) +- continue; ++ if (mode0_len) ++ if (strncmp(muxname, m0_entry, mode0_len) || ++ (strlen(m0_entry) != mode0_len)) ++ continue; + + /* Then check for muxmode only */ + for (i = 0; i < OMAP_MUX_NR_MODES; i++) { +diff --git a/arch/arm64/kernel/entry.S b/arch/arm64/kernel/entry.S +index 6ad781b21c08..7cd589ebca2a 100644 +--- a/arch/arm64/kernel/entry.S b/arch/arm64/kernel/entry.S +@@ -275,7 +275,6 @@ el1_sp_pc: +* Stack or PC alignment exception handling +*/ + mrs x0, far_el1 +- mov x1, x25 + mov x2, sp + b do_sp_pc_abort + el1_undef: +diff --git a/arch/unicore32/mm/alignment.c b/arch/unicore32/mm/alignment.c +index de7dc5fdd58b..24e836023e6c 100644 +--- a/arch/unicore32/mm/alignment.c b/arch/unicore32/mm/alignment.c +@@ -21,6 +21,7 @@ + #include + #include + ++#include + #include + #include + +diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h +index 3741c653767c..8b320722de7a 100644 +--- a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h +@@ -92,7 +92,7 @@ + #define KVM_REFILL_PAGES 25 + #define KVM_MAX_CPUID_ENTRIES 80 + #define KVM_NR_FIXED_MTRR_REGION 88 +-#define KVM_NR_VAR_MTRR 8 ++#define KVM_NR_VAR_MTRR 10 + + #define ASYNC_PF_PER_VCPU 64 + +@@ -445,7 +445,7 @@ struct kvm_vcpu_arch { + bool nmi_injected;/* Trying to inject an NMI this entry */ + + struct mtrr_state_type mtrr_state; +- u32 pat; ++ u64 pat; + + int switch_db_regs; + unsigned long db[KVM_NR_DB_REGS]; +diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c +index 1e89a3dd3d51..07caf44d5755 100644 +--- a/drivers/block/rbd.c b/drivers/block/rbd.c +@@ -1385,6 +1385,14 @@ static bool obj_request_exists_test(struct rbd_obj_request *obj_request) + return test_bit(OBJ_REQ_EXISTS, &obj_request->flags) != 0; + } + ++static bool obj_request_overlaps_parent(struct rbd_obj_request *obj_request) ++{ ++ struct rbd_device *rbd_dev = obj_request->img_request->rbd_dev; ++ ++ return obj_request->img_offset < ++ round_up(rbd_dev->parent_overlap, rbd_obj_bytes(&rbd_dev->header)); ++} ++ + static void rbd_obj_request_get(struct rbd_obj_request *obj_request) + { + dout("%s: obj %p (was %d)\n", __func__, obj_request, +@@ -1401,6 +1409,13 @@ static void rbd_obj_request_put(struct rbd_obj_request *obj_request) + kref_put(&obj_request->kref, rbd_obj_request_destroy); + } + ++static void rbd_img_request_get(struct rbd_img_request *img_request) ++{ ++ dout("%s: img %p (was %d)\n", __func__, img_request, ++ atomic_read(&img_request->kref.refcount)); ++ kref_get(&img_request->kref); ++} ++ + static bool img_request_child_test(struct rbd_img_request *img_request); + static void rbd_parent_request_destroy(struct kref *kref); + static void rbd_img_request_destroy(struct kref *kref); +@@ -2154,6 +2169,7 @@ static void rbd_img_obj_callback(struct rbd_obj_request *obj_request) + img_request->next_completion = which; + ou
[gentoo-commits] proj/linux-patches:3.10 commit in: /
commit: 1ea8ec206bb391ba233e18afe4f1517e31cef49e Author: Mike Pagano gentoo org> AuthorDate: Tue Jul 8 00:22:06 2014 + Commit: Mike Pagano gentoo org> CommitDate: Tue Jul 8 00:22:06 2014 + URL: http://git.overlays.gentoo.org/gitweb/?p=proj/linux-patches.git;a=commit;h=1ea8ec20 Linux patch 3.10.47 --- _README |4 + 1046_linux-3.10.47.patch | 1412 ++ 2 files changed, 1416 insertions(+) diff --git a/_README b/_README index 6ec8c6d..3f75e5c 100644 --- a/_README +++ b/_README @@ -226,6 +226,10 @@ Patch: 1045_linux-3.10.46.patch From: http://www.kernel.org Desc: Linux 3.10.46 +Patch: 1046_linux-3.10.47.patch +From: http://www.kernel.org +Desc: Linux 3.10.47 + Patch: 1500_XATTR_USER_PREFIX.patch From: https://bugs.gentoo.org/show_bug.cgi?id=470644 Desc: Support for namespace user.pax.* on tmpfs. diff --git a/1046_linux-3.10.47.patch b/1046_linux-3.10.47.patch new file mode 100644 index 000..6bbab45 --- /dev/null +++ b/1046_linux-3.10.47.patch @@ -0,0 +1,1412 @@ +diff --git a/Documentation/SubmittingPatches b/Documentation/SubmittingPatches +index 6e97e73d87b5..4dbba7e100a1 100644 +--- a/Documentation/SubmittingPatches b/Documentation/SubmittingPatches +@@ -131,6 +131,20 @@ If you cannot condense your patch set into a smaller set of patches, + then only post say 15 or so at a time and wait for review and integration. + + ++If your patch fixes a bug in a specific commit, e.g. you found an issue using ++git-bisect, please use the 'Fixes:' tag with the first 12 characters of the ++SHA-1 ID, and the one line summary. ++Example: ++ ++ Fixes: e21d2170f366 ("video: remove unnecessary platform_set_drvdata()") ++ ++The following git-config settings can be used to add a pretty format for ++outputting the above style in the git log or git show commands ++ ++ [core] ++ abbrev = 12 ++ [pretty] ++ fixes = Fixes: %h (\"%s\") + + 4) Style check your changes. + +@@ -420,7 +434,7 @@ person it names. This tag documents that potentially interested parties + have been included in the discussion + + +-14) Using Reported-by:, Tested-by:, Reviewed-by: and Suggested-by: ++14) Using Reported-by:, Tested-by:, Reviewed-by:, Suggested-by: and Fixes: + + If this patch fixes a problem reported by somebody else, consider adding a + Reported-by: tag to credit the reporter for their contribution. Please +@@ -475,6 +489,12 @@ idea was not posted in a public forum. That said, if we diligently credit our + idea reporters, they will, hopefully, be inspired to help us again in the + future. + ++A Fixes: tag indicates that the patch fixes an issue in a previous commit. It ++is used to make it easy to determine where a bug originated, which can help ++review a bug fix. This tag also assists the stable kernel team in determining ++which stable kernel versions should receive your fix. This is the preferred ++method for indicating a bug fixed by the patch. See #2 above for more details. ++ + + 15) The canonical patch format + +diff --git a/Makefile b/Makefile +index c226f110181d..6a3b46d1863c 100644 +--- a/Makefile b/Makefile +@@ -1,6 +1,6 @@ + VERSION = 3 + PATCHLEVEL = 10 +-SUBLEVEL = 46 ++SUBLEVEL = 47 + EXTRAVERSION = + NAME = TOSSUG Baby Fish + +diff --git a/arch/mips/kernel/irq-msc01.c b/arch/mips/kernel/irq-msc01.c +index fab40f7d2e03..ac9facc08694 100644 +--- a/arch/mips/kernel/irq-msc01.c b/arch/mips/kernel/irq-msc01.c +@@ -131,7 +131,7 @@ void __init init_msc_irqs(unsigned long icubase, unsigned int irqbase, msc_irqma + + board_bind_eic_interrupt = &msc_bind_eic_interrupt; + +- for (; nirq >= 0; nirq--, imp++) { ++ for (; nirq > 0; nirq--, imp++) { + int n = imp->im_irq; + + switch (imp->im_type) { +diff --git a/arch/mips/kvm/kvm_mips.c b/arch/mips/kvm/kvm_mips.c +index 426345ac6f6e..2c7b3ade8ec0 100644 +--- a/arch/mips/kvm/kvm_mips.c b/arch/mips/kvm/kvm_mips.c +@@ -149,9 +149,7 @@ void kvm_mips_free_vcpus(struct kvm *kvm) + if (kvm->arch.guest_pmap[i] != KVM_INVALID_PAGE) + kvm_mips_release_pfn_clean(kvm->arch.guest_pmap[i]); + } +- +- if (kvm->arch.guest_pmap) +- kfree(kvm->arch.guest_pmap); ++ kfree(kvm->arch.guest_pmap); + + kvm_for_each_vcpu(i, vcpu, kvm) { + kvm_arch_vcpu_free(vcpu); +@@ -384,12 +382,9 @@ void kvm_arch_vcpu_free(struct kvm_vcpu *vcpu) + + kvm_mips_dump_stats(vcpu); + +- if (vcpu->arch.guest_ebase) +- kfree(vcpu->arch.guest_ebase); +- +- if (vcpu->arch.kseg0_commpage) +- kfree(vcpu->arch.kseg0_commpage); +- ++ kfree(vcpu->arch.guest_ebase); ++ kfree(vcpu->arch.kseg0_commpage); ++ kfree(vcpu); + } + + void kvm_arch_vcpu_destroy(struct kvm_vcpu *vcpu) +diff --git a/arch/powerpc/include/asm/systbl.h b/arch/powerpc/inc