add note about the need for deadlock-free sk_buff allocation

Signed-off-by: Ed L. Cashin <[EMAIL PROTECTED]>

diff -uprN a/Documentation/aoe/todo.txt b/Documentation/aoe/todo.txt
--- a/Documentation/aoe/todo.txt        1969-12-31 19:00:00.000000000 -0500
+++ b/Documentation/aoe/todo.txt        2005-03-10 12:19:57.000000000 -0500
@@ -0,0 +1,14 @@
+There is a potential for deadlock when allocating a struct sk_buff for
+data that needs to be written out to aoe storage.  If the data is
+being written from a dirty page in order to free that page, and if
+there are no other pages available, then deadlock may occur when a
+free page is needed for the sk_buff allocation.  This situation has
+not been observed, but it would be nice to eliminate any potential for
+deadlock under memory pressure.
+
+Because ATA over Ethernet is not fragmented by the kernel's IP code,
+the destructore member of the struct sk_buff is available to the aoe
+driver.  By using a mempool for allocating all but the first few
+sk_buffs, and by registering a destructor, we should be able to
+efficiently allocate sk_buffs without introducing any potential for
+deadlock.


-- 
  Ed L. Cashin <[EMAIL PROTECTED]>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to