Messages in this thread | | | Date | Wed, 30 Oct 2013 00:57:32 +0530 | From | Raghavendra K T <> | Subject | Re: [PATCH 3.12-rc7] KVM: Fix modprobe failure for kvm_intel/kvm_amd |
| |
Adding Greg/AI too since we touch debugfs code. [...] >> >> sudo modprobe kvm_amd >> modprobe: ERROR: could not insert 'kvm_amd': Bad address > > "Bad address"? Christ people, are you guys making up error numbers > with some kind of dice-roll? I can just see it now, somebody sitting > there with a D20, playing some kind of kernel-specific D&D, and > rolling a ten means that you get to slay the orc, and pick an error > number of EFAULT for some random kernel function. Because quite > frankly, "random dice roll" is the _only_ thing that explains "Bad > address" sufficiently. > > Please, whoever wrote virt/kvm/kvm_main.c:: kvm_init_debug(), WTF? > EFAULT means "user passed in an invalid virtual address pointer", > which is why the error string is "Bad address". It makes absolutely NO > SENSE here. Perhaps EEXIST or EBUSY. >
Right. In current scenario it should have been EEXIST :(.
debugfs_create_dir() currently returns NULL dentry on both EEXIST, ENOMEM ... cases.
Could one solution be cascading actual error that is lost in fs/debugfs/inode.c:__create_file(), so that we could take correct action in case of failure of debugfs_create_dir()?
(ugly side is we increase total number of params for __create_file to 6). or I hope there could be some better solution.
| |