Hi, I am updating a network driver to pass data to and from a sync card in small chunks. So, for example, when my hard_start_xmit function is called, I am given an skb that points to some data, say of 4K bytes, and I want to pass it down to the hardware in 1K chunks. Therefore I will need 4 "write" operations to the card, each of which will generate an interrupt to indicate that they are complete. It looks to me as though the skb-pull() function is what I want. I can pull each 1K chunk off at a time. Is it really that simple? However, an element of doubt has been put in my mind by the description of the function in the Linux Device Drivers book ("Removes data from the head of the packet. The driver won't need to use this function, but is included for completeness.") Hopefully, it is complete. Is there some example code somewhere that will help? Does anyone know of any gottcha's? Will I be able to use skb_push() function to assemble a 4K frame in a similar manner on the receive side? The Kernel will be a 2.4 version, but it may also be required to get this working on a 2.2 Kernel also. Thanks Kevin - : send the line "unsubscribe linux-net" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html