* [PATCH 1/7] staging: sw_sync: Add stubs for kernels without CONFIG_SW_SYNC
2014-02-05 0:08 [PATCHv2 0/7] Staging fixes from the Android tree (for 3.14) John Stultz
@ 2014-02-05 0:08 ` John Stultz
2014-02-05 0:08 ` [PATCH 2/7] staging: sync: Signal pt before sync_timeline object gets destroyed John Stultz
` (6 subsequent siblings)
7 siblings, 0 replies; 11+ messages in thread
From: John Stultz @ 2014-02-05 0:08 UTC (permalink / raw)
To: LKML; +Cc: Greg Hackmann, Greg KH, Colin Cross, Android Kernel Team,
John Stultz
From: Greg Hackmann <ghackmann@google.com>
Add stubs for kernels without CONFIG_SW_SYNC
Cc: Greg KH <gregkh@linuxfoundation.org>
Cc: Colin Cross <ccross@android.com>
Cc: Android Kernel Team <kernel-team@android.com>
Signed-off-by: Greg Hackmann <ghackmann@google.com>
[jstultz: resolved minor conflict, tweaked commit message]
Signed-off-by: John Stultz <john.stultz@linaro.org>
---
drivers/staging/android/sw_sync.h | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/drivers/staging/android/sw_sync.h b/drivers/staging/android/sw_sync.h
index 585040b..5aaf71d 100644
--- a/drivers/staging/android/sw_sync.h
+++ b/drivers/staging/android/sw_sync.h
@@ -35,10 +35,27 @@ struct sw_sync_pt {
u32 value;
};
+#if IS_ENABLED(CONFIG_SW_SYNC)
struct sw_sync_timeline *sw_sync_timeline_create(const char *name);
void sw_sync_timeline_inc(struct sw_sync_timeline *obj, u32 inc);
struct sync_pt *sw_sync_pt_create(struct sw_sync_timeline *obj, u32 value);
+#else
+static inline struct sw_sync_timeline *sw_sync_timeline_create(const char *name)
+{
+ return NULL;
+}
+
+static inline void sw_sync_timeline_inc(struct sw_sync_timeline *obj, u32 inc)
+{
+}
+
+static inline struct sync_pt *sw_sync_pt_create(struct sw_sync_timeline *obj,
+ u32 value)
+{
+ return NULL;
+}
+#endif /* IS_ENABLED(CONFIG_SW_SYNC) */
#endif /* __KERNEL __ */
--
1.8.3.2
^ permalink raw reply related [flat|nested] 11+ messages in thread* [PATCH 2/7] staging: sync: Signal pt before sync_timeline object gets destroyed
2014-02-05 0:08 [PATCHv2 0/7] Staging fixes from the Android tree (for 3.14) John Stultz
2014-02-05 0:08 ` [PATCH 1/7] staging: sw_sync: Add stubs for kernels without CONFIG_SW_SYNC John Stultz
@ 2014-02-05 0:08 ` John Stultz
2014-02-05 0:08 ` [PATCH 3/7] staging: sync: Fix a race condition between release_obj and print_obj John Stultz
` (5 subsequent siblings)
7 siblings, 0 replies; 11+ messages in thread
From: John Stultz @ 2014-02-05 0:08 UTC (permalink / raw)
To: LKML; +Cc: Prakash Kamliya, Colin Cross, Android Kernel Team, John Stultz
From: Prakash Kamliya <pkamliya@codeaurora.org>
There is a race condition
Assume we have *one* sync_fence object, with *one* sync_pt
which belongs to *one* sync_timeline, given this condition,
sync_timeline->kref will have two counts, one for sync_timeline
(implicit) and another for sync_pt.
Assume following is the situation on CPU
Theead-1 : (Thread which calls sync_timeline_destroy())
-> (some function calls)
-> sync_timeline_destory()
-> sync_timeline_signal() (CPU is inside this
function after putting reference to sync_timeline)
At this time Thread-2 comes and does following
Thread-2 : (fclose on fence fd)
> sync_fence_release() -> because of fclose() on fence object
-> sync_fence_free()
-> sync_pt_free()
-> kref_put(&pt->parent->kref, sync_timeline_free);
-> sync_timeline_free() (CPU is inside this because
this time kref will be zero after _put)
Thread-2 will free sync_timeline object before Thread-1
has finished its work inside sync_timeline_signal.
With this change we signals all sync_pt before putting
reference to sync_timeline object.
c: Greg KH <gregkh@linuxfoundation.org>
Cc: Colin Cross <ccross@android.com>
Cc: Android Kernel Team <kernel-team@android.com>
Signed-off-by: Prakash Kamliya <pkamliya@codeaurora.org>
[jstultz: minor commit subject tweak]
Signed-off-by: John Stultz <john.stultz@linaro.org>
---
drivers/staging/android/sync.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/staging/android/sync.c b/drivers/staging/android/sync.c
index 38e5d3b..fec2d1c 100644
--- a/drivers/staging/android/sync.c
+++ b/drivers/staging/android/sync.c
@@ -92,14 +92,14 @@ static void sync_timeline_free(struct kref *kref)
void sync_timeline_destroy(struct sync_timeline *obj)
{
obj->destroyed = true;
+ smp_wmb();
/*
- * If this is not the last reference, signal any children
- * that their parent is going away.
+ * signal any children that their parent is going away.
*/
+ sync_timeline_signal(obj);
- if (!kref_put(&obj->kref, sync_timeline_free))
- sync_timeline_signal(obj);
+ kref_put(&obj->kref, sync_timeline_free);
}
EXPORT_SYMBOL(sync_timeline_destroy);
--
1.8.3.2
^ permalink raw reply related [flat|nested] 11+ messages in thread* [PATCH 3/7] staging: sync: Fix a race condition between release_obj and print_obj
2014-02-05 0:08 [PATCHv2 0/7] Staging fixes from the Android tree (for 3.14) John Stultz
2014-02-05 0:08 ` [PATCH 1/7] staging: sw_sync: Add stubs for kernels without CONFIG_SW_SYNC John Stultz
2014-02-05 0:08 ` [PATCH 2/7] staging: sync: Signal pt before sync_timeline object gets destroyed John Stultz
@ 2014-02-05 0:08 ` John Stultz
2014-02-05 0:08 ` [PATCH 4/7] staging: ashmem: Avoid deadlock between read and mmap calls John Stultz
` (4 subsequent siblings)
7 siblings, 0 replies; 11+ messages in thread
From: John Stultz @ 2014-02-05 0:08 UTC (permalink / raw)
To: LKML
Cc: Alistair Strachan, Greg KH, Colin Cross, Android Kernel Team,
John Stultz
From: Alistair Strachan <alistair.strachan@imgtec.com>
Before this change, a timeline would only be removed from the timeline
list *after* the sync driver had its release_obj() called. However, the
driver's release_obj() may free resources needed by print_obj().
Although the timeline list is locked when print_obj() is called, it is
not locked when release_obj() is called. If one CPU was in print_obj()
when another was in release_obj(), the print_obj() may make unsafe
accesses.
It is not actually necessary to hold the timeline list lock when calling
release_obj() if the call is made after the timeline is unlinked from
the list, since there is no possibility another thread could be in --
or enter -- print_obj() for that timeline.
This change moves the release_obj() call to after the timeline is
unlinked, preventing the above race from occurring.
Cc: Greg KH <gregkh@linuxfoundation.org>
Cc: Colin Cross <ccross@android.com>
Cc: Android Kernel Team <kernel-team@android.com>
Signed-off-by: Alistair Strachan <alistair.strachan@imgtec.com>
[jstultz: minor commit subject tweak]
Signed-off-by: John Stultz <john.stultz@linaro.org>
---
drivers/staging/android/sync.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/staging/android/sync.c b/drivers/staging/android/sync.c
index fec2d1c..3d05f662 100644
--- a/drivers/staging/android/sync.c
+++ b/drivers/staging/android/sync.c
@@ -79,13 +79,13 @@ static void sync_timeline_free(struct kref *kref)
container_of(kref, struct sync_timeline, kref);
unsigned long flags;
- if (obj->ops->release_obj)
- obj->ops->release_obj(obj);
-
spin_lock_irqsave(&sync_timeline_list_lock, flags);
list_del(&obj->sync_timeline_list);
spin_unlock_irqrestore(&sync_timeline_list_lock, flags);
+ if (obj->ops->release_obj)
+ obj->ops->release_obj(obj);
+
kfree(obj);
}
--
1.8.3.2
^ permalink raw reply related [flat|nested] 11+ messages in thread* [PATCH 4/7] staging: ashmem: Avoid deadlock between read and mmap calls
2014-02-05 0:08 [PATCHv2 0/7] Staging fixes from the Android tree (for 3.14) John Stultz
` (2 preceding siblings ...)
2014-02-05 0:08 ` [PATCH 3/7] staging: sync: Fix a race condition between release_obj and print_obj John Stultz
@ 2014-02-05 0:08 ` John Stultz
2014-02-05 0:08 ` [PATCH 5/7] staging: ion: Fix overflow and list bugs in system heap John Stultz
` (3 subsequent siblings)
7 siblings, 0 replies; 11+ messages in thread
From: John Stultz @ 2014-02-05 0:08 UTC (permalink / raw)
To: LKML; +Cc: Todd Poynor, Greg KH, Colin Cross, Android Kernel Team,
John Stultz
From: Todd Poynor <toddpoynor@google.com>
Avoid holding ashmem_mutex across code that can page fault. Page faults
grab the mmap_sem for the process, which are also held by mmap calls
prior to calling ashmem_mmap, which locks ashmem_mutex. The reversed
order of locking between the two can deadlock.
The calls that can page fault are read() and the ASHMEM_SET_NAME and
ASHMEM_GET_NAME ioctls. Move the code that accesses userspace pages
outside the ashmem_mutex.
Cc: Greg KH <gregkh@linuxfoundation.org>
Cc: Colin Cross <ccross@android.com>
Cc: Android Kernel Team <kernel-team@android.com>
Signed-off-by: Todd Poynor <toddpoynor@google.com>
[jstultz: minor commit message tweaks]
Signed-off-by: John Stultz <john.stultz@linaro.org>
---
drivers/staging/android/ashmem.c | 45 +++++++++++++++++++++++-----------------
1 file changed, 26 insertions(+), 19 deletions(-)
diff --git a/drivers/staging/android/ashmem.c b/drivers/staging/android/ashmem.c
index 23948f1..713a972 100644
--- a/drivers/staging/android/ashmem.c
+++ b/drivers/staging/android/ashmem.c
@@ -295,21 +295,29 @@ static ssize_t ashmem_read(struct file *file, char __user *buf,
/* If size is not set, or set to 0, always return EOF. */
if (asma->size == 0)
- goto out;
+ goto out_unlock;
if (!asma->file) {
ret = -EBADF;
- goto out;
+ goto out_unlock;
}
- ret = asma->file->f_op->read(asma->file, buf, len, pos);
- if (ret < 0)
- goto out;
+ mutex_unlock(&ashmem_mutex);
- /** Update backing file pos, since f_ops->read() doesn't */
- asma->file->f_pos = *pos;
+ /*
+ * asma and asma->file are used outside the lock here. We assume
+ * once asma->file is set it will never be changed, and will not
+ * be destroyed until all references to the file are dropped and
+ * ashmem_release is called.
+ */
+ ret = asma->file->f_op->read(asma->file, buf, len, pos);
+ if (ret >= 0) {
+ /** Update backing file pos, since f_ops->read() doesn't */
+ asma->file->f_pos = *pos;
+ }
+ return ret;
-out:
+out_unlock:
mutex_unlock(&ashmem_mutex);
return ret;
}
@@ -498,6 +506,7 @@ out:
static int set_name(struct ashmem_area *asma, void __user *name)
{
+ int len;
int ret = 0;
char local_name[ASHMEM_NAME_LEN];
@@ -510,21 +519,19 @@ static int set_name(struct ashmem_area *asma, void __user *name)
* variable that does not need protection and later copy the local
* variable to the structure member with lock held.
*/
- if (copy_from_user(local_name, name, ASHMEM_NAME_LEN))
- return -EFAULT;
-
+ len = strncpy_from_user(local_name, name, ASHMEM_NAME_LEN);
+ if (len < 0)
+ return len;
+ if (len == ASHMEM_NAME_LEN)
+ local_name[ASHMEM_NAME_LEN - 1] = '\0';
mutex_lock(&ashmem_mutex);
/* cannot change an existing mapping's name */
- if (unlikely(asma->file)) {
+ if (unlikely(asma->file))
ret = -EINVAL;
- goto out;
- }
- memcpy(asma->name + ASHMEM_NAME_PREFIX_LEN,
- local_name, ASHMEM_NAME_LEN);
- asma->name[ASHMEM_FULL_NAME_LEN-1] = '\0';
-out:
- mutex_unlock(&ashmem_mutex);
+ else
+ strcpy(asma->name + ASHMEM_NAME_PREFIX_LEN, local_name);
+ mutex_unlock(&ashmem_mutex);
return ret;
}
--
1.8.3.2
^ permalink raw reply related [flat|nested] 11+ messages in thread* [PATCH 5/7] staging: ion: Fix overflow and list bugs in system heap
2014-02-05 0:08 [PATCHv2 0/7] Staging fixes from the Android tree (for 3.14) John Stultz
` (3 preceding siblings ...)
2014-02-05 0:08 ` [PATCH 4/7] staging: ashmem: Avoid deadlock between read and mmap calls John Stultz
@ 2014-02-05 0:08 ` John Stultz
2014-02-05 0:08 ` [PATCH 6/7] staging: ion: Fix ION_IOC_FREE compat ioctl John Stultz
` (2 subsequent siblings)
7 siblings, 0 replies; 11+ messages in thread
From: John Stultz @ 2014-02-05 0:08 UTC (permalink / raw)
To: LKML; +Cc: Colin Cross, Greg KH, Android Kernel Team, John Stultz
From: Colin Cross <ccross@android.com>
Fix a few bugs in ion_system_heap:
Initialize the list node in the info block.
Don't store size_remaining in a signed long, allocating >2GB
could overflow, resulting in a call to sg_alloc_table with
nents=0 which panics. alloc_largest_available will never
return a block larger than size_remanining, so it can never
go negative.
Limit a single allocation to half of all memory. Prevents a
large allocation from taking down the whole system.
Cc: Greg KH <gregkh@linuxfoundation.org>
Cc: Colin Cross <ccross@android.com>
Cc: Android Kernel Team <kernel-team@android.com>
Signed-off-by: Colin Cross <ccross@android.com>
[jstultz: Minor commit subject tweak]
Signed-off-by: John Stultz <john.stultz@linaro.org>
---
drivers/staging/android/ion/ion_system_heap.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/staging/android/ion/ion_system_heap.c b/drivers/staging/android/ion/ion_system_heap.c
index 7f07291..9849f39 100644
--- a/drivers/staging/android/ion/ion_system_heap.c
+++ b/drivers/staging/android/ion/ion_system_heap.c
@@ -124,6 +124,7 @@ static struct page_info *alloc_largest_available(struct ion_system_heap *heap,
info->page = page;
info->order = orders[i];
+ INIT_LIST_HEAD(&info->list);
return info;
}
kfree(info);
@@ -145,12 +146,15 @@ static int ion_system_heap_allocate(struct ion_heap *heap,
struct list_head pages;
struct page_info *info, *tmp_info;
int i = 0;
- long size_remaining = PAGE_ALIGN(size);
+ unsigned long size_remaining = PAGE_ALIGN(size);
unsigned int max_order = orders[0];
if (align > PAGE_SIZE)
return -EINVAL;
+ if (size / PAGE_SIZE > totalram_pages / 2)
+ return -ENOMEM;
+
INIT_LIST_HEAD(&pages);
while (size_remaining > 0) {
info = alloc_largest_available(sys_heap, buffer, size_remaining,
--
1.8.3.2
^ permalink raw reply related [flat|nested] 11+ messages in thread* [PATCH 6/7] staging: ion: Fix ION_IOC_FREE compat ioctl
2014-02-05 0:08 [PATCHv2 0/7] Staging fixes from the Android tree (for 3.14) John Stultz
` (4 preceding siblings ...)
2014-02-05 0:08 ` [PATCH 5/7] staging: ion: Fix overflow and list bugs in system heap John Stultz
@ 2014-02-05 0:08 ` John Stultz
2014-02-05 0:08 ` [PATCH 7/7] staging: ion: Fix build warning John Stultz
2014-02-07 17:03 ` [PATCHv2 0/7] Staging fixes from the Android tree (for 3.14) Greg KH
7 siblings, 0 replies; 11+ messages in thread
From: John Stultz @ 2014-02-05 0:08 UTC (permalink / raw)
To: LKML; +Cc: Laura Abbott, Greg KH, Colin Cross, Android Kernel Team,
John Stultz
From: Laura Abbott <lauraa@codeaurora.org>
The compat ioctl for ION_IOC_FREE currently passes allocation data
instead of the free data. Correct this.
Cc: Greg KH <gregkh@linuxfoundation.org>
Cc: Colin Cross <ccross@android.com>
Cc: Android Kernel Team <kernel-team@android.com>
Signed-off-by: Laura Abbott <lauraa@codeaurora.org>
[jstultz: Folded in a small build fix]
Signed-off-by: John Stultz <john.stultz@linaro.org>
---
drivers/staging/android/ion/compat_ion.c | 26 ++++++++++++++++++++++----
1 file changed, 22 insertions(+), 4 deletions(-)
diff --git a/drivers/staging/android/ion/compat_ion.c b/drivers/staging/android/ion/compat_ion.c
index af6cd37..ee3a738 100644
--- a/drivers/staging/android/ion/compat_ion.c
+++ b/drivers/staging/android/ion/compat_ion.c
@@ -35,9 +35,14 @@ struct compat_ion_custom_data {
compat_ulong_t arg;
};
+struct compat_ion_handle_data {
+ compat_int_t handle;
+};
+
#define COMPAT_ION_IOC_ALLOC _IOWR(ION_IOC_MAGIC, 0, \
struct compat_ion_allocation_data)
-#define COMPAT_ION_IOC_FREE _IOWR(ION_IOC_MAGIC, 1, struct ion_handle_data)
+#define COMPAT_ION_IOC_FREE _IOWR(ION_IOC_MAGIC, 1, \
+ struct compat_ion_handle_data)
#define COMPAT_ION_IOC_CUSTOM _IOWR(ION_IOC_MAGIC, 6, \
struct compat_ion_custom_data)
@@ -64,6 +69,19 @@ static int compat_get_ion_allocation_data(
return err;
}
+static int compat_get_ion_handle_data(
+ struct compat_ion_handle_data __user *data32,
+ struct ion_handle_data __user *data)
+{
+ compat_int_t i;
+ int err;
+
+ err = get_user(i, &data32->handle);
+ err |= put_user(i, &data->handle);
+
+ return err;
+}
+
static int compat_put_ion_allocation_data(
struct compat_ion_allocation_data __user *data32,
struct ion_allocation_data __user *data)
@@ -132,8 +150,8 @@ long compat_ion_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
}
case COMPAT_ION_IOC_FREE:
{
- struct compat_ion_allocation_data __user *data32;
- struct ion_allocation_data __user *data;
+ struct compat_ion_handle_data __user *data32;
+ struct ion_handle_data __user *data;
int err;
data32 = compat_ptr(arg);
@@ -141,7 +159,7 @@ long compat_ion_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
if (data == NULL)
return -EFAULT;
- err = compat_get_ion_allocation_data(data32, data);
+ err = compat_get_ion_handle_data(data32, data);
if (err)
return err;
--
1.8.3.2
^ permalink raw reply related [flat|nested] 11+ messages in thread* [PATCH 7/7] staging: ion: Fix build warning
2014-02-05 0:08 [PATCHv2 0/7] Staging fixes from the Android tree (for 3.14) John Stultz
` (5 preceding siblings ...)
2014-02-05 0:08 ` [PATCH 6/7] staging: ion: Fix ION_IOC_FREE compat ioctl John Stultz
@ 2014-02-05 0:08 ` John Stultz
2014-02-07 17:03 ` [PATCHv2 0/7] Staging fixes from the Android tree (for 3.14) Greg KH
7 siblings, 0 replies; 11+ messages in thread
From: John Stultz @ 2014-02-05 0:08 UTC (permalink / raw)
To: LKML; +Cc: John Stultz, Greg KH, Colin Cross, Android Kernel Team
Add #include <linux/device.h> to fix the following warning seen
with gcc 4.7.3:
In file included from drivers/staging/android/ion/ion_heap.c:26:0:
drivers/staging/android/ion/ion_priv.h:358:21: warning: ‘struct device’ declared inside parameter list [enabled by default]
drivers/staging/android/ion/ion_priv.h:358:21: warning: its scope is only this definition or declaration, which is probably not what you want [enabled by default]
Cc: Greg KH <gregkh@linuxfoundation.org>
Cc: Colin Cross <ccross@android.com>
Cc: Android Kernel Team <kernel-team@android.com>
Signed-off-by: John Stultz <john.stultz@linaro.org>
---
drivers/staging/android/ion/ion_priv.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/staging/android/ion/ion_priv.h b/drivers/staging/android/ion/ion_priv.h
index d986739..fc2e4fc 100644
--- a/drivers/staging/android/ion/ion_priv.h
+++ b/drivers/staging/android/ion/ion_priv.h
@@ -17,6 +17,7 @@
#ifndef _ION_PRIV_H
#define _ION_PRIV_H
+#include <linux/device.h>
#include <linux/dma-direction.h>
#include <linux/kref.h>
#include <linux/mm_types.h>
--
1.8.3.2
^ permalink raw reply related [flat|nested] 11+ messages in thread* Re: [PATCHv2 0/7] Staging fixes from the Android tree (for 3.14)
2014-02-05 0:08 [PATCHv2 0/7] Staging fixes from the Android tree (for 3.14) John Stultz
` (6 preceding siblings ...)
2014-02-05 0:08 ` [PATCH 7/7] staging: ion: Fix build warning John Stultz
@ 2014-02-07 17:03 ` Greg KH
2014-02-07 17:16 ` John Stultz
7 siblings, 1 reply; 11+ messages in thread
From: Greg KH @ 2014-02-07 17:03 UTC (permalink / raw)
To: John Stultz
Cc: LKML, Colin Cross, Greg Hackmann, Prakash Kamliya,
Alistair Strachan, Todd Poynor, Laura Abbott, Android Kernel Team
On Tue, Feb 04, 2014 at 04:08:33PM -0800, John Stultz wrote:
> I recently went through the AOSP common.git android/3.10 tree to
> try to pull fixes that haven't been submitted upstream. I've
> cherry picked those patches and submitted them for 3.15, but
> Greg requested the bugfixes to be submitted by themselves for
> 3.14.
>
> So here are the subset of changes that are bugfixes. There is
> one additional patch here which I missed in my last submission,
> but its a build warning fix, so I think its appropriate.
>
> If and when these are merged, I'll resubmit the rest of the
> queue (which has grown further as of today) for 3.15.
>
> Anyway, please let me know if there's any feedback or suggestions.
I seem to be missing patch 2/7 here. Any idea where it went?
I've applied the other 6 to my tree now, thanks.
greg k-h
^ permalink raw reply [flat|nested] 11+ messages in thread* Re: [PATCHv2 0/7] Staging fixes from the Android tree (for 3.14)
2014-02-07 17:03 ` [PATCHv2 0/7] Staging fixes from the Android tree (for 3.14) Greg KH
@ 2014-02-07 17:16 ` John Stultz
2014-02-07 17:35 ` Greg KH
0 siblings, 1 reply; 11+ messages in thread
From: John Stultz @ 2014-02-07 17:16 UTC (permalink / raw)
To: Greg KH
Cc: LKML, Colin Cross, Greg Hackmann, Prakash Kamliya,
Alistair Strachan, Todd Poynor, Laura Abbott, Android Kernel Team
On 02/07/2014 09:03 AM, Greg KH wrote:
> On Tue, Feb 04, 2014 at 04:08:33PM -0800, John Stultz wrote:
>> I recently went through the AOSP common.git android/3.10 tree to
>> try to pull fixes that haven't been submitted upstream. I've
>> cherry picked those patches and submitted them for 3.15, but
>> Greg requested the bugfixes to be submitted by themselves for
>> 3.14.
>>
>> So here are the subset of changes that are bugfixes. There is
>> one additional patch here which I missed in my last submission,
>> but its a build warning fix, so I think its appropriate.
>>
>> If and when these are merged, I'll resubmit the rest of the
>> queue (which has grown further as of today) for 3.15.
>>
>> Anyway, please let me know if there's any feedback or suggestions.
> I seem to be missing patch 2/7 here. Any idea where it went?
Huh. I see it in my lkml archive. The subject is:
[PATCH 2/7] staging: sync: Signal pt before sync_timeline object gets
destroyed
https://lkml.org/lkml/2014/2/4/738
Maybe check your spam folder? If you need I can bounce it to you again.
thanks
-john
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCHv2 0/7] Staging fixes from the Android tree (for 3.14)
2014-02-07 17:16 ` John Stultz
@ 2014-02-07 17:35 ` Greg KH
0 siblings, 0 replies; 11+ messages in thread
From: Greg KH @ 2014-02-07 17:35 UTC (permalink / raw)
To: John Stultz
Cc: LKML, Colin Cross, Greg Hackmann, Prakash Kamliya,
Alistair Strachan, Todd Poynor, Laura Abbott, Android Kernel Team
On Fri, Feb 07, 2014 at 09:16:46AM -0800, John Stultz wrote:
> On 02/07/2014 09:03 AM, Greg KH wrote:
> > On Tue, Feb 04, 2014 at 04:08:33PM -0800, John Stultz wrote:
> >> I recently went through the AOSP common.git android/3.10 tree to
> >> try to pull fixes that haven't been submitted upstream. I've
> >> cherry picked those patches and submitted them for 3.15, but
> >> Greg requested the bugfixes to be submitted by themselves for
> >> 3.14.
> >>
> >> So here are the subset of changes that are bugfixes. There is
> >> one additional patch here which I missed in my last submission,
> >> but its a build warning fix, so I think its appropriate.
> >>
> >> If and when these are merged, I'll resubmit the rest of the
> >> queue (which has grown further as of today) for 3.15.
> >>
> >> Anyway, please let me know if there's any feedback or suggestions.
> > I seem to be missing patch 2/7 here. Any idea where it went?
>
> Huh. I see it in my lkml archive. The subject is:
> [PATCH 2/7] staging: sync: Signal pt before sync_timeline object gets
> destroyed
>
> https://lkml.org/lkml/2014/2/4/738
>
> Maybe check your spam folder? If you need I can bounce it to you again.
Ah, you forgot to cc: me, that's why I didn't get it :)
Got it now, thanks.
greg k-h
^ permalink raw reply [flat|nested] 11+ messages in thread