Hi, I find there will be different name order of sd device when connecting different array. My case is as following: I have a SUSE server, and two array (let's say host, array1 and array2. Two arrays are from different vendor). They are connected through FC. There is two HBA controllers(let's say c1,c2) on host. case1: host is connected to array1. sd driver will generate the name orderly for each HBA controller. For examle: c1: /dev/sda /dev/sdb /dev/sdc c2:/dev/sdd /dev/sde /dev/sdf case2: host is connected to array2. sd driver will generate the name ramdonly for each HBA controller. For examle: c1: /dev/sda /dev/sdd /dev/sde c2:/dev/sdb /dev/sdc /dev/sdf Why is the order different with different array? I went through the sd probe part of linux scsi subsystem. In scsi_probe_lun, an inquery command will be issued to probe the lun. This request will be executed with scsi_execute. This function is sync and blocked. Because it invokes the blk_execute_rq to exec the request, in blk_execute_rq: rq->end_io_data = &wait; blk_execute_rq_nowait(q, bd_disk, rq, at_head, blk_end_sync_rq); wait_for_completion(&wait); According to above, sd driver probes one lun at one time. Before respone to current inquery is returned, no other inquery is issued. In another word, the proccess of probe lun is sync and blocked. The whole sequence of proble lun is: scan host controller->scan target->probe and add lun. So, the whole procedure of sd probe should be serial. but why is there case2? Is it because the different order of executing command on array? But according the code of sd driver, it seems it's not the root cause. Thanks, -- Xie Gang -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html