Linux block layer
 help / color / mirror / Atom feed
* Seagate Flex SMR
@ 2026-08-21 14:38 Noah Bergbauer
  2026-08-22  6:29 ` Damien Le Moal
  0 siblings, 1 reply; 6+ messages in thread
From: Noah Bergbauer @ 2026-08-21 14:38 UTC (permalink / raw)
  To: dlemoal; +Cc: linux-block

Hello,

Seagate Flex SMR drives are an early generation of hybrid SMR (HSMR) 
drives with a configurable zone layout. There are three main challenges 
towards supporting this in the kernel:

1. Instead of CONV they use SEQ_OR_BEFORE (type 4) zones. These permit 
random writes below the write pointer, so once full they behave exactly 
like CONV.
2. In an (in my opinion rather questionable) attempt at backwards 
compatibility the drives camouflage themselves as non-ZBC. Their ZAC 
support can be detected from a special ATA log page but ZBC commands 
must be emulated via ATA PASS-THROUGH as a SAT may refuse zone commands 
on a non-ZBC drive.
3. The zone configuration works by reporting both SEQ_OR_BEFORE and 
SEQWRITE_REQ zones each for the entire disk, and then for each pair of 
overlapping zones only one of them can be active while the other one 
will be in the offline condition. Right now some parts of the kernel 
(e.g. btrfs) don't play well with offline zones.

I implemented all of this last year and in the end everything was 
working fine under btrfs. Now I would like to attempt to get this into 
the kernel. This would involve rewriting most of my patches from 
scratch. So before I invest a lot of time and effort into doing so, my 
question is: would you as the maintainer even be willing to accept these 
changes into the kernel?

Best,
Noah Bergbauer



^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-08-24 10:26 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-21 14:38 Seagate Flex SMR Noah Bergbauer
2026-08-22  6:29 ` Damien Le Moal
2026-08-23 16:45   ` Noah Bergbauer
2026-08-24  1:36     ` Damien Le Moal
2026-08-24 10:26       ` Noah Bergbauer
2026-08-24  3:03     ` Theodore Tso

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox