« Previous | Next » 

Revision 322fd48a

ID322fd48afbed1ef7b834ac343a0c8687bcb33695

Added by Michael S. Tsirkin about 10 years ago

e1000: verify we have buffers, upfront

The spec says: Any descriptor with a non-zero status byte has been
processed by the hardware, and is ready to be handled by the software.

Thus, once we change a descriptor status to non-zero we should
never move the head backwards and try to reuse this
descriptor from hardware.

This actually happened with a multibuffer packet
that arrives when we don't have enough buffers.

Fix by checking that we have enough buffers upfront
so we never need to discard the packet midway through.

Signed-off-by: Michael S. Tsirkin <>
Acked-by: Alex Williamson <>
Acked-by: Kevin Wolf <>
Signed-off-by: Aurelien Jarno <>

Files

  • added
  • modified
  • copied
  • renamed
  • deleted

View differences