Ok, Let me rephrase what rohit is exactly trying to question. There is an inode X which has say some N number of data blocks. Now, through his own kernel module and some changes to the file system, he wants to create a new inode Y in the FS and physically copy all the data from the old inode to the new inode.
And release the old inode and its data blocks and update the dentry with the new inode number. PS: The file system remains completely frozen in this time. On Wed, Jan 7, 2009 at 4:02 AM, Om <[email protected]> wrote: > Erik Mouw wrote: >> >> On Tue, 6 Jan 2009 23:16:14 +0530 "Rohit Sharma" <[email protected]> >> wrote: >>> >>> On Tue, Jan 6, 2009 at 11:09 PM, Manish Katiyar <[email protected]> >>> wrote: >>>> >>>> Apart from performance, is there anything else you are worried >>>> about ? >>> >>> Performance is only a bottleneck, >>> this can be done in user land >>> but kernel space solution will be more efficient. >> >> Hardly more efficient. Your main bottleneck will be IO from/to the >> device. If you are worried about copying between kernel and userland, >> you could use the tee(2) and splice(2) system calls. They are relatively >> new, so your system might not yet have manual pages for them. In that >> case, see http://linux.die.net/man/2/tee and >> http://linux.die.net/man/2/splice . > > Hm.. that is pretty enlightening... > Thanks, > Om. > > > -- > To unsubscribe from this list: send an email with > "unsubscribe kernelnewbies" to [email protected] > Please read the FAQ at http://kernelnewbies.org/FAQ > > -- Regards, Sandeep. "To learn is to change. Education is a process that changes the learner." -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to [email protected] Please read the FAQ at http://kernelnewbies.org/FAQ
