Magellan Linux

Contents of /trunk/kernel-lts/patches-3.4/0146-3.4.47-all-fixes.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2206 - (show annotations) (download)
Thu Jun 13 10:38:28 2013 UTC (10 years, 10 months ago) by niro
File size: 5041 byte(s)
-linux-3.4.47
1 diff --git a/drivers/gpu/drm/radeon/evergreen.c b/drivers/gpu/drm/radeon/evergreen.c
2 index e458acb..6a8776e 100644
3 --- a/drivers/gpu/drm/radeon/evergreen.c
4 +++ b/drivers/gpu/drm/radeon/evergreen.c
5 @@ -2443,8 +2443,8 @@ int evergreen_mc_init(struct radeon_device *rdev)
6 rdev->mc.real_vram_size = RREG32(CONFIG_MEMSIZE);
7 } else {
8 /* size in MB on evergreen/cayman/tn */
9 - rdev->mc.mc_vram_size = RREG32(CONFIG_MEMSIZE) * 1024 * 1024;
10 - rdev->mc.real_vram_size = RREG32(CONFIG_MEMSIZE) * 1024 * 1024;
11 + rdev->mc.mc_vram_size = RREG32(CONFIG_MEMSIZE) * 1024ULL * 1024ULL;
12 + rdev->mc.real_vram_size = RREG32(CONFIG_MEMSIZE) * 1024ULL * 1024ULL;
13 }
14 rdev->mc.visible_vram_size = rdev->mc.aper_size;
15 r700_vram_gtt_location(rdev, &rdev->mc);
16 diff --git a/drivers/gpu/drm/radeon/radeon_ttm.c b/drivers/gpu/drm/radeon/radeon_ttm.c
17 index f493c64..49b55ed 100644
18 --- a/drivers/gpu/drm/radeon/radeon_ttm.c
19 +++ b/drivers/gpu/drm/radeon/radeon_ttm.c
20 @@ -744,7 +744,7 @@ int radeon_ttm_init(struct radeon_device *rdev)
21 return r;
22 }
23 DRM_INFO("radeon: %uM of VRAM memory ready\n",
24 - (unsigned)rdev->mc.real_vram_size / (1024 * 1024));
25 + (unsigned) (rdev->mc.real_vram_size / (1024 * 1024)));
26 r = ttm_bo_init_mm(&rdev->mman.bdev, TTM_PL_TT,
27 rdev->mc.gtt_size >> PAGE_SHIFT);
28 if (r) {
29 diff --git a/drivers/gpu/drm/radeon/si.c b/drivers/gpu/drm/radeon/si.c
30 index 5508ad7..2dbd585 100644
31 --- a/drivers/gpu/drm/radeon/si.c
32 +++ b/drivers/gpu/drm/radeon/si.c
33 @@ -2464,8 +2464,8 @@ static int si_mc_init(struct radeon_device *rdev)
34 rdev->mc.aper_base = pci_resource_start(rdev->pdev, 0);
35 rdev->mc.aper_size = pci_resource_len(rdev->pdev, 0);
36 /* size in MB on si */
37 - rdev->mc.mc_vram_size = RREG32(CONFIG_MEMSIZE) * 1024 * 1024;
38 - rdev->mc.real_vram_size = RREG32(CONFIG_MEMSIZE) * 1024 * 1024;
39 + rdev->mc.mc_vram_size = RREG32(CONFIG_MEMSIZE) * 1024ULL * 1024ULL;
40 + rdev->mc.real_vram_size = RREG32(CONFIG_MEMSIZE) * 1024ULL * 1024ULL;
41 rdev->mc.visible_vram_size = rdev->mc.aper_size;
42 si_vram_gtt_location(rdev, &rdev->mc);
43 radeon_update_bandwidth_info(rdev);
44 diff --git a/drivers/hwmon/abituguru.c b/drivers/hwmon/abituguru.c
45 index a72bf25..56b178a 100644
46 --- a/drivers/hwmon/abituguru.c
47 +++ b/drivers/hwmon/abituguru.c
48 @@ -1410,14 +1410,18 @@ static int __devinit abituguru_probe(struct platform_device *pdev)
49 pr_info("found Abit uGuru\n");
50
51 /* Register sysfs hooks */
52 - for (i = 0; i < sysfs_attr_i; i++)
53 - if (device_create_file(&pdev->dev,
54 - &data->sysfs_attr[i].dev_attr))
55 + for (i = 0; i < sysfs_attr_i; i++) {
56 + res = device_create_file(&pdev->dev,
57 + &data->sysfs_attr[i].dev_attr);
58 + if (res)
59 goto abituguru_probe_error;
60 - for (i = 0; i < ARRAY_SIZE(abituguru_sysfs_attr); i++)
61 - if (device_create_file(&pdev->dev,
62 - &abituguru_sysfs_attr[i].dev_attr))
63 + }
64 + for (i = 0; i < ARRAY_SIZE(abituguru_sysfs_attr); i++) {
65 + res = device_create_file(&pdev->dev,
66 + &abituguru_sysfs_attr[i].dev_attr);
67 + if (res)
68 goto abituguru_probe_error;
69 + }
70
71 data->hwmon_dev = hwmon_device_register(&pdev->dev);
72 if (!IS_ERR(data->hwmon_dev))
73 diff --git a/drivers/i2c/busses/i2c-designware-core.c b/drivers/i2c/busses/i2c-designware-core.c
74 index 6193349..3c2812f 100644
75 --- a/drivers/i2c/busses/i2c-designware-core.c
76 +++ b/drivers/i2c/busses/i2c-designware-core.c
77 @@ -349,7 +349,8 @@ static void i2c_dw_xfer_init(struct dw_i2c_dev *dev)
78 /* Enable the adapter */
79 dw_writel(dev, 1, DW_IC_ENABLE);
80
81 - /* Enable interrupts */
82 + /* Clear and enable interrupts */
83 + i2c_dw_clear_int(dev);
84 dw_writel(dev, DW_IC_INTR_DEFAULT_MASK, DW_IC_INTR_MASK);
85 }
86
87 diff --git a/drivers/media/dvb/mantis/mantis_dvb.c b/drivers/media/dvb/mantis/mantis_dvb.c
88 index e5180e4..5d15c6b 100644
89 --- a/drivers/media/dvb/mantis/mantis_dvb.c
90 +++ b/drivers/media/dvb/mantis/mantis_dvb.c
91 @@ -248,8 +248,10 @@ int __devinit mantis_dvb_init(struct mantis_pci *mantis)
92 err5:
93 tasklet_kill(&mantis->tasklet);
94 dvb_net_release(&mantis->dvbnet);
95 - dvb_unregister_frontend(mantis->fe);
96 - dvb_frontend_detach(mantis->fe);
97 + if (mantis->fe) {
98 + dvb_unregister_frontend(mantis->fe);
99 + dvb_frontend_detach(mantis->fe);
100 + }
101 err4:
102 mantis->demux.dmx.remove_frontend(&mantis->demux.dmx, &mantis->fe_mem);
103
104 diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
105 index 14f8e1f..3a65f43 100644
106 --- a/fs/btrfs/ioctl.c
107 +++ b/fs/btrfs/ioctl.c
108 @@ -1653,7 +1653,11 @@ static noinline int copy_to_sk(struct btrfs_root *root,
109 item_off = btrfs_item_ptr_offset(leaf, i);
110 item_len = btrfs_item_size_nr(leaf, i);
111
112 - if (item_len > BTRFS_SEARCH_ARGS_BUFSIZE)
113 + btrfs_item_key_to_cpu(leaf, key, i);
114 + if (!key_in_sk(key, sk))
115 + continue;
116 +
117 + if (sizeof(sh) + item_len > BTRFS_SEARCH_ARGS_BUFSIZE)
118 item_len = 0;
119
120 if (sizeof(sh) + item_len + *sk_offset >
121 @@ -1662,10 +1666,6 @@ static noinline int copy_to_sk(struct btrfs_root *root,
122 goto overflow;
123 }
124
125 - btrfs_item_key_to_cpu(leaf, key, i);
126 - if (!key_in_sk(key, sk))
127 - continue;
128 -
129 sh.objectid = key->objectid;
130 sh.offset = key->offset;
131 sh.type = key->type;