--- fs/read_write.c	2007-02-04 20:44:54.000000000 +0200
+++ fs/read_write.c.voron	2007-04-13 17:03:54.000000000 +0300
@@ -776,8 +776,16 @@
 		count = max - pos;
 	}
 
-	retval = in_file->f_op->sendfile(in_file, ppos, count, file_send_actor, out_file);
+	if(out_file->f_flags & O_NONBLOCK) {
+	    printk(KERN_WARNING "ask %d \t",count);
+	    count=(count>128000)?128000:count;
+	    printk(KERN_WARNING "real %d\n",count);
+	}else{
+	    printk(KERN_WARNING "can't see nonblock in flags %d",out_file->f_flags);
+	}
 
+	retval = in_file->f_op->sendfile(in_file, ppos, count, file_send_actor, out_file);
+	printk(KERN_WARNING "sended %d bytes\n",retval);
 	if (retval > 0) {
 		current->rchar += retval;
 		current->wchar += retval;
