Skip to content

Commit 3e4a656

Browse files
committed
Merge Linux 4.4.266 into 11
2 parents a6d3a13 + 3078eb2 commit 3e4a656

File tree

46 files changed

+162
-84
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+162
-84
lines changed

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
VERSION = 4
22
PATCHLEVEL = 4
3-
SUBLEVEL = 264
3+
SUBLEVEL = 266
44
EXTRAVERSION =
55
NAME = Blurry Fish Butt
66

arch/ia64/kernel/mca.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1858,7 +1858,7 @@ ia64_mca_cpu_init(void *cpu_data)
18581858
data = mca_bootmem();
18591859
first_time = 0;
18601860
} else
1861-
data = (void *)__get_free_pages(GFP_KERNEL,
1861+
data = (void *)__get_free_pages(GFP_ATOMIC,
18621862
get_order(sz));
18631863
if (!data)
18641864
panic("Could not allocate MCA memory for cpu %d\n",

arch/x86/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ REALMODE_CFLAGS := $(M16_CFLAGS) -g -Os -D__KERNEL__ \
3434
-DDISABLE_BRANCH_PROFILING \
3535
-Wall -Wstrict-prototypes -march=i386 -mregparm=3 \
3636
-fno-strict-aliasing -fomit-frame-pointer -fno-pic \
37-
-mno-mmx -mno-sse
37+
-mno-mmx -mno-sse $(call cc-option,-fcf-protection=none)
3838

3939
REALMODE_CFLAGS += $(call __cc-option, $(CC), $(REALMODE_CFLAGS), -ffreestanding)
4040
REALMODE_CFLAGS += $(call __cc-option, $(CC), $(REALMODE_CFLAGS), -fno-stack-protector)

arch/x86/net/bpf_jit_comp.c

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1038,7 +1038,16 @@ xadd: if (is_imm8(insn->off))
10381038
}
10391039

10401040
if (image) {
1041-
if (unlikely(proglen + ilen > oldproglen)) {
1041+
/*
1042+
* When populating the image, assert that:
1043+
*
1044+
* i) We do not write beyond the allocated space, and
1045+
* ii) addrs[i] did not change from the prior run, in order
1046+
* to validate assumptions made for computing branch
1047+
* displacements.
1048+
*/
1049+
if (unlikely(proglen + ilen > oldproglen ||
1050+
proglen + ilen != addrs[i])) {
10421051
pr_err("bpf_jit_compile fatal error\n");
10431052
return -EFAULT;
10441053
}

drivers/extcon/extcon.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -938,6 +938,7 @@ int extcon_dev_register(struct extcon_dev *edev)
938938
sizeof(*edev->nh) * edev->max_supported, GFP_KERNEL);
939939
if (!edev->nh) {
940940
ret = -ENOMEM;
941+
device_unregister(&edev->dev);
941942
goto err_dev;
942943
}
943944

drivers/firewire/nosy.c

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -358,6 +358,7 @@ nosy_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
358358
struct client *client = file->private_data;
359359
spinlock_t *client_list_lock = &client->lynx->client_list_lock;
360360
struct nosy_stats stats;
361+
int ret;
361362

362363
switch (cmd) {
363364
case NOSY_IOC_GET_STATS:
@@ -372,11 +373,15 @@ nosy_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
372373
return 0;
373374

374375
case NOSY_IOC_START:
376+
ret = -EBUSY;
375377
spin_lock_irq(client_list_lock);
376-
list_add_tail(&client->link, &client->lynx->client_list);
378+
if (list_empty(&client->link)) {
379+
list_add_tail(&client->link, &client->lynx->client_list);
380+
ret = 0;
381+
}
377382
spin_unlock_irq(client_list_lock);
378383

379-
return 0;
384+
return ret;
380385

381386
case NOSY_IOC_STOP:
382387
spin_lock_irq(client_list_lock);

drivers/isdn/hardware/mISDN/mISDNipac.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -709,7 +709,7 @@ isac_release(struct isac_hw *isac)
709709
{
710710
if (isac->type & IPAC_TYPE_ISACX)
711711
WriteISAC(isac, ISACX_MASK, 0xff);
712-
else
712+
else if (isac->type != 0)
713713
WriteISAC(isac, ISAC_MASK, 0xff);
714714
if (isac->dch.timer.function != NULL) {
715715
del_timer(&isac->dch.timer);

drivers/mtd/nand/diskonchip.c

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1608,13 +1608,10 @@ static int __init doc_probe(unsigned long physadr)
16081608
numchips = doc2001_init(mtd);
16091609

16101610
if ((ret = nand_scan(mtd, numchips)) || (ret = doc->late_init(mtd))) {
1611-
/* DBB note: i believe nand_release is necessary here, as
1611+
/* DBB note: i believe nand_cleanup is necessary here, as
16121612
buffers may have been allocated in nand_base. Check with
16131613
Thomas. FIX ME! */
1614-
/* nand_release will call mtd_device_unregister, but we
1615-
haven't yet added it. This is handled without incident by
1616-
mtd_device_unregister, as far as I can tell. */
1617-
nand_release(mtd);
1614+
nand_cleanup(nand);
16181615
kfree(mtd);
16191616
goto fail;
16201617
}

drivers/mtd/nand/orion_nand.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ static int __init orion_nand_probe(struct platform_device *pdev)
165165
ret = mtd_device_parse_register(mtd, NULL, &ppdata,
166166
board->parts, board->nr_parts);
167167
if (ret) {
168-
nand_release(mtd);
168+
nand_cleanup(nc);
169169
goto no_dev;
170170
}
171171

drivers/mtd/nand/pasemi_nand.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -167,14 +167,16 @@ static int pasemi_nand_probe(struct platform_device *ofdev)
167167
if (mtd_device_register(pasemi_nand_mtd, NULL, 0)) {
168168
printk(KERN_ERR "pasemi_nand: Unable to register MTD device\n");
169169
err = -ENODEV;
170-
goto out_lpc;
170+
goto out_cleanup_nand;
171171
}
172172

173173
printk(KERN_INFO "PA Semi NAND flash at %08llx, control at I/O %x\n",
174174
res.start, lpcctl);
175175

176176
return 0;
177177

178+
out_cleanup_nand:
179+
nand_cleanup(chip);
178180
out_lpc:
179181
release_region(lpcctl, 4);
180182
out_ior:

0 commit comments

Comments
 (0)