Setting up USB networking.
Setup SSH on the device (either dropbear or openssh) by following 
Please note that first you need to run insmod, ifup and then connect the USB cable to the PC and then do ifdown, ifup on PC. If you connect the device to PC without doing insmod, ifup, it will be treated as a memory device.
On Debian Lenny, you don't need to do any insmod, but on Debian etch I needed to do insmod net2240.ko or something like that.
Setting up Oprofile on the device.
The following was not obvious to me from the description: I went with the option of booting with the kernel from PC. To do this, Power of N800, connect the USB cable, run the flasher command and then power on the device. Flasher command will wait till the N800 is powered up.
You must do
apt-get install oprofile
on N800. From description I felt just booting with oprofile enabled kernel is enough, but this is a mandatory step which installs oprofile tools.
A. Install NFS server on your PC.
apt-get install nfs-kernel-server edit /etc/exports and add a line like the the following:
/scratchbox/users/skumar/home/skumar 192.168.2.15(rw,async,no_root_squash,no_subtree_check) /etc/init.d/nfs-common start /etc/init.d/nfs-kernel-server start
B. Install NFS client on your device. Follow 
C. Mount the NFS You might want to mount as /home/<your pc username> so that you will not run into path related issues while running binaries, debugging, etc.