The ioctl request was designed to get all needed information through socket from usermode. But the same patterns with tricks was used at kernel by linux libcfs. The patch changes this behavior from socket to kernel socket. For libcfs_sock_ioctl tricks with usermode call removed, kernel_sock_ioctl is used instead. But this call handle SIOCGIFADDR and SIOCGIFNETMASK. For SIOCGIFFLAGS we take device flag directly. Function libcfs_ipif_enumerate() which are used SIOCGIFCONF command totally rewriten to get device names without ioctl requests.