Re: 2.6.15-mm2

From: Tejun Heo
Date: Thu Jan 12 2006 - 09:19:09 EST


Jens Axboe wrote:
On Thu, Jan 12 2006, Tejun Heo wrote:

4. a REQ_SPECIAL | REQ_BLOCK_PC | REQ_QUIET request gets queued at
the head of the queue. (I have no idea where this comes from. sd
driver doesn't even handle PC requests. It will be just failed.
Some kind of hardware management stuff trying to probe MMC
devices?)


But it does, sd understands these just fine (see references to
blk_pc_request()).

It could be coming from someone doing a blkdev_issue_flush, that will
even cause sd to queue such a request internally. So it isn't
necessarily from user space (it would have to be through SG_IO at that
point), and Reubens boot log doesn't have any evidence of anything of
that nature being started. So I'm guessing it's the flush, raid1
propagates these flushes to the bottom devices when it sees one.

Your analysis looks correct though, Reuben looking forward to hearing
whether this fixes your boot hang!


Ah... you're right. I was only staring at the !blk_fs_request() test in sd_init_command(). It has early exit for blk_pc_request() of course. It needs to handle SG_IO's & flushes. :-p

--
tejun
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/