From mboxrd@z Thu Jan 1 00:00:00 1970 From: Xiaobo Chi Subject: [PATCH v2] vhost: fix eventfd_link.ko insertion failure problem Date: Wed, 11 Nov 2015 14:57:23 +0800 Message-ID: <1447225043-15404-1-git-send-email-xiaobo.chi@nokia.com> References: <1446789877-11656-1-git-send-email-xiaobo.chi@nokia.com> Cc: Xiaobo Chi To: dev@dpdk.org Return-path: Received: from demumfd002.nsn-inter.net (demumfd002.nsn-inter.net [93.183.12.31]) by dpdk.org (Postfix) with ESMTP id 9E8FE8DA6 for ; Wed, 11 Nov 2015 07:57:27 +0100 (CET) In-Reply-To: <1446789877-11656-1-git-send-email-xiaobo.chi@nokia.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Problem:if I firstly insert my kmod_test.ko, then insert eventfd_link.ko, error will happen with hint " Device or resource busy". This is because the default minor device number, 0, has been occupied by my kmod_test.ko . root@distro:~/test$ lsmod Module Size Used by kmod_test 927 0 vboxsf 35930 4 vboxguest 222130 1 vboxsf microcode 10315 0 autofs4 25051 0 root@distro:~/test$ insmod ./eventfd_link.ko insmod: ERROR: could not insert module ./eventfd_link.ko: Device or resource busy Explanation: For miscdevices, the major device_no is same, so the minor device_no should be set to ditinguish different misc devices; if not set the minor, it may fail while insmod due to the default minor value, 0, has been used by other miscdevice. MISC_DYNAMIC_MINOR means to let Linux kernel dynamically assign one minor devide number while loading. Signed-off-by: Xiaobo Chi --- lib/librte_vhost/eventfd_link/eventfd_link.c | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/librte_vhost/eventfd_link/eventfd_link.c b/lib/librte_vhost/eventfd_link/eventfd_link.c index c54a938..4b05b5a 100644 --- a/lib/librte_vhost/eventfd_link/eventfd_link.c +++ b/lib/librte_vhost/eventfd_link/eventfd_link.c @@ -249,6 +249,7 @@ static const struct file_operations eventfd_link_fops = { static struct miscdevice eventfd_link_misc = { + .minor = MISC_DYNAMIC_MINOR, .name = "eventfd-link", .fops = &eventfd_link_fops, }; -- 1.9.4.msysgit.2