mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-28 23:24:50 +00:00
d410a6417e
Recent pci_assign_irq() changes uncovered a problem with missing freeing of ide_port class instance on hwif_init() failure in ide_host_register(): ide0: disabled, no IRQ ide0: failed to initialize IDE interface ide0: disabling port cmd64x 0000:00:02.0: IDE controller (0x1095:0x0646 rev 0x07) CMD64x_IDE 0000:00:02.0: BAR 0: can't reserve [io 0x8050-0x8057] cmd64x 0000:00:02.0: can't reserve resources CMD64x_IDE: probe of 0000:00:02.0 failed with error -16 ide_generic: please use "probe_mask=0x3f" module parameter for probing all legacy ISA IDE ports ------------[ cut here ]------------ WARNING: CPU: 0 PID: 1 at fs/sysfs/dir.c:31 sysfs_warn_dup+0x94/0xd0 sysfs: cannot create duplicate filename '/class/ide_port/ide0' ... Trace: [<fffffc00003308a0>] __warn+0x160/0x190 [<fffffc000048c9f4>] sysfs_warn_dup+0x94/0xd0 [<fffffc0000330928>] warn_slowpath_fmt+0x58/0x70 [<fffffc000048c9f4>] sysfs_warn_dup+0x94/0xd0 [<fffffc0000486d40>] kernfs_path_from_node+0x30/0x60 [<fffffc00004874ac>] kernfs_put+0x16c/0x2c0 [<fffffc00004874ac>] kernfs_put+0x16c/0x2c0 [<fffffc000048d010>] sysfs_do_create_link_sd.isra.2+0x100/0x120 [<fffffc00005b9d64>] device_add+0x2a4/0x7c0 [<fffffc00005ba5cc>] device_create_groups_vargs+0x14c/0x170 [<fffffc00005ba518>] device_create_groups_vargs+0x98/0x170 [<fffffc00005ba690>] device_create+0x50/0x70 [<fffffc00005df36c>] ide_host_register+0x48c/0xa00 [<fffffc00005df330>] ide_host_register+0x450/0xa00 [<fffffc00005ba2a0>] device_register+0x20/0x50 [<fffffc00005df330>] ide_host_register+0x450/0xa00 [<fffffc00005df944>] ide_host_add+0x64/0xe0 [<fffffc000079b41c>] kobject_uevent_env+0x16c/0x710 [<fffffc0000310288>] do_one_initcall+0x68/0x260 [<fffffc00007b13bc>] kernel_init+0x1c/0x1a0 [<fffffc00007b13a0>] kernel_init+0x0/0x1a0 [<fffffc0000311868>] ret_from_kernel_thread+0x18/0x20 [<fffffc00007b13a0>] kernel_init+0x0/0x1a0 ---[ end trace 24a70433c3e4d374 ]--- ide0: disabling port Fix the problem by adding missing code to ide_host_register(). Fixes: |
||
---|---|---|
.. | ||
aec62xx.c | ||
ali14xx.c | ||
alim15x3.c | ||
amd74xx.c | ||
atiixp.c | ||
au1xxx-ide.c | ||
buddha.c | ||
cmd64x.c | ||
cmd640.c | ||
cs5520.c | ||
cs5530.c | ||
cs5535.c | ||
cs5536.c | ||
cy82c693.c | ||
delkin_cb.c | ||
dtc2278.c | ||
falconide.c | ||
gayle.c | ||
hpt366.c | ||
ht6560b.c | ||
icside.c | ||
ide-4drives.c | ||
ide-acpi.c | ||
ide-atapi.c | ||
ide-cd.c | ||
ide-cd.h | ||
ide-cd_ioctl.c | ||
ide-cd_verbose.c | ||
ide-cs.c | ||
ide-devsets.c | ||
ide-disk.c | ||
ide-disk.h | ||
ide-disk_ioctl.c | ||
ide-disk_proc.c | ||
ide-dma-sff.c | ||
ide-dma.c | ||
ide-eh.c | ||
ide-floppy.c | ||
ide-floppy.h | ||
ide-floppy_ioctl.c | ||
ide-floppy_proc.c | ||
ide-gd.c | ||
ide-gd.h | ||
ide-generic.c | ||
ide-io-std.c | ||
ide-io.c | ||
ide-ioctls.c | ||
ide-iops.c | ||
ide-legacy.c | ||
ide-lib.c | ||
ide-park.c | ||
ide-pci-generic.c | ||
ide-pio-blacklist.c | ||
ide-pm.c | ||
ide-pnp.c | ||
ide-probe.c | ||
ide-proc.c | ||
ide-scan-pci.c | ||
ide-sysfs.c | ||
ide-tape.c | ||
ide-taskfile.c | ||
ide-timings.c | ||
ide-xfer-mode.c | ||
ide.c | ||
ide_platform.c | ||
it821x.c | ||
it8172.c | ||
it8213.c | ||
jmicron.c | ||
Kconfig | ||
macide.c | ||
Makefile | ||
ns87415.c | ||
opti621.c | ||
palm_bk3710.c | ||
pdc202xx_new.c | ||
pdc202xx_old.c | ||
piix.c | ||
pmac.c | ||
q40ide.c | ||
qd65xx.c | ||
qd65xx.h | ||
rapide.c | ||
rz1000.c | ||
sc1200.c | ||
serverworks.c | ||
setup-pci.c | ||
sgiioc4.c | ||
siimage.c | ||
sis5513.c | ||
sl82c105.c | ||
slc90e66.c | ||
tc86c001.c | ||
triflex.c | ||
trm290.c | ||
tx4938ide.c | ||
tx4939ide.c | ||
umc8672.c | ||
via82cxxx.c |