it should be. writing should copy the buffer into the kernel buffer and afterwards the buffer can be reused. even if not everything could be written we currently don't store the remaining direct buffer for later but we will instead copy the remaining again into a direct buffer when the write can continue. i guess that's not yet the best strategy but the simplest.