33 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
From cadf6ce5a3929b42b0e63fe36d0c08bf6b59f25e Mon Sep 17 00:00:00 2001
 | 
						|
From: Rob Clark <robdclark@gmail.com>
 | 
						|
Date: Fri, 30 Jun 2017 16:40:23 -0400
 | 
						|
Subject: [PATCH] thermal: qcom: tsens: fix crash due to incorrect __init
 | 
						|
 | 
						|
init_common() is called from probe, which can happen after the __init
 | 
						|
section is already unloaded in the case of -EPROBE_DEFER.  Causing a
 | 
						|
later probe to attempt to branch to hyperspace.
 | 
						|
 | 
						|
Cc: <stable@vger.kernel.org>
 | 
						|
Signed-off-by: Rob Clark <robdclark@gmail.com>
 | 
						|
Acked-by: Bjorn Andersson <bjorn.andersson@linaro.org>
 | 
						|
---
 | 
						|
 drivers/thermal/qcom/tsens-common.c | 2 +-
 | 
						|
 1 file changed, 1 insertion(+), 1 deletion(-)
 | 
						|
 | 
						|
diff --git a/drivers/thermal/qcom/tsens-common.c b/drivers/thermal/qcom/tsens-common.c
 | 
						|
index 6207d8d92351..920167c6eac5 100644
 | 
						|
--- a/drivers/thermal/qcom/tsens-common.c
 | 
						|
+++ b/drivers/thermal/qcom/tsens-common.c
 | 
						|
@@ -124,7 +124,7 @@ static const struct regmap_config tsens_config = {
 | 
						|
 	.reg_stride	= 4,
 | 
						|
 };
 | 
						|
 
 | 
						|
-int __init init_common(struct tsens_device *tmdev)
 | 
						|
+int init_common(struct tsens_device *tmdev)
 | 
						|
 {
 | 
						|
 	void __iomem *base;
 | 
						|
 	struct resource *res;
 | 
						|
-- 
 | 
						|
2.17.1
 | 
						|
 |