linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Kamal Mostafa <kamal@canonical.com>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org,
	kernel-team@lists.ubuntu.com
Cc: Eric Dumazet <edumazet@google.com>,
	"David S. Miller" <davem@davemloft.net>,
	Kamal Mostafa <kamal@canonical.com>
Subject: [PATCH 3.13.y-ckt 011/143] ipv4: tcp: get rid of ugly unicast_sock
Date: Tue, 31 Mar 2015 12:46:16 -0700	[thread overview]
Message-ID: <1427831308-1854-12-git-send-email-kamal@canonical.com> (raw)
In-Reply-To: <1427831308-1854-1-git-send-email-kamal@canonical.com>

3.13.11-ckt18 -stable review patch.  If anyone has any objections, please let me know.

------------------

From: Eric Dumazet <edumazet@google.com>

[ Upstream commit bdbbb8527b6f6a358dbcb70dac247034d665b8e4 ]

In commit be9f4a44e7d41 ("ipv4: tcp: remove per net tcp_sock")
I tried to address contention on a socket lock, but the solution
I chose was horrible :

commit 3a7c384ffd57e ("ipv4: tcp: unicast_sock should not land outside
of TCP stack") addressed a selinux regression.

commit 0980e56e506b ("ipv4: tcp: set unicast_sock uc_ttl to -1")
took care of another regression.

commit b5ec8eeac46 ("ipv4: fix ip_send_skb()") fixed another regression.

commit 811230cd85 ("tcp: ipv4: initialize unicast_sock sk_pacing_rate")
was another shot in the dark.

Really, just use a proper socket per cpu, and remove the skb_orphan()
call, to re-enable flow control.

This solves a serious problem with FQ packet scheduler when used in
hostile environments, as we do not want to allocate a flow structure
for every RST packet sent in response to a spoofed packet.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
---
 include/net/ip.h         |  2 +-
 include/net/netns/ipv4.h |  1 +
 net/ipv4/ip_output.c     | 30 +++---------------------------
 net/ipv4/tcp_ipv4.c      | 37 ++++++++++++++++++++++++++++++++-----
 4 files changed, 37 insertions(+), 33 deletions(-)

diff --git a/include/net/ip.h b/include/net/ip.h
index 5c76b1f..4613b19 100644
--- a/include/net/ip.h
+++ b/include/net/ip.h
@@ -174,7 +174,7 @@ static inline __u8 ip_reply_arg_flowi_flags(const struct ip_reply_arg *arg)
 	return (arg->flags & IP_REPLY_ARG_NOSRCCHECK) ? FLOWI_FLAG_ANYSRC : 0;
 }
 
