On Thu, Aug 2, 2012 at 8:31 PM, Robert Milasan <rmilasan@xxxxxxx> wrote: > Hello, just created a patch for openSUSE to re-enable by-path links for > ata devices. The patch is based on handle_scsi_default function, but > instead of using "host{NUMBER}", but "ata{NUMBER}" and it works almost > the same as for scsi devices. > > The patch is not the best or the cleanest, but it works. We can not play these games for any new stuff, like SCSI path_id is doing here, it's a legacy from a time we had we no good idea how things should work. What SCSI path_id is doing here is "I hope it works, let's try ..." software, which is a model that we don't support anymore. :) We need the ATA transport class to export the local port number of the host adapter, and use that. Rebasing in userspace by making assumptions about a global in-kernel instance counter is racy, unreliable and can only work if all things would always happen in strict order, and they don't. Manual driver unbind/bind, parallel hotplug gets into the way of this too simple logic. The proper fix is to teach the kernel to export the numbers directly, or get the numbers in some way, but not by doing readdir() and starting to count and make a guess. Hope you understand that we can not do this for any new stuff, it just does not meet the requirements we have today. Thanks, Kay -- To unsubscribe from this list: send the line "unsubscribe linux-hotplug" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html