Re: [RFC PATCH 1/3] block: add a flag to identify PM request

From: Lin Ming
Date: Tue May 15 2012 - 11:58:06 EST


On Tue, 2012-05-15 at 16:37 +0100, Alan Cox wrote:
> On Tue, 15 May 2012 23:33:05 +0800
> Lin Ming <ming.m.lin@xxxxxxxxx> wrote:
>
> > On Tue, 2012-05-15 at 10:35 -0400, Alan Stern wrote:
> > > On Tue, 15 May 2012, Lin Ming wrote:
> > >
> > > > Add a flag REQ_PM to identify the request is PM related.
> > > > As an example, modify scsi code to use this flag.
> > >
> > > There already is such a flag; you don't need to add one. In fact,
> > > there already are _two_ such flags, and it would be best to remove one
> > > of them. In include/linux/blkdev.h:
> > >
> > > REQ_TYPE_PM_SUSPEND, /* suspend request */
> > > REQ_TYPE_PM_RESUME, /* resume request */
> > >
> > > Apparently they had been used by the old ide driver, but they don't
> > > seem to be used anywhere now.
> >
> > IDE code still uses both types and they are used for system
> > suspend/resume. See generic_ide_suspend and generic_ide_resume.
>
> drivers/ide is obsolete code though so we shouldn't be forcing its needs
> on the future

Do you mean we don't care about breaking ide code?

struct request {
....
unsigned int cmd_flags;
enum rq_cmd_type_bits cmd_type;

Another reason I didn't reuse REQ_TYPE_PM_SUSPEND/REQ_TYPE_PM_RESUME is
because all scsi requests set the cmd_type to REQ_TYPE_BLOCK_PC.

So I think we should add a new cmd_flags(REQ_PM) to tell if it's a
runtime pm request.

Thanks.

--
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/