summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTushar Behera <tushar.behera@linaro.org>2013-02-01 15:48:07 +0530
committerTushar Behera <tushar.behera@linaro.org>2013-02-01 16:31:49 +0530
commit61e4df5d7917a3fb7d170ece75fb453e5f43e37e (patch)
treeceb15cd9e10bad6bd721ddc3d73149970609e6e1
parentcfc4b94d4a85dcd2a1d03a568779336f3aef9db9 (diff)
ata: exynos: Remove __init attribute to fix kernel crashtracking-samslt-all-ll-20130201.0samsung-lt-v3.8-rc4-2
The probe function of SATA phy driver is being accessed later in SATA probe. But it gets poisoned memory during that time. Suspecting __init attribute to be the culprit. Signed-off-by: Tushar Behera <tushar.behera@linaro.org>
-rw-r--r--drivers/ata/sata_exynos.c2
-rw-r--r--drivers/ata/sata_exynos_phy.c4
2 files changed, 3 insertions, 3 deletions
diff --git a/drivers/ata/sata_exynos.c b/drivers/ata/sata_exynos.c
index 030831c69860..01ec82e1b3c0 100644
--- a/drivers/ata/sata_exynos.c
+++ b/drivers/ata/sata_exynos.c
@@ -55,7 +55,7 @@ static void exynos_sata_parse_dt(struct device_node *np,
of_property_read_u32(np, "samsung,sata-freq", &sata->freq);
}
-static int __init exynos_sata_probe(struct platform_device *pdev)
+static int exynos_sata_probe(struct platform_device *pdev)
{
struct device *dev = &pdev->dev;
struct ata_port_info pi = ahci_port_info;
diff --git a/drivers/ata/sata_exynos_phy.c b/drivers/ata/sata_exynos_phy.c
index 84790f26a626..f001262255e6 100644
--- a/drivers/ata/sata_exynos_phy.c
+++ b/drivers/ata/sata_exynos_phy.c
@@ -149,14 +149,14 @@ static int sataphy_shutdown(struct sata_phy *phy)
return 0;
}
-static int __init sata_i2c_probe(struct i2c_client *client,
+static int sata_i2c_probe(struct i2c_client *client,
const struct i2c_device_id *i2c_id)
{
i2c_client = client;
return 0;
}
-static int __init sata_phy_probe(struct platform_device *pdev)
+static int sata_phy_probe(struct platform_device *pdev)
{
struct exynos_sata_phy *sataphy;
struct sata_phy *phy;