From: Kamal Mostafa <kamal@canonical.com>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org,
kernel-team@lists.ubuntu.com
Cc: Andrey Ryabinin <aryabinin@virtuozzo.com>,
"J. Bruce Fields" <bfields@redhat.com>,
Kamal Mostafa <kamal@canonical.com>
Subject: [PATCH 3.19.y-ckt 038/164] lockd: create NSM handles per net namespace
Date: Wed, 2 Dec 2015 08:58:09 -0800 [thread overview]
Message-ID: <1449075615-20754-39-git-send-email-kamal@canonical.com> (raw)
In-Reply-To: <1449075615-20754-1-git-send-email-kamal@canonical.com>
3.19.8-ckt11 -stable review patch. If anyone has any objections, please let me know.
------------------
From: Andrey Ryabinin <aryabinin@virtuozzo.com>
commit 0ad95472bf169a3501991f8f33f5147f792a8116 upstream.
Commit cb7323fffa85 ("lockd: create and use per-net NSM
RPC clients on MON/UNMON requests") introduced per-net
NSM RPC clients. Unfortunately this doesn't make any sense
without per-net nsm_handle.
E.g. the following scenario could happen
Two hosts (X and Y) in different namespaces (A and B) share
the same nsm struct.
1. nsm_monitor(host_X) called => NSM rpc client created,
nsm->sm_monitored bit set.
2. nsm_mointor(host-Y) called => nsm->sm_monitored already set,
we just exit. Thus in namespace B ln->nsm_clnt == NULL.
3. host X destroyed => nsm->sm_count decremented to 1
4. host Y destroyed => nsm_unmonitor() => nsm_mon_unmon() => NULL-ptr
dereference of *ln->nsm_clnt
So this could be fixed by making per-net nsm_handles list,
instead of global. Thus different net namespaces will not be able
share the same nsm_handle.
Signed-off-by: Andrey Ryabinin <aryabinin@virtuozzo.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
---
fs/lockd/host.c | 7 ++++---
fs/lockd/mon.c | 36 ++++++++++++++++++++++--------------
fs/lockd/netns.h | 1 +
fs/lockd/svc.c | 1 +
fs/lockd/svc4proc.c | 2 +-
fs/lockd/svcproc.c | 2 +-
include/linux/lockd/lockd.h | 9 ++++++---
7 files changed, 36 insertions(+), 22 deletions(-)
diff --git a/fs/lockd/host.c b/fs/lockd/host.c
index 969d589..b5f3c3a 100644
--- a/fs/lockd/host.c
+++ b/fs/lockd/host.c
@@ -116,7 +116,7 @@ static struct nlm_host *nlm_alloc_host(struct nlm_lookup_host_info *ni,
atomic_inc(&nsm->sm_count);
else {
host = NULL;
- nsm = nsm_get_handle(ni->sap, ni->salen,
+ nsm = nsm_get_handle(ni->net, ni->sap, ni->salen,
ni->hostname, ni->hostname_len);
if (unlikely(nsm == NULL)) {
dprintk("lockd: %s failed; no nsm handle\n",
@@ -534,17 +534,18 @@ static struct nlm_host *next_host_state(struct hlist_head *cache,
/**
* nlm_host_rebooted - Release all resources held by rebooted host
+ * @net: network namespace
* @info: pointer to decoded results of NLM_SM_NOTIFY call
*
* We were notified that the specified host has rebooted. Release
* all resources held by that peer.
*/
-void nlm_host_rebooted(const struct nlm_reboot *info)
+void nlm_host_rebooted(const struct net *net, const struct nlm_reboot *info)
{
struct nsm_handle *nsm;
struct nlm_host *host;
- nsm = nsm_reboot_lookup(info);
+ nsm = nsm_reboot_lookup(net, info);
if (unlikely(nsm == NULL))
return;
diff --git a/fs/lockd/mon.c b/fs/lockd/mon.c
index 47a32b6..6c05cd1 100644
--- a/fs/lockd/mon.c
+++ b/fs/lockd/mon.c
@@ -51,7 +51,6 @@ struct nsm_res {
};
static const struct rpc_program nsm_program;
-static LIST_HEAD(nsm_handles);
static DEFINE_SPINLOCK(nsm_lock);
/*
@@ -264,33 +263,35 @@ void nsm_unmonitor(const struct nlm_host *host)
}
}
-static struct nsm_handle *nsm_lookup_hostname(const char *hostname,
- const size_t len)
+static struct nsm_handle *nsm_lookup_hostname(const struct list_head *nsm_handles,
+ const char *hostname, const size_t len)
{
struct nsm_handle *nsm;
- list_for_each_entry(nsm, &nsm_handles, sm_link)
+ list_for_each_entry(nsm, nsm_handles, sm_link)
if (strlen(nsm->sm_name) == len &&
memcmp(nsm->sm_name, hostname, len) == 0)
return nsm;
return NULL;
}
-static struct nsm_handle *nsm_lookup_addr(const struct sockaddr *sap)
+static struct nsm_handle *nsm_lookup_addr(const struct list_head *nsm_handles,
+ const struct sockaddr *sap)
{
struct nsm_handle *nsm;
- list_for_each_entry(nsm, &nsm_handles, sm_link)
+ list_for_each_entry(nsm, nsm_handles, sm_link)
if (rpc_cmp_addr(nsm_addr(nsm), sap))
return nsm;
return NULL;
}
-static struct nsm_handle *nsm_lookup_priv(const struct nsm_private *priv)
+static struct nsm_handle *nsm_lookup_priv(const struct list_head *nsm_handles,
+ const struct nsm_private *priv)
{
struct nsm_handle *nsm;
- list_for_each_entry(nsm, &nsm_handles, sm_link)
+ list_for_each_entry(nsm, nsm_handles, sm_link)
if (memcmp(nsm->sm_priv.data, priv->data,
sizeof(priv->data)) == 0)
return nsm;
@@ -353,6 +354,7 @@ static struct nsm_handle *nsm_create_handle(const struct sockaddr *sap,
/**
* nsm_get_handle - Find or create a cached nsm_handle
+ * @net: network namespace
* @sap: pointer to socket address of handle to find
* @salen: length of socket address
* @hostname: pointer to C string containing hostname to find
@@ -365,11 +367,13 @@ static struct nsm_handle *nsm_create_handle(const struct sockaddr *sap,
* @hostname cannot be found in the handle cache. Returns NULL if
* an error occurs.
*/
-struct nsm_handle *nsm_get_handle(const struct sockaddr *sap,
+struct nsm_handle *nsm_get_handle(const struct net *net,
+ const struct sockaddr *sap,
const size_t salen, const char *hostname,
const size_t hostname_len)
{
struct nsm_handle *cached, *new = NULL;
+ struct lockd_net *ln = net_generic(net, lockd_net_id);
if (hostname && memchr(hostname, '/', hostname_len) != NULL) {
if (printk_ratelimit()) {
@@ -384,9 +388,10 @@ retry:
spin_lock(&nsm_lock);
if (nsm_use_hostnames && hostname != NULL)
- cached = nsm_lookup_hostname(hostname, hostname_len);
+ cached = nsm_lookup_hostname(&ln->nsm_handles,
+ hostname, hostname_len);
else
- cached = nsm_lookup_addr(sap);
+ cached = nsm_lookup_addr(&ln->nsm_handles, sap);
if (cached != NULL) {
atomic_inc(&cached->sm_count);
@@ -400,7 +405,7 @@ retry:
}
if (new != NULL) {
- list_add(&new->sm_link, &nsm_handles);
+ list_add(&new->sm_link, &ln->nsm_handles);
spin_unlock(&nsm_lock);
dprintk("lockd: created nsm_handle for %s (%s)\n",
new->sm_name, new->sm_addrbuf);
@@ -417,19 +422,22 @@ retry:
/**
* nsm_reboot_lookup - match NLMPROC_SM_NOTIFY arguments to an nsm_handle
+ * @net: network namespace
* @info: pointer to NLMPROC_SM_NOTIFY arguments
*
* Returns a matching nsm_handle if found in the nsm cache. The returned
* nsm_handle's reference count is bumped. Otherwise returns NULL if some
* error occurred.
*/
-struct nsm_handle *nsm_reboot_lookup(const struct nlm_reboot *info)
+struct nsm_handle *nsm_reboot_lookup(const struct net *net,
+ const struct nlm_reboot *info)
{
struct nsm_handle *cached;
+ struct lockd_net *ln = net_generic(net, lockd_net_id);
spin_lock(&nsm_lock);
- cached = nsm_lookup_priv(&info->priv);
+ cached = nsm_lookup_priv(&ln->nsm_handles, &info->priv);
if (unlikely(cached == NULL)) {
spin_unlock(&nsm_lock);
dprintk("lockd: never saw rebooted peer '%.*s' before\n",
diff --git a/fs/lockd/netns.h b/fs/lockd/netns.h
index 097bfa3..89fe011 100644
--- a/fs/lockd/netns.h
+++ b/fs/lockd/netns.h
@@ -15,6 +15,7 @@ struct lockd_net {
spinlock_t nsm_clnt_lock;
unsigned int nsm_users;
struct rpc_clnt *nsm_clnt;
+ struct list_head nsm_handles;
};
extern int lockd_net_id;
diff --git a/fs/lockd/svc.c b/fs/lockd/svc.c
index 55505cb..a9d5fb7 100644
--- a/fs/lockd/svc.c
+++ b/fs/lockd/svc.c
@@ -587,6 +587,7 @@ static int lockd_init_net(struct net *net)
INIT_DELAYED_WORK(&ln->grace_period_end, grace_ender);
INIT_LIST_HEAD(&ln->lockd_manager.list);
spin_lock_init(&ln->nsm_clnt_lock);
+ INIT_LIST_HEAD(&ln->nsm_handles);
return 0;
}
diff --git a/fs/lockd/svc4proc.c b/fs/lockd/svc4proc.c
index b147d1a..09c576f 100644
--- a/fs/lockd/svc4proc.c
+++ b/fs/lockd/svc4proc.c
@@ -421,7 +421,7 @@ nlm4svc_proc_sm_notify(struct svc_rqst *rqstp, struct nlm_reboot *argp,
return rpc_system_err;
}
- nlm_host_rebooted(argp);
+ nlm_host_rebooted(SVC_NET(rqstp), argp);
return rpc_success;
}
diff --git a/fs/lockd/svcproc.c b/fs/lockd/svcproc.c
index 21171f0..fb26b9f 100644
--- a/fs/lockd/svcproc.c
+++ b/fs/lockd/svcproc.c
@@ -464,7 +464,7 @@ nlmsvc_proc_sm_notify(struct svc_rqst *rqstp, struct nlm_reboot *argp,
return rpc_system_err;
}
- nlm_host_rebooted(argp);
+ nlm_host_rebooted(SVC_NET(rqstp), argp);
return rpc_success;
}
diff --git a/include/linux/lockd/lockd.h b/include/linux/lockd/lockd.h
index ff82a32..fd3b65b 100644
--- a/include/linux/lockd/lockd.h
+++ b/include/linux/lockd/lockd.h
@@ -235,7 +235,8 @@ void nlm_rebind_host(struct nlm_host *);
struct nlm_host * nlm_get_host(struct nlm_host *);
void nlm_shutdown_hosts(void);
void nlm_shutdown_hosts_net(struct net *net);
-void nlm_host_rebooted(const struct nlm_reboot *);
+void nlm_host_rebooted(const struct net *net,
+ const struct nlm_reboot *);
/*
* Host monitoring
@@ -243,11 +244,13 @@ void nlm_host_rebooted(const struct nlm_reboot *);
int nsm_monitor(const struct nlm_host *host);
void nsm_unmonitor(const struct nlm_host *host);
-struct nsm_handle *nsm_get_handle(const struct sockaddr *sap,
+struct nsm_handle *nsm_get_handle(const struct net *net,
+ const struct sockaddr *sap,
const size_t salen,
const char *hostname,
const size_t hostname_len);
-struct nsm_handle *nsm_reboot_lookup(const struct nlm_reboot *info);
+struct nsm_handle *nsm_reboot_lookup(const struct net *net,
+ const struct nlm_reboot *info);
void nsm_release(struct nsm_handle *nsm);
/*
--
1.9.1
next prev parent reply other threads:[~2015-12-02 17:51 UTC|newest]
Thread overview: 170+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-02 16:57 [3.19.y-ckt stable] Linux 3.19.8-ckt11 stable review Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 001/164] x86/setup: Extend low identity map to cover whole kernel range Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 002/164] x86/setup: Fix low identity map for >= 2GB " Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 003/164] drm/radeon: add quirk for MSI R7 370 Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 004/164] drm/radeon: add quirk for ASUS " Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 005/164] drm/radeon: fix quirk for MSI R7 370 Armor 2X Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 006/164] irda: precedence bug in irlmp_seq_hb_idx() Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 007/164] tipc: allow non-linear first fragment buffer Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 008/164] qmi_wwan: add Sierra Wireless MC74xx/EM74xx Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 009/164] macvtap: unbreak receiving of gro skb with frag list Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 010/164] RDS-TCP: Recover correctly from pskb_pull()/pksb_trim() failure in rds_tcp_data_recv Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 011/164] stmmac: Correctly report PTP capabilities Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 012/164] ipmr: fix possible race resulting from improper usage of IP_INC_STATS_BH() in preemptible context Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 013/164] qmi_wwan: fix entry for HP lt4112 LTE/HSPA+ Gobi 4G Module Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 014/164] sit: fix sit0 percpu double allocations Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 015/164] sfc: push partner queue for skb->xmit_more Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 016/164] net: avoid NULL deref in inet_ctl_sock_destroy() Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 017/164] ipv6: clean up dev_snmp6 proc entry when we fail to initialize inet6_dev Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 018/164] ipv4: disable BH when changing ip local port range Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 019/164] packet: race condition in packet_bind Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 020/164] net: fix a race in dst_release() Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 021/164] HID: core: Avoid uninitialized buffer access Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 022/164] [media] v4l2-compat-ioctl32: fix alignment for ARM64 Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 023/164] net: mvneta: Fix CPU_MAP registers initialisation Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 024/164] mtd: mtdpart: fix add_mtd_partitions error path Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 025/164] fs/proc, core/debug: Don't expose absolute kernel addresses via wchan Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 026/164] [media] v4l2-ctrls: arrays are also considered compound controls Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 027/164] [media] media: v4l2-ctrls: Fix 64bit support in get_ctrl() Kamal Mostafa
2015-12-02 16:57 ` [PATCH 3.19.y-ckt 028/164] ARM: tegra: paz00: use con_id's to refer GPIO's in gpiod_lookup table Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 029/164] ARM: 8426/1: dma-mapping: add missing range check in dma_mmap() Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 030/164] ARM: 8427/1: dma-mapping: add support for offset parameter " Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 031/164] integrity: prevent loading untrusted certificates on the IMA trusted keyring Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 032/164] usb: dwc3: pci: Add the Synopsys HAPS AXI Product ID Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 033/164] usb: dwc3: pci: Add the PCI Product ID for Synopsys USB 3.1 Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 034/164] usb: dwc3: Support Synopsys USB 3.1 IP Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 035/164] usb: dwc3: Add dis_enblslpm_quirk Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 036/164] spi: ti-qspi: Fix data corruption seen on r/w stress test Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 037/164] nfsd: serialize state seqid morphing operations Kamal Mostafa
2015-12-02 16:58 ` Kamal Mostafa [this message]
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 039/164] Btrfs: fix file corruption and data loss after cloning inline extents Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 040/164] ARM: common: edma: Fix channel parameter for irq callbacks Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 041/164] iommu/vt-d: Fix ATSR handling for Root-Complex integrated endpoints Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 042/164] Btrfs: fix truncation of compressed and inlined extents Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 043/164] jbd2: fix checkpoint list cleanup Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 044/164] ext4: fix potential use after free in __ext4_journal_stop Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 045/164] [PATCH] fix calculation of meta_bg descriptor backups Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 046/164] ext4, jbd2: ensure entering into panic after recording an error in superblock Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 047/164] vTPM: fix memory allocation flag for rtce buffer at kernel boot Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 048/164] spi: dw: explicitly free IRQ handler in dw_spi_remove_host() Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 049/164] [media] media: vb2 dma-contig: Fully cache synchronise buffers in prepare and finish Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 050/164] [media] media: vb2 dma-sg: " Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 051/164] [media] media/v4l2-ctrls: fix setting autocluster to manual with VIDIOC_S_CTRL Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 052/164] Bluetooth: hidp: fix device disconnect on idle timeout Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 053/164] Bluetooth: ath3k: Add new AR3012 0930:021c id Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 054/164] Bluetooth: ath3k: Add support of AR3012 0cf3:817b device Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 055/164] Bluetooth: Fix removing connection parameters when unpairing Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 056/164] spi: atmel: Fix DMA-setup for transfers with more than 8 bits per word Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 057/164] USB: qcserial: add Sierra Wireless MC74xx/EM74xx Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 058/164] staging: rtl8712: Add device ID for Sitecom WLA2100 Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 059/164] ACPI: Use correct IRQ when uninstalling ACPI interrupt handler Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 060/164] ACPI: Using correct irq when waiting for events Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 061/164] ACPI / PM: Fix incorrect wakeup IRQ setting during suspend-to-idle Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 062/164] ALSA: hda/realtek - Dell XPS one ALC3260 speaker no sound after resume back Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 063/164] ALSA: hda - Disable 64bit address for Creative HDA controllers Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 064/164] MAINTAINERS: Add public mailing list for ARC Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 065/164] megaraid_sas: Expose TAPE drives unconditionally Kamal Mostafa
2015-12-02 17:09 ` Sumit Saxena
2015-12-02 17:39 ` Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 066/164] megaraid_sas: Do not use PAGE_SIZE for max_sectors Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 067/164] KVM: s390: SCA must not cross page boundaries Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 068/164] arm64: Fix compat register mappings Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 069/164] can: Use correct type in sizeof() in nla_put() Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 070/164] mtd: blkdevs: fix potential deadlock + lockdep warnings Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 071/164] Revert "dm mpath: fix stalls when handling invalid ioctls" Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 072/164] drm/i915: add quirk to enable backlight on Dell Chromebook 11 (2015) Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 073/164] crypto: algif_hash - Only export and import on sockets with data Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 074/164] xtensa: fixes for configs without loop option Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 075/164] PCI: spear: Fix dw_pcie_cfg_read/write() usage Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 076/164] megaraid_sas : SMAP restriction--do not access user memory from IOCTL code Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 077/164] mac80211: fix divide by zero when NOA update Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 078/164] nl80211: Fix potential memory leak from parse_acl_data Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 079/164] mac80211: allow null chandef in tracing Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 080/164] xtensa: fix secondary core boot in SMP Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 081/164] recordmcount: Fix endianness handling bug for nop_mcount Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 082/164] recordmcount: arm64: Replace the ignored mcount call into nop Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 083/164] KVM: VMX: fix SMEP and SMAP without EPT Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 084/164] thermal: exynos: Fix unbalanced regulator disable on probe failure Kamal Mostafa
2015-12-09 13:24 ` Krzysztof Kozlowski
2015-12-10 0:49 ` Krzysztof Kozlowski
2015-12-10 16:26 ` Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 085/164] ALSA: hda - Apply pin fixup for HP ProBook 6550b Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 086/164] ALSA: hda - Add Intel Lewisburg device IDs Audio Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 087/164] firewire: ohci: fix JMicron JMB38x IT context discovery Kamal Mostafa
2015-12-02 16:58 ` [PATCH 3.19.y-ckt 088/164] scsi: restart list search after unlock in scsi_remove_target Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 089/164] mm: slab: only move management objects off-slab for sizes larger than KMALLOC_MIN_SIZE Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 090/164] memcg: fix thresholds for 32b architectures Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 091/164] arm64: bpf: fix div-by-zero case Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 092/164] arm64: bpf: fix mod-by-zero case Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 093/164] Input: elantech - add Fujitsu Lifebook U745 to force crc_enabled Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 094/164] proc: actually make proc_fd_permission() thread-friendly Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 095/164] printk: prevent userland from spoofing kernel messages Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 096/164] fs, seqfile: always allow oom killer Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 097/164] x86/cpu: Call verify_cpu() after having entered long mode too Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 098/164] parisc: Fixes and cleanups in kernel uapi header files Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 099/164] Btrfs: fix race leading to incorrect item deletion when dropping extents Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 100/164] Btrfs: fix race leading to BUG_ON when running delalloc for nodatacow Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 101/164] ALSA: usb: Add native DSD support for Aune X1S Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 102/164] perf: Fix inherited events vs. tracepoint filters Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 103/164] scsi_sysfs: Fix queue_ramp_up_period return code Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 104/164] Btrfs: fix race when listing an inode's xattrs Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 105/164] ideapad-laptop: Add Lenovo Yoga 900 to no_hw_rfkill dmi list Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 106/164] storvsc: Don't set the SRB_FLAGS_QUEUE_ACTION_ENABLE flag Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 107/164] KVM: x86: work around infinite loop in microcode when #AC is delivered Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 108/164] KVM: svm: unconditionally intercept #DB Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 109/164] drivers: of: of_reserved_mem: fixup the alignment with CMA setup Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 110/164] drm/ast: Initialized data needed to map fbdev memory Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 111/164] FS-Cache: Increase reference of parent after registering, netfs success Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 112/164] FS-Cache: Don't override netfs's primary_index if registering failed Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 113/164] FS-Cache: Handle a write to the page immediately beyond the EOF marker Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 114/164] binfmt_elf: Don't clobber passed executable's file header Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 115/164] fs/pipe.c: return error code rather than 0 in pipe_write() Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 116/164] ALSA: hda/hdmi - apply Skylake fix-ups to Broxton display codec Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 117/164] crypto: crc32c-pclmul - use .rodata instead of .rotata Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 118/164] wm831x_power: Use IRQF_ONESHOT to request threaded IRQs Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 119/164] mwifiex: fix mwifiex_rdeeprom_read() Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 120/164] dmaengine: dw: convert to __ffs() Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 121/164] tcp: call sk_mark_napi_id() on the child, not the listener Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 122/164] vivid: Fix iteration in driver removal path Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 123/164] usb: ehci-orion: fix probe for !GENERIC_PHY Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 124/164] devres: fix a for loop bounds check Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 125/164] netfilter: remove dead code Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 126/164] ipv4: Fix ip_queue_xmit to pass sk into ip_local_out_sk Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 127/164] i2c: img-scb: enable fencing for all versions of the ip Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 128/164] i2c: img-scb: do dummy writes before fifo access Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 129/164] i2c: img-scb: use DIV_ROUND_UP to round divisor values Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 130/164] i2c: img-scb: fix LOW and HIGH period values for the SCL clock Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 131/164] i2c: img-scb: Clear line and interrupt status before starting a transfer Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 132/164] i2c: img-scb: verify support for requested bit rate Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 133/164] hsi: fix double kfree Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 134/164] hsi: omap_ssi_port: Prevent warning if cawake_gpio is not defined Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 135/164] regulator: arizona-ldo1: Fix handling of GPIO 0 Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 136/164] ARM: pxa: remove incorrect __init annotation on pxa27x_set_pwrmode Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 137/164] ALSA: fireworks/bebob/oxfw/dice: enable to make as built-in Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 138/164] drm: Fix return value of drm_framebuffer_init() Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 139/164] ALSA: dice: correct variable types for __be32 data Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 140/164] ALSA: dice: assign converted data to the same type of variable Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 141/164] ALSA: fireworks: use u32 type for be32_to_cpup() macro Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 142/164] ALSA: bebob: use correct type for __be32 data Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 143/164] sunrpc: avoid warning in gss_key_timeout Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 144/164] clk: versatile-icst: fix memory leak Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 145/164] MIPS: atomic: Fix comment describing atomic64_add_unless's return value Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 146/164] mfd: twl6040: Fix deferred probe handling for clk32k Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 147/164] DT: mmc: sh_mmcif: fix "compatible" property text Kamal Mostafa
2015-12-02 16:59 ` [PATCH 3.19.y-ckt 148/164] netfilter: nf_nat_redirect: add missing NULL pointer check Kamal Mostafa
2015-12-02 17:00 ` [PATCH 3.19.y-ckt 149/164] of/fdt: fix error checking for earlycon address Kamal Mostafa
2015-12-02 17:00 ` [PATCH 3.19.y-ckt 150/164] netfilter: nfnetlink: don't probe module if it exists Kamal Mostafa
2015-12-02 17:00 ` [PATCH 3.19.y-ckt 151/164] sparc/PCI: Add mem64 resource parsing for root bus Kamal Mostafa
2015-12-02 17:00 ` [PATCH 3.19.y-ckt 152/164] xprtrdma: Re-arm after missed events Kamal Mostafa
2015-12-02 17:00 ` [PATCH 3.19.y-ckt 153/164] ceph: fix message length computation Kamal Mostafa
2015-12-02 17:00 ` [PATCH 3.19.y-ckt 154/164] tracepoints: Fix documentation of RCU lockdep checks Kamal Mostafa
2015-12-02 17:00 ` [PATCH 3.19.y-ckt 155/164] ipv6: fix tunnel error handling Kamal Mostafa
2015-12-02 17:00 ` [PATCH 3.19.y-ckt 156/164] perf trace: Fix documentation for -i Kamal Mostafa
2015-12-02 17:00 ` [PATCH 3.19.y-ckt 157/164] bonding: fix panic on non-ARPHRD_ETHER enslave failure Kamal Mostafa
2015-12-02 17:00 ` [PATCH 3.19.y-ckt 158/164] rtc: ds1307: Fix alarm programming for mcp794xx Kamal Mostafa
2015-12-02 17:00 ` [PATCH 3.19.y-ckt 159/164] mac80211: fix driver RSSI event calculations Kamal Mostafa
2015-12-02 17:00 ` [PATCH 3.19.y-ckt 160/164] packet: fix match_fanout_group() Kamal Mostafa
2015-12-02 17:00 ` [PATCH 3.19.y-ckt 161/164] tcp: apply Kern's check on RTTs used for congestion control Kamal Mostafa
2015-12-02 17:00 ` [PATCH 3.19.y-ckt 162/164] net: fix percpu memory leaks Kamal Mostafa
2015-12-02 17:00 ` [PATCH 3.19.y-ckt 163/164] TPM: Avoid reference to potentially freed memory Kamal Mostafa
2015-12-02 17:00 ` [PATCH 3.19.y-ckt 164/164] [3.19-stable only] fib_rules: Fix dump_rules() not to exit early 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=1449075615-20754-39-git-send-email-kamal@canonical.com \
--to=kamal@canonical.com \
--cc=aryabinin@virtuozzo.com \
--cc=bfields@redhat.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
all inboxes | Powered by JetHome®