Subject: Re: [RFC][PATCH -mm take2 3/5] add interface for netconsole using sysfs

From: Stephen Hemminger <[email-masked]>
Date: Fri, 29 Dec 2006 21:16:32 -0800

Keiichi KII wrote:
> From: Keiichi KII <[email-masked]>
>
> This patch contains the following changes.
>
> create a sysfs entry for netconsole in /sys/class/misc.
> This entry has elements related to netconsole as follows.
> You can change configuration of netconsole(writable attributes such as IP
> address, port number and so on) and check current configuration of netconsole.
>
> -+- /sys/class/misc/
>  |-+- netconsole/
>    |-+- port1/
>    | |--- id          [r--r--r--]  unique port id
>    | |--- remove      [-w-------]  if you write something to "remove",
>    | |                             this port is removed.
>   
IMHO this kind of "magic side effect" is a misuse of sysfs. and would
make proper locking
impossible. How do you deal with the dangling reference to the
netconsole object?
f= open (... netconsole/port1/remove")
write(f, "", 1)
sleep(2)
write(f, "", 1) .... this probably would crash...

Maybe having a state variable/sysfs file so you could setup the port and
turn it on/off with write.
>    | |--- dev_name    [r--r--r--]  network interface name
>   

Please don't use dev_name, instead use a a symlink. You see if the
device is renamed,
the dev_name will be wrong, but the symlink to the net_device kobject
should be okay.
>    | |--- local_ip    [rw-r--r--]  source IP to use, writable
>    | |--- local_port  [rw-r--r--]  source port number for UDP packets, writable
>    | |--- local_mac   [r--r--r--]  source MAC address
>    | |--- remote_ip   [rw-r--r--]  port number for logging agent, writable
>    | |--- remote_port [rw-r--r--]  IP address for logging agent, writable
>    | ---- remote_mac  [rw-r--r--]  MAC address for logging agent, writable
>    |--- port2/
>    |--- port3/
>    ...
>
> Signed-off-by: Keiichi KII <[email-masked]>
> Signed-off-by: Takayoshi Kochi <[email-masked]>
>