namespace question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I don't believe the following to be an error, but I am curious how it occurs:

Running a kernel module which uses d_path iteratively over the mnt_mountpoint members of the vfsmount structures which hang off of current->namespace->list, I get a curious doubling of the mount point names:

rootfs / rootfs
/dev2/root2 / ext3
proc /proc/proc proc
sysfs /sys/sys sysfs
devpts /dev/pts/dev/pts devpts
tmpfs /dev/shm/dev/shm tmpfs
/dev/hda1 /boot/boot ext2
usbfs /proc/bus/usb/bus/usb usbfs

Is there any simple explanation? I have cross-checked and it appears _not_ be be an artifact of my programming, and I have no CLONE_NEWNS processes. Using the same algorithm with mnt_root produces correct results.  

The code follows:

        char *path;
...
        namespace = current-> namespace
        down_read(&namespace->sem);
        list_for_each_entry(vfsmnt_ptr,&namespace->list,mnt_list) {
                mount = mntget(vfsmnt_ptr);
                dentry = dget(vfsmnt_ptr->mnt_mountpoint);

                device = vfsmnt_ptr->mnt_devname ? vfsmnt_ptr->mnt_devname : "none";

                path = d_path(dentry, mount, buf, PAGE_SIZE);
                error = PTR_ERR(path);
                if(IS_ERR(path)) {
                        dput(dentry);
                        mntput(mount);
                        goto out;
                }

                fstype = vfsmnt_ptr->mnt_sb->s_type->name;
                printk("%s\t%s\t%s\n",device,path,fstype);
---

$ uname -a
Linux nectarsys 2.6.10-1-k7 #1 Fri Mar 11 03:13:32 EST 2005 i686 GNU/Linux




-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux