Re: [ofa-general] Re: [PATCH v4 14/14] QLogic VNIC: sysfs Documentation
From: Patrick McHardy <hidden>
Date: 2008-06-12 16:03:42
Ramachandra K wrote:
On Wed, Jun 11, 2008 at 12:17 PM, Patrick McHardy [off-list ref] wrote:quoted
Since I didn't receive anything but a "its too complex" in response to my previous question, let me ask again: why are you inventing a new sysfs interface (combined with ~15 module parameters) instead of using the existing standard interfaces for this?Can you please elaborate on the standard interfaces you are referring to ? Also as Roland mentioned in the other thread, echo-ing the parameters to sysfs files is a pretty straightforward way to configure the interfaces. Users can setup configuration files to configure QLogic VNIC interfaces specifying the name of the interface, various parameters of the QLogic EVIC gateway target they want to use and a simple user level script parses the configuration file and echoes the parameters to the driver.
We introduced the rtnl_link API to avoid having each driver come up with its own method of creating virtual network devices. Besides the fact that it is the interface intended to be used for this kind of thing and the advantages mentioned in my response to Roland, looking at your interface, there are a few more advantages from integrating this cleanly in iproute: > +echo -n 00066a01de000037 > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/primary_path/ioc_guid > +echo -n fe8000000000000100066a11de000037 > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/primary_path/dgid > +echo -n ffff > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/primary_path/pkey I guess life would be easier for users if those parameters can be generated in userspace or at least looked up in something like the maps in /etc/iproute2/. > +echo -n 100 > /sys/class/infiniband_qlgc_vnic/interfaces/veth1/primary_path/heartbeat I assume thats some kind of timing parameter. iproute would allow to specify the (undocumented) unit and convert it appropriately. In any case, things like tx_csum and rx_csum definitely do not belong in this interface.
quoted
quoted
+# An interface can be deleted by echoing the name of the interface to be deleted +# to delete_vnic file +echo -n veth1 > /sys/class/infiniband_qlgc_vnic/interfaces/delete_vnicThis clearly shows the advantage of being able to use echo for configuration.quoted
From this statement, I thought you agreed with the advantage of echo forconfiguration.
Sorry, that wasn't meant seriously :)