On Mar 27, 2010, at 2:41 AM, Daniel Carosone wrote:

> On Sat, Mar 27, 2010 at 01:03:39AM -0700, Erik Trimble wrote:
> 
>> You can't share a device (either as ZIL or L2ARC) between multiple pools.
> 
> Discussion here some weeks ago reached suggested that an L2ARC device
> was used for all ARC evictions, regardless of the pool. 
> 
> I'd very much like an authoritative statement (and corresponding
> documentation updates) if this was correct.

I'm responsible for propagating this false rumor. It is the result of some
testing in which my analysis was flawed.  The authoritative response is,
as usual, in the source.

l2arc_write_eligible() checks the spa (read: zpool) to see if the buffer belongs
to it. If not, the buffer is not sent to the l2arc. See the source on or near
http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/fs/zfs/arc.c#3729

I still think this is a useful thing and believe it can be implemented 
relatively
easily.  I'm thinking along the lines of having a property for the pool to share
the cache.  Besides handling the property itself, it looks like there are only a
few (perhaps as few as 5) lines of code needed to change the eligibility and
handle flushing.  However, this idea may collide with the persistent l2arc 
project.
 -- richard-who-would-prefer-to-eat-his-eggs-rather-than-wear-them

ZFS storage and performance consulting at http://www.RichardElling.com
ZFS training on deduplication, NexentaStor, and NAS performance
Las Vegas, April 29-30, 2010 http://nexenta-vegas.eventbrite.com 





_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to