-void ip_send_unicast_reply(struct net *net, struct sk_buff *skb, __be32 daddr,
+void ip_send_unicast_reply(struct sock *sk, struct sk_buff *skb, __be32 daddr,
 			   __be32 saddr, const struct ip_reply_arg *arg,
 			   unsigned int len);
 
diff --git a/include/net/netns/ipv4.h b/include/net/netns/ipv4.h
index ee520cb..cf69c31 100644
--- a/include/net/netns/ipv4.h
+++ b/include/net/netns/ipv4.h
@@ -47,6 +47,7 @@ struct netns_ipv4 {
 	struct inet_peer_base	*peers;
 	struct tcpm_hash_bucket	*tcp_metrics_hash;
 	unsigned int		tcp_metrics_hash_log;
+	struct sock  * __percpu	*tcp_sk;
 	struct netns_frags	frags;
 #ifdef CONFIG_NETFILTER
 	struct xt_table		*iptable_filter;
diff --git a/net/ipv4/ip_output.c b/net/ipv4/ip_output.c
index 0b8fe5b..3730214 100644
--- a/net/ipv4/ip_output.c
+++ b/net/ipv4/ip_output.c
@@ -1461,24 +1461,8 @@ static int ip_reply_glue_bits(void *dptr, char *to, int offset,
 /*
  *	Generic function to send a packet as reply to another packet.
  *	Used to send some TCP resets/acks so far.
- *
- *	Use a fake percpu inet socket to avoid false sharing and contention.
  */
-static DEFINE_PER_CPU(struct inet_sock, unicast_sock) = {
-	.sk = {
-		.__sk_common = {
-			.skc_refcnt = ATOMIC_INIT(1),
-		},
-		.sk_wmem_alloc	= ATOMIC_INIT(1),
-		.sk_allocation	= GFP_ATOMIC,
-		.sk_flags	= (1UL << SOCK_USE_WRITE_QUEUE),
-		.sk_pacing_rate = ~0U,
-	},
-	.pmtudisc	= IP_PMTUDISC_WANT,
-	.uc_ttl		= -1,
-};
-
-void ip_send_unicast_reply(struct net *net, struct sk_buff *skb, __be32 daddr,
+void ip_send_unicast_reply(struct sock *sk, struct sk_buff *skb, __be32 daddr,
 			   __be32 saddr, const struct ip_reply_arg *arg,
 			   unsigned int len)
 {
@@ -1486,9 +1470,8 @@ void ip_send_unicast_reply(struct net *net, struct sk_buff *skb, __be32 daddr,
 	struct ipcm_cookie ipc;
 	struct flowi4 fl4;
 	struct rtable *rt = skb_rtable(skb);
+	struct net *net = sock_net(sk);
 	struct sk_buff *nskb;
-	struct sock *sk;
-	struct inet_sock *inet;
 	int err;
 
 	if (ip_options_echo(&replyopts.opt.opt, skb))
@@ -1518,15 +1501,11 @@ void ip_send_unicast_reply(struct net *net, struct sk_buff *skb, __be32 daddr,
 	if (IS_ERR(rt))
 		return;
 
-	inet = &get_cpu_var(unicast_sock);
+	inet_sk(sk)->tos = arg->tos;
 
-	inet->tos = arg->tos;
-	sk = &inet->sk;
 	sk->sk_priority = skb->priority;
 	sk->sk_protocol = ip_hdr(skb)->protocol;
 	sk->sk_bound_dev_if = arg->bound_dev_if;
-	sock_net_set(sk, net);
-	__skb_queue_head_init(&sk->sk_write_queue);
 	sk->sk_sndbuf = sysctl_wmem_default;
 	err = ip_append_data(sk, &fl4, ip_reply_glue_bits, arg->iov->iov_base,
 			     len, 0, &ipc, &rt, MSG_DONTWAIT);
@@ -1542,13 +1521,10 @@ void ip_send_unicast_reply(struct net *net, struct sk_buff *skb, __be32 daddr,
 			  arg->csumoffset) = csum_fold(csum_add(nskb->csum,
 								arg->csum));
 		nskb->ip_summed = CHECKSUM_NONE;
-		skb_orphan(nskb);
 		skb_set_queue_mapping(nskb, skb_get_queue_mapping(skb));
 		ip_push_pending_frames(sk, &fl4);
 	}
 out:
-	put_cpu_var(unicast_sock);
-
 	ip_rt_put(rt);
 }
 
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c
index 9b726c0..9f627b9 100644
--- a/net/ipv4/tcp_ipv4.c
+++ b/net/ipv4/tcp_ipv4.c
@@ -690,7 +690,8 @@ static void tcp_v4_send_reset(struct sock *sk, struct sk_buff *skb)
 
 	net = dev_net(skb_dst(skb)->dev);
 	arg.tos = ip_hdr(skb)->tos;
-	ip_send_unicast_reply(net, skb, ip_hdr(skb)->saddr,
+	ip_send_unicast_reply(*this_cpu_ptr(net->ipv4.tcp_sk),
+			      skb, ip_hdr(skb)->saddr,
 			      ip_hdr(skb)->daddr, &arg, arg.iov[0].iov_len);
 
 	TCP_INC_STATS_BH(net, TCP_MIB_OUTSEGS);
@@ -773,7 +774,8 @@ static void tcp_v4_send_ack(struct sk_buff *skb, u32 seq, u32 ack,
 	if (oif)
 		arg.bound_dev_if = oif;
 	arg.tos = tos;
-	ip_send_unicast_reply(net, skb, ip_hdr(skb)->saddr,
+	ip_send_unicast_reply(*this_cpu_ptr(net->ipv4.tcp_sk),
+			      skb, ip_hdr(skb)->saddr,
 			      ip_hdr(skb)->daddr, &arg, arg.iov[0].iov_len);
 
 	TCP_INC_STATS_BH(net, TCP_MIB_OUTSEGS);
@@ -2754,14 +2756,39 @@ struct proto tcp_prot = {
 };
 EXPORT_SYMBOL(tcp_prot);
 
+static void __net_exit tcp_sk_exit(struct net *net)
+{
+	int cpu;
+
+	for_each_possible_cpu(cpu)
+		inet_ctl_sock_destroy(*per_cpu_ptr(net->ipv4.tcp_sk, cpu));
+	free_percpu(net->ipv4.tcp_sk);
+}
+
 static int __net_init tcp_sk_init(struct net *net)
 {
+	int res, cpu;
+
+	net->ipv4.tcp_sk = alloc_percpu(struct sock *);
+	if (!net->ipv4.tcp_sk)
+		return -ENOMEM;
+
+	for_each_possible_cpu(cpu) {
+		struct sock *sk;
+
+		res = inet_ctl_sock_create(&sk, PF_INET, SOCK_RAW,
+					   IPPROTO_TCP, net);
+		if (res)
+			goto fail;
+		*per_cpu_ptr(net->ipv4.tcp_sk, cpu) = sk;
+	}
 	net->ipv4.sysctl_tcp_ecn = 2;
 	return 0;
-}
 
-static void __net_exit tcp_sk_exit(struct net *net)
-{
+fail:
+	tcp_sk_exit(net);
+
+	return res;
 }
 
 static void __net_exit tcp_sk_exit_batch(struct list_head *net_exit_list)
-- 
1.9.1


  parent reply	other threads:[~2015-03-31 20:31 UTC|newest]

Thread overview: 146+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-31 19:46 [3.13.y-ckt stable] Linux 3.13.11-ckt18 stable review Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 001/143] quota: Store maximum space limit in bytes Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 002/143] ip: zero sockaddr returned on error queue Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 003/143] net: rps: fix cpu unplug Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 004/143] ipv6: stop sending PTB packets for MTU < 1280 Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 005/143] netxen: fix netxen_nic_poll() logic Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 006/143] udp_diag: Fix socket skipping within chain Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 007/143] ping: Fix race in free in receive path Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 008/143] bnx2x: fix napi poll return value for repoll Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 009/143] net: don't OOPS on socket aio Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 010/143] bridge: dont send notification when skb->len == 0 in rtnl_bridge_notify Kamal Mostafa
2015-03-31 19:46 ` Kamal Mostafa [this message]
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 012/143] ppp: deflate: never return len larger than output buffer Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 013/143] net: sctp: fix passing wrong parameter header to param_type2af in sctp_process_param Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 014/143] ARM: pxa: add regulator_has_full_constraints to corgi board file Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 015/143] ARM: pxa: add regulator_has_full_constraints to poodle " Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 016/143] ARM: pxa: add regulator_has_full_constraints to spitz " Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 017/143] hx4700: regulator: declare full constraints Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 018/143] HID: input: fix confusion on conflicting mappings Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 019/143] HID: fixup the conflicting keyboard mappings quirk Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 020/143] megaraid_sas: disable interrupt_mask before enabling hardware interrupts Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 021/143] PCI: Generate uppercase hex for modalias var in uevent Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 022/143] usb: core: buffer: smallest buffer should start at ARCH_DMA_MINALIGN Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 023/143] tty/serial: at91: enable peripheral clock before accessing I/O registers Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 024/143] tty/serial: at91: fix error handling in atmel_serial_probe() Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 025/143] axonram: Fix bug in direct_access Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 026/143] ksoftirqd: Enable IRQs and call cond_resched() before poking RCU Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 027/143] TPM: Add new TPMs to the tail of the list to prevent inadvertent change of dev Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 028/143] char: tpm: Add missing error check for devm_kzalloc Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 029/143] tpm_tis: verify interrupt during init Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 030/143] tpm: Fix NULL return in tpm_ibmvtpm_get_desired_dma Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 031/143] tpm/tpm_i2c_stm_st33: Fix potential bug in tpm_stm_i2c_send Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 032/143] tpm/tpm_i2c_stm_st33: Add status check when reading data on the FIFO Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 033/143] mmc: sdhci-pxav3: fix unbalanced clock issues during probe Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 034/143] iwlwifi: mvm: validate tid and sta_id in ba_notif Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 035/143] power: bq24190: Fix ignored supplicants Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 036/143] ARM: DRA7: hwmod: Fix boot crash with DEBUG_LL enabled on UART3 Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 037/143] Bluetooth: ath3k: Add support of AR3012 bluetooth 13d3:3423 device Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 038/143] cfq-iosched: fix incorrect filing of rt async cfqq Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 039/143] smack: fix possible use after frees in task_security() callers Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 040/143] xfs: ensure buffer types are set correctly Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 041/143] xfs: inode unlink does not set AGI buffer type Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 042/143] xfs: set buf types when converting extent formats Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 043/143] xfs: set superblock buffer type correctly Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 044/143] btrfs: set proper message level for skinny metadata Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 045/143] KVM: s390: base hrtimer on a monotonic clock Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 046/143] PCI: Fix infinite loop with ROM image of size 0 Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 047/143] USB: cp210x: add ID for RUGGEDCOM USB Serial Console Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 048/143] clk: zynq: Force CPU_2X clock to be ungated Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 049/143] mmc: sdhci-pxav3: Remove checks for mandatory host clock Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 050/143] mmc: sdhci-pxav3: fix race between runtime pm and irq Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 051/143] power_supply: 88pm860x: Fix leaked power supply on probe fail Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 052/143] staging: comedi: comedi_compat32.c: fix COMEDI_CMD copy back Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 053/143] mmc: sdhci-pxav3: fix setting of pdata->clk_delay_cycles Kamal Mostafa
2015-03-31 19:46 ` [PATCH 3.13.y-ckt 054/143] ARM: 8284/1: sa1100: clear RCSR_SMR on resume Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 055/143] usb: musb: omap2plus bus glue needs USB host support Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 056/143] usb: musb: add omap-control dependency Kamal Mostafa
2015-04-01  9:37   ` Luis Henriques
2015-04-02 17:39     ` Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 057/143] cdc-acm: add sanity checks Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 058/143] USB: add flag for HCDs that can't receive wakeup requests (isp1760-hcd) Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 059/143] USB: fix use-after-free bug in usb_hcd_unlink_urb() Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 060/143] iwlwifi: mvm: always use mac color zero Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 061/143] iwlwifi: pcie: disable the SCD_BASE_ADDR when we resume from WoWLAN Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 062/143] vt: provide notifications on selection changes Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 063/143] tty: Prevent untrappable signals from malicious program Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 064/143] cpufreq: Set cpufreq_cpu_data to NULL before putting kobject Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 065/143] [media] lmedm04: Fix usb_submit_urb BOGUS urb xfer, pipe 1 != type 3 in interrupt urb Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 066/143] mei: mask interrupt set bit on clean reset bit Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 067/143] mei: me: release hw from reset only during the reset flow Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 068/143] MIPS: KVM: Deliver guest interrupts after local_irq_disable() Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 069/143] KVM: MIPS: Don't leak FPU/DSP to guest Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 070/143] ALSA: hda - Add the pin fixup for HP Envy TS bass speaker Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 071/143] ALSA: hda - Set up GPIO for Toshiba Satellite S50D Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 072/143] xen/manage: Fix USB interaction issues when resuming Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 073/143] drm/i915: Correct the IOSF Dev_FN field for IOSF transfers Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 074/143] cfq-iosched: handle failure of cfq group allocation Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 075/143] tracing: Fix unmapping loop in tracing_mark_write Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 076/143] fsnotify: fix handling of renames in audit Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 077/143] drm/radeon: workaround for CP HW bug on CIK Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 078/143] drm/radeon: only enable kv/kb dpm interrupts once v3 Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 079/143] NFSv4.1: Fix a kfree() of uninitialised pointers in decode_cb_sequence_args Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 080/143] cpufreq: speedstep-smi: enable interrupts when waiting Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 081/143] mm/hugetlb: pmd_huge() returns true for non-present hugepage Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 082/143] mm: cleanup follow_page_mask() Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 083/143] mm/hugetlb: take page table lock in follow_huge_pmd() Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 084/143] mm/hugetlb: fix getting refcount 0 page in hugetlb_fault() Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 085/143] mm/hugetlb: add migration/hwpoisoned entry check in hugetlb_change_protection Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 086/143] mm/hugetlb: add migration entry check in __unmap_hugepage_range Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 087/143] mm: softdirty: unmapped addresses between VMAs are clean Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 088/143] proc/pagemap: walk page tables under pte lock Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 089/143] mm: when stealing freepages, also take pages created by splitting buddy page Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 090/143] mm/mmap.c: fix arithmetic overflow in __vm_enough_memory() Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 091/143] mm/nommu.c: " Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 092/143] iscsi-target: Drop problematic active_ts_list usage Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 093/143] target: Fix PR_APTPL_BUF_LEN buffer size limitation Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 094/143] mm/compaction: fix wrong order check in compact_finished() Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 095/143] mm/memory.c: actually remap enough memory Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 096/143] mm: hwpoison: drop lru_add_drain_all() in __soft_offline_page() Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 097/143] ALSA: hda - enable mute led quirk for one more hp machine Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 098/143] ARC: fix page address calculation if PAGE_OFFSET != LINUX_LINK_BASE Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 099/143] drm/radeon/dp: Set EDP_CONFIGURATION_SET for bridge chips if necessary Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 100/143] drm/radeon: fix voltage setup on hawaii Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 101/143] ALSA: hdspm - Constrain periods to 2 on older cards Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 102/143] jffs2: fix handling of corrupted summary length Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 103/143] dm mirror: do not degrade the mirror on discard error Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 104/143] dm io: reject unsupported DISCARD requests with EOPNOTSUPP Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 105/143] target: Add missing WRITE_SAME end-of-device sanity check Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 106/143] target: Check for LBA + sectors wrap-around in sbc_parse_cdb Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 107/143] Btrfs: fix fsync data loss after adding hard link to inode Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 108/143] Added Little Endian support to vtpm module Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 109/143] fixed invalid assignment of 64bit mask to host dma_boundary for scatter gather segment boundary limit Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 110/143] sg: fix read() error reporting Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 111/143] IB/qib: Do not write EEPROM Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 112/143] md/raid5: Fix livelock when array is both resyncing and degraded Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 113/143] dm: fix a race condition in dm_get_md Kamal Mostafa
2015-03-31 19:47 ` [PATCH 3.13.y-ckt 114/143] dm snapshot: fix a possible invalid memory access on unload Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 115/143] cpufreq: s3c: remove incorrect __init annotations Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 116/143] libceph: assert both regular and lingering lists in __remove_osd() Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 117/143] libceph: change from BUG to WARN for __remove_osd() asserts Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 118/143] libceph: fix double __remove_osd() problem Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 119/143] MIPS: Export FP functions used by lose_fpu(1) for KVM Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 120/143] kdb: fix incorrect counts in KDB summary command output Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 121/143] blk-throttle: check stats_cpu before reading it from sysfs Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 122/143] procfs: fix race between symlink removals and traversals Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 123/143] autofs4 copy_dev_ioctl(): keep the value of ->size we'd used for allocation Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 124/143] pktgen: fix UDP checksum computation Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 125/143] ipv6: fix ipv6_cow_metrics for non DST_HOST case Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 126/143] clk-gate: fix bit # check in clk_register_gate() Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 127/143] ALSA: off by one bug in snd_riptide_joystick_probe() Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 128/143] ath5k: fix spontaneus AR5312 freezes Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 129/143] pinctrl: pinctrl-imx: don't use invalid value of conf_reg Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 130/143] ALSA: hda - Add one more node in the EAPD supporting candidate list Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 131/143] ALSA: hda - Add pin configs for ASUS mobo with IDT 92HD73XX codec Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 132/143] drm/i915/bdw: PCI IDs ending in 0xb are ULT Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 133/143] xfs: Fix quota type in quota structures when reusing quota file Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 134/143] gpiolib: of: allow of_gpiochip_find_and_xlate to find more than one chip per node Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 135/143] gpio: tps65912: fix wrong container_of arguments Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 136/143] ALSA: pcm: Don't leave PREPARED state after draining Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 137/143] metag: Fix KSTK_EIP() and KSTK_ESP() macros Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 138/143] md/raid1: fix read balance when a drive is write-mostly Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 139/143] drm/radeon: use drm_mode_vrefresh() rather than mode->vrefresh Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 140/143] drm/radeon: fix 1 RB harvest config setup for TN/RL Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 141/143] arm64: compat Fix siginfo_t -> compat_siginfo_t conversion on big endian Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 142/143] nilfs2: fix potential memory overrun on inode Kamal Mostafa
2015-03-31 19:48 ` [PATCH 3.13.y-ckt 143/143] HID: i2c-hid: Limit reads to wMaxInputLength bytes for input events Kamal Mostafa

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1427831308-1854-12-git-send-email-kamal@canonical.com \
    --to=kamal@canonical.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=kernel-team@lists.ubuntu.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).