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 <om.turyx@xxxxxxxxx> wrote: > Erik Mouw wrote: >> >> On Tue, 6 Jan 2009 23:16:14 +0530 "Rohit Sharma" <imreckless@xxxxxxxxx> >> wrote: >>> >>> On Tue, Jan 6, 2009 at 11:09 PM, Manish Katiyar <mkatiyar@xxxxxxxxx> >>> 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 ecartis@xxxxxxxxxxxx > 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 ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