Re: [PATCH 0/4, v14] PCI, ACPI: Physical PCI slot objects

From: Kenji Kaneshige
Date: Wed Jun 11 2008 - 02:36:01 EST


Alex-san,

Alex Chiang wrote:
Hi Kenji-san,

* Kenji Kaneshige <kaneshige.kenji@xxxxxxxxxxxxxx>:
Alex-san, Jesse-san,

Note how we're checking get_slot_from_name. That should prevent
your scenario (b) that you describe above.

Maybe the diff was confusing, but I am definitely not removing
your code. I'm simply adding on top of a86161b3134465f, and not
removing it.

I have to apologize. I was using v14 unintentionally on my test
environment yesterday, while I thought I was using v15.

I think v15 will prevent senario (b), though I have not tried it
yet. I'll check it again.

You can check either v15, which applies to Stephen Rothwell's
linux-next, or you can check v16, which applies to Jesse's
linux-next.

The only difference is in patch 1/3, where we are touching
fakephp, which is not the patch that is confusing us here. :)

And I agree that Alex-san's patch go to Jesse-san's linux-next.
If I found something after that, I'll report it or send a
incremental patch. To tell the truth, I have several patches
that are waiting for Alex-san's patch to be merged to linux-next:)

Yeah, I think incremental patches from here out are good.

I made a below patch to prevent (b), please take a look. And could you
please consider merging it to "[PATCH 2/3] Introduce pci_slot" in your
latest series.
Ok, now this is very confusing to me. Why is this patch so
different from a86161b3134465f?

Are you saying the call to get_slot_from_name() is no longer
sufficient?

Though I might misunderstand something about your patch, I thought
get_slot_from_name() approach would break what your patch is trying
to do.

My understanding about your patch is as follows:

(x) If multiple hotplug drivers try to register the same slot (try
to handle the same slot, in other words), pci_hp_register()
returns -EBUSY.

(y) If one or more drivers try to assign the same name to multiple
slots, pci_hp_register() returns -EEXIST.

That was the original intent, but I think that returning -EEXIST
for (x) should be sufficient. If it turns out we really do want
-EBUSY for (x), we can add your latest fixup patch later.


Ok, I understood. Thank you for clarification. I also think your
latest patch is sufficient.

Just in case, I would like to tell you the fact that (x) has following
two cases, though I think you already recognized about it.

(x-1) If multiple hotplug drivers try to handle the same slot with
different names, pci_hp_register() returns -EBUSY.

(x-2) If multiple hotplug drivers try to handle the same slot with
the same name, pci_hp_register() returns -EEXIST.

Thanks,
Kenji Kaneshige

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/