aboutsummaryrefslogtreecommitdiff
path: root/drivers/ata
diff options
context:
space:
mode:
authorTushar Behera <tushar.behera@linaro.org>2013-02-01 15:48:07 +0530
committerAndrey Konovalov <andrey.konovalov@linaro.org>2014-04-16 23:51:34 +0400
commit4c6484650554ca333492b7b4ed190a5c748cfd2b (patch)
tree7de939e6e872f3f432699074ba08aa63baf1c426 /drivers/ata
parentc7f413cf21670bdde3ffdcee38456bab6a80eb15 (diff)
ata: exynos: Remove __init attribute to fix kernel crash
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>
Diffstat (limited to 'drivers/ata')
-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 030831c6986..01ec82e1b3c 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 e811d26bcce..8f2c686916b 100644
--- a/drivers/ata/sata_exynos_phy.c
+++ b/drivers/ata/sata_exynos_phy.c
@@ -147,14 +147,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;