Jens, Ping ? On 2020/01/09 14:04, Damien Le Moal wrote: > null_zone_write() only allows writing empty and implicitly opened zones. > Writing to closed and explicitly opened zones must also be allowed and > the zone condition must be transitioned to implicit open if the zone > is not explicitly opened already. > > Fixes: da644b2cc1a4 ("null_blk: add zone open, close, and finish support") > Signed-off-by: Damien Le Moal <damien.lemoal@xxxxxxx> > --- > drivers/block/null_blk_zoned.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/block/null_blk_zoned.c b/drivers/block/null_blk_zoned.c > index 5cf49d9db95e..ed34785dd64b 100644 > --- a/drivers/block/null_blk_zoned.c > +++ b/drivers/block/null_blk_zoned.c > @@ -129,11 +129,13 @@ static blk_status_t null_zone_write(struct nullb_cmd *cmd, sector_t sector, > return BLK_STS_IOERR; > case BLK_ZONE_COND_EMPTY: > case BLK_ZONE_COND_IMP_OPEN: > + case BLK_ZONE_COND_EXP_OPEN: > + case BLK_ZONE_COND_CLOSED: > /* Writes must be at the write pointer position */ > if (sector != zone->wp) > return BLK_STS_IOERR; > > - if (zone->cond == BLK_ZONE_COND_EMPTY) > + if (zone->cond != BLK_ZONE_COND_EXP_OPEN) > zone->cond = BLK_ZONE_COND_IMP_OPEN; > > zone->wp += nr_sectors; > -- Damien Le Moal Western Digital Research