Date: Fri, 19 Dec 2014 02:13:19 +0000 From: "Pokala, Ravi" <rpokala@panasas.com> To: John-Mark Gurney <jmg@funkthat.com> Cc: "freebsd-geom@freebsd.org" <freebsd-geom@freebsd.org> Subject: Re: Converting LBAs to byte offsets through the GEOM stack Message-ID: <D0B8C76C.127E55%rpokala@panasas.com> In-Reply-To: <20141219015210.GY25139@funkthat.com> References: <D0B89F30.127DAE%rpokala@panasas.com> <20141219015210.GY25139@funkthat.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> I've only done this manually... It isn't too hard, as all the >partitioning schemes are simple offsets, and the stripe should be >regular... The *partitioning schemes*, yes. But once you start building up more layers, it gets complicated. > The issue w/ manually mapping, is that you might loose a race w/ the >mirror when writing out new data... Yeah, I described it the way I did because I'm trying to avoid discussing some proprietary details. :-P It was "close enough" for you to get the idea what I was talking about. > I was thinking it would be good for gmirror to grow a mode that when it >detects a pending sector or offline sector, to figure out via some >mapping, what data needed to be fixed, and attempt to read/write the data >back... What you're talking about would be called "sector resilvering", or perhaps "on-the-fly resilvering" - rebuilding the mirror for just sectors that we know are bad, without having to re-mirror the entire device. Panasas actually implemented that in gmirror on our old 7.2-RELEASE-based system, and we are planning on porting it forward to a 10.1-RELEASE-based (or better still -CURRENT-based) system in the near future; when we do that, we'll submit it. > Even having a simple mode that upon read error, would read from the >other drive and write back would be good... Yes, that's exactly what we (Panasas) implemented. -Ravi
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?D0B8C76C.127E55%rpokala>