Contents of /trunk/kernel-lts/patches-3.4/0146-3.4.47-all-fixes.patch
Parent Directory | Revision Log
Revision 2206 -
(show annotations)
(download)
Thu Jun 13 10:38:28 2013 UTC (11 years, 3 months ago) by niro
File size: 5041 byte(s)
Thu Jun 13 10:38:28 2013 UTC (11 years, 3 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; |