[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#605472: patch



Patch is not yet in mainline. We encounter it regulary on our Fujitsu RX300 S6
servers. So we are interested to test and fine tune the patch. I implemented it 
into a 3.15.10 kernel and checked the result. Sadly the error changed to a NULL 
pointer derefernce.

What can I do?

[    9.004018] Oops: 0000 [#1] SMP
[    9.004125] Modules linked in: ses(+) enclosure microcode(+) ipmi_devintf nfsd ipmi_si ipmi_msghandler i7core_edac iTCO_wdt iTCO_vendor_support lpc_ich mfd_core edac_core ptp pps_core dca shpchp auth_rpcgss nfs_acl lockd i2c_i801 sunrpc tpm_tis tpm_infineon tpm acpi_cpufreq acpi_power_meter dm_multipath 8021q garp mrp tun bridge stp llc bonding ib_umad ib_ipoib ib_cm mlx4_ib ib_sa i2c_algo_bit drm_kms_helper ttm drm i2c_core megaraid_sas mlx4_core ib_mad ib_core ib_addr dummy
[    9.005137] CPU: 0 PID: 445 Comm: systemd-udevd Tainted: G          I   3.15.10-201.lts19.fc20.x86_64 #1
[    9.005325] Hardware name: FUJITSU                          PRIMERGY RX300 S6             /D2619, BIOS 6.00 Rev. 1.13.2619.N1           01/19/2012
[    9.005524] task: ffff88197ac09da0 ti: ffff88197bbe0000 task.ti: ffff88197bbe0000
[    9.005703] RIP: 0010:[<ffffffff81355478>]  [<ffffffff81355478>] strcmp+0x18/0x40
[    9.005890] RSP: 0018:ffff88197bbe3ba0  EFLAGS: 00010202
[    9.005988] RAX: ffff880d683b61c0 RBX: ffff880d683b4000 RCX: ffff880d6813c028
[    9.006095] RDX: 0000000000000004 RSI: ffff880d6813c028 RDI: 0000000000000001
[    9.006201] RBP: ffff88197bbe3ba0 R08: ffff880d683b4000 R09: 0000000000000001
[    9.006308] R10: 000000000000000d R11: ffff880d6813c2ef R12: 0000000000000000
[    9.006413] R13: ffff880d683b42d0 R14: ffff880d683b42d8 R15: ffff880d6813c028
[    9.006518] FS:  00007ffca3544880(0000) GS:ffff880d89c00000(0000) knlGS:0000000000000000
[    9.006700] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[    9.006801] CR2: 0000000000000000 CR3: 000000197b2de000 CR4: 00000000000007f0
[    9.006905] Stack:
[    9.006992]  ffff88197bbe3be0 ffffffffa0445708 ffff880d683b61c0 ffff880d6813c028
[    9.007197]  ffff880036e86e08 ffff8800bb221d38 000000000000000d 0000000000000000
[    9.007407]  ffff88197bbe3c50 ffffffffa044a91d ffff880d72deaa00 ffff880d6813c000
[    9.007615] Call Trace:
[    9.007708]  [<ffffffffa0445708>] enclosure_component_register+0x118/0x180 [enclosure]
[    9.007892]  [<ffffffffa044a91d>] ses_enclosure_data_process+0x27d/0x370 [ses]
[    9.008073]  [<ffffffffa044af6d>] ses_intf_add+0x44d/0x4fc [ses]
[    9.008178]  [<ffffffff8145fa99>] class_interface_register+0xa9/0x100
[    9.008282]  [<ffffffffa0005000>] ? 0xffffffffa0004fff
[    9.008385]  [<ffffffff8148c016>] scsi_register_interface+0x16/0x20
[    9.008491]  [<ffffffffa0005013>] ses_init+0x13/0x1000 [ses]
[    9.008595]  [<ffffffffa0005000>] ? 0xffffffffa0004fff
[    9.008696]  [<ffffffff8100216a>] do_one_initcall+0xfa/0x1b0
[    9.008800]  [<ffffffff81059853>] ? set_memory_nx+0x43/0x50
[    9.008908]  [<ffffffff81103fd2>] load_module+0x1d92/0x25e0
[    9.009009]  [<ffffffff810ffcf0>] ? store_uevent+0x70/0x70
[    9.009114]  [<ffffffff811ec560>] ? kernel_read+0x50/0x80
[    9.009217]  [<ffffffff811049d6>] SyS_finit_module+0xa6/0xd0
[    9.009322]  [<ffffffff816ffba9>] system_call_fastpath+0x16/0x1b
[    9.009422] Code: c9 88 4a ff 75 ed 5d c3 66 66 2e 0f 1f 84 00 00 00 00 00 55 48 89 e5 eb 0e 66 2e 0f 1f 84 00 00 00 00 00 84 c0 74 1c 48 83 c7 01 <0f> b6 47 ff 48 83 c6 01 3a 46 ff 74 eb 19 c0 83 c8 01 5d c3 0f
[    9.010126] RIP  [<ffffffff81355478>] strcmp+0x18/0x40
[    9.010231]  RSP <ffff88197bbe3ba0>
[    9.010323] CR2: 0000000000000000
[    9.010461] ---[ end trace f34cf7c5817f3b6d ]---


+static struct enclosure_component *
+enclosure_component_find_by_name(struct enclosure_device *edev,
+				const char *name)
+{
+	int i;
+	if (!edev || !name || !name[0])
+		return NULL;
+
+	for (i=0; i<edev->components; i++) {
+		struct enclosure_component *ecomp = &edev->component[i];
+		if (ecomp->number != -1 && !strcmp(dev_name(&ecomp->cdev), name)) <- BUG HERE?
+			return ecomp;
+	}
+
+	return NULL;
+}
+
 static const struct attribute_group *enclosure_groups[];
 
 /**
@@ -276,9 +293,13 @@ enclosure_component_register(struct enclosure_device *edev,
 	ecomp->number = number;
 	cdev = &ecomp->cdev;
 	cdev->parent = get_device(&edev->edev);
-	if (name && name[0])
-		dev_set_name(cdev, "%s", name);
-	else
+
+	if (name && name[0]) {
+		if (enclosure_component_find_by_name (edev, name))
+			dev_set_name(cdev, "%s_%u", name, number);
+		else
+			dev_set_name(cdev, "%s", name);
+	} else
 		dev_set_name(cdev, "%u", number);
****************************************************************************
Diese E-Mail enthält vertrauliche und/oder rechtlich geschützte
Informationen. Wenn Sie nicht der richtige Adressat sind oder diese E-Mail
irrtümlich erhalten haben, informieren Sie bitte sofort den Absender und
vernichten Sie diese Mail. Das unerlaubte Kopieren sowie die unbefugte
Weitergabe dieser Mail ist nicht gestattet.

�ber das Internet versandte E-Mails können unter fremden Namen erstellt oder
manipuliert werden. Deshalb ist diese als E-Mail verschickte Nachricht keine
rechtsverbindliche Willenserklärung.

Collogia
Unternehmensberatung AG
Ubierring 11
D-50678 Köln

Vorstand:
Kadir Akin
Dr. Michael Höhnerbach

Vorsitzender des Aufsichtsrates:
Hans Kristian Langva

Registergericht: Amtsgericht Köln
Registernummer: HRB 52 497

This e-mail may contain confidential and/or privileged information. If you
are not the intended recipient (or have received this e-mail in error)
please notify the sender immediately and destroy this e-mail. Any
unauthorized copying, disclosure or distribution of the material in this
e-mail is strictly forbidden.

e-mails sent over the internet may have been written under a wrong name or
been manipulated. That is why this message sent as an e-mail is not a
legally binding declaration of intention.

Collogia
Unternehmensberatung AG
Ubierring 11
D-50678 Köln

executive board:
Kadir Akin
Dr. Michael Höhnerbach

President of the supervisory board:
Hans Kristian Langva

Registry office: district court Cologne
Register number: HRB 52 497

****************************************************************************

Reply to: