178 master->main_device.dev->dev_addr, ETH_ALEN); |
178 master->main_device.dev->dev_addr, ETH_ALEN); |
179 } else { |
179 } else { |
180 memcpy(data.devices[0].address, master->main_mac, ETH_ALEN); |
180 memcpy(data.devices[0].address, master->main_mac, ETH_ALEN); |
181 } |
181 } |
182 data.devices[0].attached = master->main_device.dev ? 1 : 0; |
182 data.devices[0].attached = master->main_device.dev ? 1 : 0; |
|
183 data.devices[0].link_state = master->main_device.link_state ? 1 : 0; |
183 data.devices[0].tx_count = master->main_device.tx_count; |
184 data.devices[0].tx_count = master->main_device.tx_count; |
184 data.devices[0].rx_count = master->main_device.rx_count; |
185 data.devices[0].rx_count = master->main_device.rx_count; |
185 |
186 |
186 if (master->backup_device.dev) { |
187 if (master->backup_device.dev) { |
187 memcpy(data.devices[1].address, |
188 memcpy(data.devices[1].address, |
188 master->backup_device.dev->dev_addr, ETH_ALEN); |
189 master->backup_device.dev->dev_addr, ETH_ALEN); |
189 } else { |
190 } else { |
190 memcpy(data.devices[1].address, master->backup_mac, ETH_ALEN); |
191 memcpy(data.devices[1].address, master->backup_mac, ETH_ALEN); |
191 } |
192 } |
192 data.devices[1].attached = master->backup_device.dev ? 1 : 0; |
193 data.devices[1].attached = master->backup_device.dev ? 1 : 0; |
|
194 data.devices[1].link_state = master->backup_device.link_state ? 1 : 0; |
193 data.devices[1].tx_count = master->backup_device.tx_count; |
195 data.devices[1].tx_count = master->backup_device.tx_count; |
194 data.devices[1].rx_count = master->backup_device.rx_count; |
196 data.devices[1].rx_count = master->backup_device.rx_count; |
195 up(&master->device_sem); |
197 up(&master->device_sem); |
196 |
198 |
197 if (copy_to_user((void __user *) arg, &data, sizeof(data))) |
199 if (copy_to_user((void __user *) arg, &data, sizeof(data))) |