iSCSI in 7.0

James Mansion james at mansionfamily.plus.com
Mon Nov 5 22:32:52 PST 2007


(Apologies for the bad quoting: I had to copy the response from a
web view of the archive since I don't seem to have received anything
except the 'Current problems' mail.  Weird.)

Tom Samplonius wrote:

 >Well, since it is a kernel mode driver, it has to be use kernel memory.

Yes, but ...

 >There should be no issue with a swap deadlock, because the iSCSI client
 >can't get more memory until some memory is swapped in. But FreeBSD
 >does not generally like running out kernel memory either.

That does not *necessarily* follow, which is the crux of my question.

Most kernels will have a pool for non-pageable memory and allocate from
a pageable pool too, even though the memory is 'kernel memory' and not
addressable from any user context.  FreeBSD can run with a very lean
kernel footprint (which is the reason for my interest) and yet support
C10k systems with kqueue without static reconfiguration of the kernel,
and its hard to see how this could possibly be the case with a fully static
allocation.

In many cases thread stacks, socket send and receive buffers, pipe buffers
etc *will* be pageable.  That's the case for the buffers used to receive and
process IP datagrams in Linux I believe.

 > I think Linux is using a kernel mode driver too. Well, there were 
several iSCSI clients
 > when I checked. I'm not sure which you are looking at.

I think your reasoning is flawed here, for the same reason.

Now, it may be that FreeBSD does have a lot more non-pageable allocation
and is able to reassemble incoming IP packets and process iSCSI data
without any allocation from pageable memory.  I believe its not normally 
a trivial
problem unless you are prepared to perform an extra copy operation.

Do you know this for a fact?

 > AoE sounds completely retarded. I hope it disappears before people 
think it is actually something serious.

Well, that's simply opinion.  It is certainly a simplified approach, but 
I think to suggest
that it is entirely without merit is bogus.  And I have discussed the 
issue with Linux IP
memory management and swap support with the Coraid developer - its a known
'issue' (or non-issue for Linus it seems: its only swap rather than net 
boot that's affected
after all, and most blades do come with disks).

James



More information about the freebsd-scsi mailing list