On Jul 07, 2008 20:36 -0400, Roger Spellman wrote: > Thanks for this information. > But, I'm seeing this problem on an OST, not on a client. Why would > an OST be doing copy_to/from_user()? On a write, the IB card should > be directly placing the data. So, shouldn't the data already be in > kernel space?
Yes, by all means it shouldn't need a copy on the OST - that is what RDMA is for. You definitely are not running Samba exports on the OST node? I can't imagine what else would be doing this on an OST. Your oprofile output should be able to show the callchain for the busiest callpaths. Alternately, if this is active 25% of the time it may be enough to do "echo p > /proc/sysrq-trigger" 16 times and see what the resulting stacks are. In theory 4 of them should have copy_{to,from}_user() at the top of the stack. > >This is a well-known problem - this kernel function is copying data > >from userspace to the kernel buffers on a write, and vice versa on > >a read. Cheers, Andreas -- Andreas Dilger Sr. Staff Engineer, Lustre Group Sun Microsystems of Canada, Inc. _______________________________________________ Lustre-discuss mailing list Lustre-discuss@lists.lustre.org http://lists.lustre.org/mailman/listinfo/lustre-discuss