Cathy Zhou wrote:
> Hi,
>
> As we already discussed on this alias, we cannot completely get rid of 
> the dlpi_open() fallback logic (to open the /dev devices when opening 
> the /dev/net links fails) because:
>
> a. the vni interfaces only exist in /dev
> b. the ib (infiniband) driver is not ported to GLDv3 yet, so that it 
> only exists in /dev
>
> But falling back to open the /dev devices have problems too. Assume 
> the scenario:
>
> a. one create a VLAN using a vanity name:
>
> # dladm create-vlan -l bge1 -v 1 vlan1
>
> b. then on tries to plumb this VLAN using the VLAN ppa name, it should 
> fail. But it actually succeed in current clearview bits:
>
> # ifconfig bge1001 plumb
>
> As opening /dev/net/bge1001 fails with the error code EEXIST, it falls 
> back to open the bge1001 in /dev, and the style-2 open succeed.
>
> I can think two solutions:
>
> a. using strcmp(), and only allow fallback for certain drivers, 
> including ib and vni.
>
> b. only fallback when opening /dev/net/<ifN> returns ENOENT.
>
> I think b would solve the problem in this scenario but it might not 
> cover all cases.
>
> What do you think?
 I think solution b is better. Adding more strcmp() if we find more 
drivers seems more problematic.

-sagun


-- 

Sagun Shakya
781.442.7344/ X27344
sagun.shakya at sun.com



Reply via email to