Annotation of /trunk/kernel-magellan/patches-4.8/0100-4.8.1-all-fixes.patch
Parent Directory | Revision Log
Revision 2840 -
(hide annotations)
(download)
Tue Nov 22 13:19:11 2016 UTC (7 years, 7 months ago) by niro
File size: 9603 byte(s)
Tue Nov 22 13:19:11 2016 UTC (7 years, 7 months ago) by niro
File size: 9603 byte(s)
-linux-4.8.1
1 | niro | 2840 | diff --git a/Makefile b/Makefile |
2 | index 80b8671d5c46..75db9f3988f3 100644 | ||
3 | --- a/Makefile | ||
4 | +++ b/Makefile | ||
5 | @@ -1,6 +1,6 @@ | ||
6 | VERSION = 4 | ||
7 | PATCHLEVEL = 8 | ||
8 | -SUBLEVEL = 0 | ||
9 | +SUBLEVEL = 1 | ||
10 | EXTRAVERSION = | ||
11 | NAME = Psychotic Stoned Sheep | ||
12 | |||
13 | diff --git a/arch/arm64/kernel/debug-monitors.c b/arch/arm64/kernel/debug-monitors.c | ||
14 | index 91fff48d0f57..2751ff9c0934 100644 | ||
15 | --- a/arch/arm64/kernel/debug-monitors.c | ||
16 | +++ b/arch/arm64/kernel/debug-monitors.c | ||
17 | @@ -435,8 +435,10 @@ NOKPROBE_SYMBOL(kernel_active_single_step); | ||
18 | /* ptrace API */ | ||
19 | void user_enable_single_step(struct task_struct *task) | ||
20 | { | ||
21 | - set_ti_thread_flag(task_thread_info(task), TIF_SINGLESTEP); | ||
22 | - set_regs_spsr_ss(task_pt_regs(task)); | ||
23 | + struct thread_info *ti = task_thread_info(task); | ||
24 | + | ||
25 | + if (!test_and_set_ti_thread_flag(ti, TIF_SINGLESTEP)) | ||
26 | + set_regs_spsr_ss(task_pt_regs(task)); | ||
27 | } | ||
28 | NOKPROBE_SYMBOL(user_enable_single_step); | ||
29 | |||
30 | diff --git a/drivers/staging/fbtft/fbtft-core.c b/drivers/staging/fbtft/fbtft-core.c | ||
31 | index 0c1a77cafe14..4c281df16816 100644 | ||
32 | --- a/drivers/staging/fbtft/fbtft-core.c | ||
33 | +++ b/drivers/staging/fbtft/fbtft-core.c | ||
34 | @@ -391,11 +391,11 @@ static void fbtft_update_display(struct fbtft_par *par, unsigned start_line, | ||
35 | |||
36 | if (unlikely(timeit)) { | ||
37 | ts_end = ktime_get(); | ||
38 | - if (ktime_to_ns(par->update_time)) | ||
39 | + if (!ktime_to_ns(par->update_time)) | ||
40 | par->update_time = ts_start; | ||
41 | |||
42 | - par->update_time = ts_start; | ||
43 | fps = ktime_us_delta(ts_start, par->update_time); | ||
44 | + par->update_time = ts_start; | ||
45 | fps = fps ? 1000000 / fps : 0; | ||
46 | |||
47 | throughput = ktime_us_delta(ts_end, ts_start); | ||
48 | diff --git a/drivers/usb/class/usbtmc.c b/drivers/usb/class/usbtmc.c | ||
49 | index 917a55c4480d..ffe9f8875311 100644 | ||
50 | --- a/drivers/usb/class/usbtmc.c | ||
51 | +++ b/drivers/usb/class/usbtmc.c | ||
52 | @@ -141,6 +141,7 @@ static void usbtmc_delete(struct kref *kref) | ||
53 | struct usbtmc_device_data *data = to_usbtmc_data(kref); | ||
54 | |||
55 | usb_put_dev(data->usb_dev); | ||
56 | + kfree(data); | ||
57 | } | ||
58 | |||
59 | static int usbtmc_open(struct inode *inode, struct file *filp) | ||
60 | @@ -1379,7 +1380,7 @@ static int usbtmc_probe(struct usb_interface *intf, | ||
61 | |||
62 | dev_dbg(&intf->dev, "%s called\n", __func__); | ||
63 | |||
64 | - data = devm_kzalloc(&intf->dev, sizeof(*data), GFP_KERNEL); | ||
65 | + data = kmalloc(sizeof(*data), GFP_KERNEL); | ||
66 | if (!data) | ||
67 | return -ENOMEM; | ||
68 | |||
69 | diff --git a/drivers/usb/misc/legousbtower.c b/drivers/usb/misc/legousbtower.c | ||
70 | index 7771be3ac178..4dd531ac5a7f 100644 | ||
71 | --- a/drivers/usb/misc/legousbtower.c | ||
72 | +++ b/drivers/usb/misc/legousbtower.c | ||
73 | @@ -898,24 +898,6 @@ static int tower_probe (struct usb_interface *interface, const struct usb_device | ||
74 | dev->interrupt_in_interval = interrupt_in_interval ? interrupt_in_interval : dev->interrupt_in_endpoint->bInterval; | ||
75 | dev->interrupt_out_interval = interrupt_out_interval ? interrupt_out_interval : dev->interrupt_out_endpoint->bInterval; | ||
76 | |||
77 | - /* we can register the device now, as it is ready */ | ||
78 | - usb_set_intfdata (interface, dev); | ||
79 | - | ||
80 | - retval = usb_register_dev (interface, &tower_class); | ||
81 | - | ||
82 | - if (retval) { | ||
83 | - /* something prevented us from registering this driver */ | ||
84 | - dev_err(idev, "Not able to get a minor for this device.\n"); | ||
85 | - usb_set_intfdata (interface, NULL); | ||
86 | - goto error; | ||
87 | - } | ||
88 | - dev->minor = interface->minor; | ||
89 | - | ||
90 | - /* let the user know what node this device is now attached to */ | ||
91 | - dev_info(&interface->dev, "LEGO USB Tower #%d now attached to major " | ||
92 | - "%d minor %d\n", (dev->minor - LEGO_USB_TOWER_MINOR_BASE), | ||
93 | - USB_MAJOR, dev->minor); | ||
94 | - | ||
95 | /* get the firmware version and log it */ | ||
96 | result = usb_control_msg (udev, | ||
97 | usb_rcvctrlpipe(udev, 0), | ||
98 | @@ -936,6 +918,23 @@ static int tower_probe (struct usb_interface *interface, const struct usb_device | ||
99 | get_version_reply.minor, | ||
100 | le16_to_cpu(get_version_reply.build_no)); | ||
101 | |||
102 | + /* we can register the device now, as it is ready */ | ||
103 | + usb_set_intfdata (interface, dev); | ||
104 | + | ||
105 | + retval = usb_register_dev (interface, &tower_class); | ||
106 | + | ||
107 | + if (retval) { | ||
108 | + /* something prevented us from registering this driver */ | ||
109 | + dev_err(idev, "Not able to get a minor for this device.\n"); | ||
110 | + usb_set_intfdata (interface, NULL); | ||
111 | + goto error; | ||
112 | + } | ||
113 | + dev->minor = interface->minor; | ||
114 | + | ||
115 | + /* let the user know what node this device is now attached to */ | ||
116 | + dev_info(&interface->dev, "LEGO USB Tower #%d now attached to major " | ||
117 | + "%d minor %d\n", (dev->minor - LEGO_USB_TOWER_MINOR_BASE), | ||
118 | + USB_MAJOR, dev->minor); | ||
119 | |||
120 | exit: | ||
121 | return retval; | ||
122 | diff --git a/drivers/usb/serial/cp210x.c b/drivers/usb/serial/cp210x.c | ||
123 | index 4d6a5c672a3d..54a4de0efdba 100644 | ||
124 | --- a/drivers/usb/serial/cp210x.c | ||
125 | +++ b/drivers/usb/serial/cp210x.c | ||
126 | @@ -118,6 +118,7 @@ static const struct usb_device_id id_table[] = { | ||
127 | { USB_DEVICE(0x10C4, 0x8411) }, /* Kyocera GPS Module */ | ||
128 | { USB_DEVICE(0x10C4, 0x8418) }, /* IRZ Automation Teleport SG-10 GSM/GPRS Modem */ | ||
129 | { USB_DEVICE(0x10C4, 0x846E) }, /* BEI USB Sensor Interface (VCP) */ | ||
130 | + { USB_DEVICE(0x10C4, 0x8470) }, /* Juniper Networks BX Series System Console */ | ||
131 | { USB_DEVICE(0x10C4, 0x8477) }, /* Balluff RFID */ | ||
132 | { USB_DEVICE(0x10C4, 0x84B6) }, /* Starizona Hyperion */ | ||
133 | { USB_DEVICE(0x10C4, 0x85EA) }, /* AC-Services IBUS-IF */ | ||
134 | diff --git a/drivers/usb/usbip/vudc_rx.c b/drivers/usb/usbip/vudc_rx.c | ||
135 | index 344bd9473475..e429b59f6f8a 100644 | ||
136 | --- a/drivers/usb/usbip/vudc_rx.c | ||
137 | +++ b/drivers/usb/usbip/vudc_rx.c | ||
138 | @@ -142,7 +142,7 @@ static int v_recv_cmd_submit(struct vudc *udc, | ||
139 | urb_p->urb->status = -EINPROGRESS; | ||
140 | |||
141 | /* FIXME: more pipe setup to please usbip_common */ | ||
142 | - urb_p->urb->pipe &= ~(11 << 30); | ||
143 | + urb_p->urb->pipe &= ~(3 << 30); | ||
144 | switch (urb_p->ep->type) { | ||
145 | case USB_ENDPOINT_XFER_BULK: | ||
146 | urb_p->urb->pipe |= (PIPE_BULK << 30); | ||
147 | diff --git a/include/linux/swap.h b/include/linux/swap.h | ||
148 | index 4a529c984a3f..e1d761463243 100644 | ||
149 | --- a/include/linux/swap.h | ||
150 | +++ b/include/linux/swap.h | ||
151 | @@ -257,7 +257,7 @@ static inline void workingset_node_pages_inc(struct radix_tree_node *node) | ||
152 | |||
153 | static inline void workingset_node_pages_dec(struct radix_tree_node *node) | ||
154 | { | ||
155 | - VM_BUG_ON(!workingset_node_pages(node)); | ||
156 | + VM_WARN_ON_ONCE(!workingset_node_pages(node)); | ||
157 | node->count--; | ||
158 | } | ||
159 | |||
160 | @@ -273,7 +273,7 @@ static inline void workingset_node_shadows_inc(struct radix_tree_node *node) | ||
161 | |||
162 | static inline void workingset_node_shadows_dec(struct radix_tree_node *node) | ||
163 | { | ||
164 | - VM_BUG_ON(!workingset_node_shadows(node)); | ||
165 | + VM_WARN_ON_ONCE(!workingset_node_shadows(node)); | ||
166 | node->count -= 1U << RADIX_TREE_COUNT_SHIFT; | ||
167 | } | ||
168 | |||
169 | diff --git a/sound/pci/hda/patch_conexant.c b/sound/pci/hda/patch_conexant.c | ||
170 | index 56fefbd85782..ed62748a6d55 100644 | ||
171 | --- a/sound/pci/hda/patch_conexant.c | ||
172 | +++ b/sound/pci/hda/patch_conexant.c | ||
173 | @@ -261,6 +261,7 @@ enum { | ||
174 | CXT_FIXUP_HP_530, | ||
175 | CXT_FIXUP_CAP_MIX_AMP_5047, | ||
176 | CXT_FIXUP_MUTE_LED_EAPD, | ||
177 | + CXT_FIXUP_HP_SPECTRE, | ||
178 | }; | ||
179 | |||
180 | /* for hda_fixup_thinkpad_acpi() */ | ||
181 | @@ -765,6 +766,14 @@ static const struct hda_fixup cxt_fixups[] = { | ||
182 | .type = HDA_FIXUP_FUNC, | ||
183 | .v.func = cxt_fixup_mute_led_eapd, | ||
184 | }, | ||
185 | + [CXT_FIXUP_HP_SPECTRE] = { | ||
186 | + .type = HDA_FIXUP_PINS, | ||
187 | + .v.pins = (const struct hda_pintbl[]) { | ||
188 | + /* enable NID 0x1d for the speaker on top */ | ||
189 | + { 0x1d, 0x91170111 }, | ||
190 | + { } | ||
191 | + } | ||
192 | + }, | ||
193 | }; | ||
194 | |||
195 | static const struct snd_pci_quirk cxt5045_fixups[] = { | ||
196 | @@ -814,6 +823,7 @@ static const struct snd_pci_quirk cxt5066_fixups[] = { | ||
197 | SND_PCI_QUIRK(0x1025, 0x0543, "Acer Aspire One 522", CXT_FIXUP_STEREO_DMIC), | ||
198 | SND_PCI_QUIRK(0x1025, 0x054c, "Acer Aspire 3830TG", CXT_FIXUP_ASPIRE_DMIC), | ||
199 | SND_PCI_QUIRK(0x1025, 0x054f, "Acer Aspire 4830T", CXT_FIXUP_ASPIRE_DMIC), | ||
200 | + SND_PCI_QUIRK(0x103c, 0x8174, "HP Spectre x360", CXT_FIXUP_HP_SPECTRE), | ||
201 | SND_PCI_QUIRK(0x1043, 0x138d, "Asus", CXT_FIXUP_HEADPHONE_MIC_PIN), | ||
202 | SND_PCI_QUIRK(0x152d, 0x0833, "OLPC XO-1.5", CXT_FIXUP_OLPC_XO), | ||
203 | SND_PCI_QUIRK(0x17aa, 0x20f2, "Lenovo T400", CXT_PINCFG_LENOVO_TP410), | ||
204 | diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c | ||
205 | index 575cefd8cc4a..bd481ac23faf 100644 | ||
206 | --- a/sound/pci/hda/patch_realtek.c | ||
207 | +++ b/sound/pci/hda/patch_realtek.c | ||
208 | @@ -5806,6 +5806,13 @@ static const struct hda_model_fixup alc269_fixup_models[] = { | ||
209 | {0x14, 0x90170110}, \ | ||
210 | {0x15, 0x0221401f} | ||
211 | |||
212 | +#define ALC295_STANDARD_PINS \ | ||
213 | + {0x12, 0xb7a60130}, \ | ||
214 | + {0x14, 0x90170110}, \ | ||
215 | + {0x17, 0x21014020}, \ | ||
216 | + {0x18, 0x21a19030}, \ | ||
217 | + {0x21, 0x04211020} | ||
218 | + | ||
219 | #define ALC298_STANDARD_PINS \ | ||
220 | {0x12, 0x90a60130}, \ | ||
221 | {0x21, 0x03211020} | ||
222 | @@ -5846,6 +5853,10 @@ static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = { | ||
223 | {0x14, 0x90170120}, | ||
224 | {0x21, 0x02211030}), | ||
225 | SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE, | ||
226 | + {0x14, 0x90170110}, | ||
227 | + {0x1b, 0x02011020}, | ||
228 | + {0x21, 0x0221101f}), | ||
229 | + SND_HDA_PIN_QUIRK(0x10ec0255, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE, | ||
230 | {0x14, 0x90170130}, | ||
231 | {0x1b, 0x01014020}, | ||
232 | {0x21, 0x0221103f}), | ||
233 | @@ -5911,6 +5922,10 @@ static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = { | ||
234 | {0x14, 0x90170120}, | ||
235 | {0x21, 0x02211030}), | ||
236 | SND_HDA_PIN_QUIRK(0x10ec0256, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE, | ||
237 | + {0x12, 0xb7a60130}, | ||
238 | + {0x14, 0x90170110}, | ||
239 | + {0x21, 0x02211020}), | ||
240 | + SND_HDA_PIN_QUIRK(0x10ec0256, 0x1028, "Dell", ALC255_FIXUP_DELL1_MIC_NO_PRESENCE, | ||
241 | ALC256_STANDARD_PINS), | ||
242 | SND_HDA_PIN_QUIRK(0x10ec0280, 0x103c, "HP", ALC280_FIXUP_HP_GPIO4, | ||
243 | {0x12, 0x90a60130}, | ||
244 | @@ -6021,6 +6036,8 @@ static const struct snd_hda_pin_quirk alc269_pin_fixup_tbl[] = { | ||
245 | SND_HDA_PIN_QUIRK(0x10ec0293, 0x1028, "Dell", ALC293_FIXUP_DELL1_MIC_NO_PRESENCE, | ||
246 | ALC292_STANDARD_PINS, | ||
247 | {0x13, 0x90a60140}), | ||
248 | + SND_HDA_PIN_QUIRK(0x10ec0295, 0x1028, "Dell", ALC269_FIXUP_DELL1_MIC_NO_PRESENCE, | ||
249 | + ALC295_STANDARD_PINS), | ||
250 | SND_HDA_PIN_QUIRK(0x10ec0298, 0x1028, "Dell", ALC298_FIXUP_DELL1_MIC_NO_PRESENCE, | ||
251 | ALC298_STANDARD_PINS, | ||
252 | {0x17, 0x90170110}), |