Re: [PATCH 2/8] block: Introduce the blk_rq_is_seq_zone_write() function

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jan 09, 2023 at 03:52:23PM -0800, Bart Van Assche wrote:
> On 1/9/23 15:38, Damien Le Moal wrote:
> > On 1/10/23 08:27, Bart Van Assche wrote:
> > > +static inline bool blk_rq_is_seq_zone_write(struct request *rq)
> > > +{
> > > +	switch (req_op(rq)) {
> > > +	case REQ_OP_WRITE:
> > > +	case REQ_OP_WRITE_ZEROES:
> > 
> > REQ_OP_ZONE_APPEND ?
> 
> I will add REQ_OP_ZONE_APPEND.
> 

Hello Bart, Damien,

+       if (blk_queue_pipeline_zoned_writes(rq->q) &&
+           blk_rq_is_seq_zone_write(rq))
+               cmd->allowed += rq->q->nr_requests;

Considering that this function, blk_rq_is_seq_zone_write(), only seems to
be used to determine if a request should be allowed to be retried, I think
that it is incorrect to add REQ_OP_ZONE_APPEND, since a zone append
operation will never result in a ILLEGAL REQUEST/UNALIGNED WRITE COMMAND.

(If this instead was a function that said which operations that needed to
be held back, then you would probably need to include REQ_OP_ZONE_APPEND,
as otherwise the reordered+retried write would never be able to succeed.)


Kind regards,
Niklas



[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux