From owner-freebsd-scsi@FreeBSD.ORG Sat Nov 10 12:59:35 2007 Return-Path: Delivered-To: freebsd-scsi@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 48F0716A41B; Sat, 10 Nov 2007 12:59:35 +0000 (UTC) (envelope-from danny@cs.huji.ac.il) Received: from cs1.cs.huji.ac.il (cs1.cs.huji.ac.il [132.65.16.10]) by mx1.freebsd.org (Postfix) with ESMTP id E6A3913C4B6; Sat, 10 Nov 2007 12:59:34 +0000 (UTC) (envelope-from danny@cs.huji.ac.il) Received: from pampa.cs.huji.ac.il ([132.65.80.32]) by cs1.cs.huji.ac.il with esmtp id 1IqpIS-0009Ka-Mb; Sat, 10 Nov 2007 14:18:44 +0200 X-Mailer: exmh version 2.7.2 01/07/2005 with nmh-1.2 To: Scott Long In-reply-to: <4732C7DC.60902@samsco.org> References: <47300ADE.5070506@mansionfamily.plus.com> <4730C8EC.7050002@mansionfamily.plus.com> <4732C7DC.60902@samsco.org> Comments: In-reply-to Scott Long message dated "Thu, 08 Nov 2007 01:25:00 -0700." Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Sat, 10 Nov 2007 14:18:44 +0200 From: Danny Braniss Message-ID: Cc: freebsd-scsi@freebsd.org, Ivan Voras Subject: Re: iSCSI in 7.0 X-BeenThere: freebsd-scsi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SCSI subsystem List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 10 Nov 2007 12:59:35 -0000 > Ivan Voras wrote: > > James Mansion wrote: > > > >> So I guess the question really is - are you saying that in this case > >> all kernel memory is non-pageable - or that you know that for the > >> IP stack and iSCSI initiator, all the memory is non-pageable? > > > > If you don't get a definite answer here, you might want to ask that > > particular questions on hackers @ freebsd.org or architecture @ > > freebsd.org to get a wider audience of people who deal with low-level > > systems like the VM. > > > > Kernel text (executable code) and kernel data (malloc, zone, and module > data segment memory) are non-pageable. Kernel stacks used to be > pageable, but there was discussion some time ago about removing that > feature and I don't recall the outcome. > > The real danger to memory deadlocks is mallocing in the I/O path. Even > though kernel memory isn't pageable, the VM may need to page out some > userland pages to satisfy a malloc. If that page-out goes through an > I/O path that also needs to do a malloc, you get a deadlock. > > The CAM layer is free of these deadlocks, as are most storage drivers. > I don't know if the iscsi-initiator driver is or not, I haven't > inspected it closely for this. the iscsi-initiator does some malloc's but very early in the initialization process. > Unfortunately, the GEOM block layer is > not free of this deadlock, so this whole discussion is mostly academic > (the GEOM problem is small and very hard to trigger since it uses the > zone allocator, but problems have been observed in real-world > situations, which is a shame). > > Scott > _______________________________________________ > freebsd-scsi@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-scsi > To unsubscribe, send any mail to "freebsd-scsi-unsubscribe@freebsd.org" >