On Wed, 28 Nov 2012 02:55:30 +
"Yangbin (Robin)" wrote:
> Hi all:
>
> I write a kernel module which make a dir and create a file in proc file
> system.
> I use proc_mkdir() and create_proc_entry() in init and use
> remove_proc_entry() in exit.
> Now I got a problem during my test:
> 1. open terminal A, insmod and cd into the dir the module created in proc
> 2. open terminal B. rmmod and insmod angain.
> Then I cannot see the file which should be created by the module, unless
> terminal A quit the dir.
>
> This will be ok with regale file system like ext3, one teminal's operation
> will not affert others.
> Is this a bug or not?
It's not. You are doing the same as this
mkdir /tmp/example
cd /tmp/example
rmdir /tmp/example
mkdir /tmp/example
in Unix like systems the file handles and current directory references
apply to the object itself not to the path.
When yo reload the driver you create a new and different directory that
has the same name but is not the same thing.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/