From owner-freebsd-hackers@freebsd.org Tue Mar 20 22:14:28 2018 Return-Path: Delivered-To: freebsd-hackers@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id A1EACF4F84B for ; Tue, 20 Mar 2018 22:14:28 +0000 (UTC) (envelope-from zbeeble@gmail.com) Received: from mail-io0-x229.google.com (mail-io0-x229.google.com [IPv6:2607:f8b0:4001:c06::229]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 416676B303 for ; Tue, 20 Mar 2018 22:14:28 +0000 (UTC) (envelope-from zbeeble@gmail.com) Received: by mail-io0-x229.google.com with SMTP id l12so4263447ioc.10 for ; Tue, 20 Mar 2018 15:14:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=snLdHyksS8pwxtKvUJ5cMthKbJ70RgSAPdMO8DLPnhs=; b=DrCja7ElF9UPQfrbOl/qWi3vTo9mITseiosJXvQLcAKnQQeg6MDE+DSUwzQwsO59Jm yegiNCA/Ak0ngb3o0le9pqRvdsqbAIGVk+JhdD8y1E/eRE0YlAyirBAzQG1G4/QUz5Hz zoe340lJb7hdy0m9B96jzaugcvmQdTrBK/YxLXpgfOMW2P6D8p/YMmpjs28qVfRQ1JeO OjnFkQ+Oku75y/ZqGo9b7UauRZi8vwsqcl64HIvFelH9bJSEx8Sjf85G6bpfDZfxFG3I hRFwGZBtrFYmGN0fppFyEJ3w9zegp0al/QiPJlVPFtD6FJOe98ttT760HGhVMUtk9Xr+ utnQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=snLdHyksS8pwxtKvUJ5cMthKbJ70RgSAPdMO8DLPnhs=; b=miAcQY02HtUc3QiqhI85rx+BWq6AVYZlHQmuRavaXLVA2cF2HX5SV+lEcajCzZskmW l8L2ycozQr1MlYZtnHJsm+8GmTTdDXeefFTR00fHVIueGkvmHtyyPTZHfGwPQL+hCR7G AfguyUEZNb4uSMP9C7QSFMTKvzcyVtTRNmWCcnIR50DLWv3nYYzDorK0fNandXH0/iLq cUZVMkGss8Ra0ircunXKOY2xZ4O4UWfuv6Fwv+xVwWTWRdQfKzV7cEcKEeY+5UbOJGcD K8dshF4kgJnXyxGy66V8SBR5pwoZAfB6y4/YsxBDc/NCzk3RY78WDssmBIFMabZ7nlP3 KmcQ== X-Gm-Message-State: AElRT7E9PLcw+03inHUpRklw6Qmn121A0iatJbgyB08JATN8Y861uZ1w MyqSlWknbXYRYyMY0zL32USZqbBrJ+H4DPFN1w== X-Google-Smtp-Source: AG47ELuVE4JSVLdVPrjEqFH7qDwxMgjHWeN7Y3ug8j+OJirLStdd/WRxW+0DxBVdt2oG9PU2jCPp/5S8Jd+dZMeFaaw= X-Received: by 10.107.162.146 with SMTP id l140mr14334987ioe.39.1521584067038; Tue, 20 Mar 2018 15:14:27 -0700 (PDT) MIME-Version: 1.0 Received: by 10.192.139.243 with HTTP; Tue, 20 Mar 2018 15:14:26 -0700 (PDT) From: Zaphod Beeblebrox Date: Tue, 20 Mar 2018 18:14:26 -0400 Message-ID: Subject: Intel RST disk formats and cache drives. To: FreeBSD Hackers Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.25 X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 20 Mar 2018 22:14:28 -0000 I see, and have used, the geom_raid bits to support Intel "software" RAID systems, but the support is imperfect. I have a laptop that has a rotating disk and an msata disk (for cache). I would like to use unused space on the msata disk for an installation of FreeBSD. However, FreeBSD doesn't see the "label" that uses the msata disk as cache. To try and figure things out more, I labelled an extra partition in windows on the msata drive and then booted FreeBSD. FreeBSD sees the extra partition, but not the cache partition. On further examination, it seems the Intel scheme uses blocks at the "end" of the disk and presents windows with a smaller disk. This squares with the system "C" disk. FreeBSD sees the GPT partition as corrupt because the "backup" doesn't exist. It does, but it's not at the "end" of the disk as FreeBSD sees it. So... when using the Cache, the intel driver in windows uses this labelling scheme on both disks. Has anyone looked at supporting this? Would we modify the existing graid to eat these disks, or some part of gpart/glabel? It doesn't exactly fit as there are also configurations where you have a RAID1 with a solid state cache drive. Is it possible we can support these configurations (at least as labels) without supporting the cache semantics?