diff options
Diffstat (limited to 'target/linux/mvebu/patches-3.10/0177-of-irq-Avoid-calling-list_first_entry-for-empty-list.patch')
-rw-r--r-- | target/linux/mvebu/patches-3.10/0177-of-irq-Avoid-calling-list_first_entry-for-empty-list.patch | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/target/linux/mvebu/patches-3.10/0177-of-irq-Avoid-calling-list_first_entry-for-empty-list.patch b/target/linux/mvebu/patches-3.10/0177-of-irq-Avoid-calling-list_first_entry-for-empty-list.patch new file mode 100644 index 0000000..14b3d13 --- /dev/null +++ b/target/linux/mvebu/patches-3.10/0177-of-irq-Avoid-calling-list_first_entry-for-empty-list.patch @@ -0,0 +1,30 @@ +From f159ea8ab3bce09a098d0d56c9e8909f385b87aa Mon Sep 17 00:00:00 2001 +From: Axel Lin <axel.lin@ingics.com> +Date: Thu, 19 Dec 2013 09:30:48 -0300 +Subject: [PATCH 177/203] of/irq: Avoid calling list_first_entry() for empty + list + +list_first_entry() expects the list is not empty, we need to check if list is +empty before calling list_first_entry(). Thus use list_first_entry_or_null() +instead of list_first_entry(). + +Signed-off-by: Axel Lin <axel.lin@ingics.com> +Signed-off-by: Grant Likely <grant.likely@linaro.org> +--- + drivers/of/irq.c | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +--- a/drivers/of/irq.c ++++ b/drivers/of/irq.c +@@ -488,8 +488,9 @@ void __init of_irq_init(const struct of_ + } + + /* Get the next pending parent that might have children */ +- desc = list_first_entry(&intc_parent_list, typeof(*desc), list); +- if (list_empty(&intc_parent_list) || !desc) { ++ desc = list_first_entry_or_null(&intc_parent_list, ++ typeof(*desc), list); ++ if (!desc) { + pr_err("of_irq_init: children remain, but no parents\n"); + break; + } |