linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Sebastian Capella <sebastian.capella@linaro.org>
To: Joe Perches <joe@perches.com>
Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org,
	linux-pm@vger.kernel.org, linaro-kernel@lists.linaro.org,
	patches@linaro.org, Pavel Machek <pavel@ucw.cz>,
	Len Brown <len.brown@intel.com>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>
Subject: Re: [PATCH v7 2/3] trivial: PM / Hibernate: clean up checkpatch in hibernate.c
Date: Tue, 04 Feb 2014 14:05:34 -0800	[thread overview]
Message-ID: <20140204220534.28287.21049@capellas-linux> (raw)
In-Reply-To: <1391548862.2538.34.camel@joe-AO722>

Quoting Joe Perches (2014-02-04 13:21:02)
> On Tue, 2014-02-04 at 12:43 -0800, Sebastian Capella wrote:
> > Checkpatch reports several warnings in hibernate.c
> > printk use removed, long lines wrapped, whitespace cleanup,
> > extend short msleeps, while loops on two lines.
> []
> > diff --git a/kernel/power/hibernate.c b/kernel/power/hibernate.c
> []
> > @@ -765,7 +762,7 @@ static int software_resume(void)
> >       if (isdigit(resume_file[0]) && resume_wait) {
> >               int partno;
> >               while (!get_gendisk(swsusp_resume_device, &partno))
> > -                     msleep(10);
> > +                     msleep(20);
> 
> What good is changing this from 10 to 20?
> 
> > @@ -776,8 +773,9 @@ static int software_resume(void)
> >               wait_for_device_probe();
> >  
> >               if (resume_wait) {
> > -                     while ((swsusp_resume_device = name_to_dev_t(resume_file)) == 0)
> > -                             msleep(10);
> > +                     while ((swsusp_resume_device =
> > +                                     name_to_dev_t(resume_file)) == 0)
> > +                             msleep(20);
> 
> here too.

Thanks Joe!

I'm happy to make whatever change is best.  I just ran into one
checkpatch warning around a printk I indented and figured I'd try to get
them all if I could.

The delays in question didn't appear timing critical as both are looping
waiting for device discovery to complete.  They're only enabled when using
the resumewait command line parameter.

Is this an incorrect checkpatch warning?  The message from checkpatch
implies using msleep for smaller values can be misleading.

WARNING: msleep < 20ms can sleep for up to 20ms; see
Documentation/timers/timers-howto.txt
+  msleep(10);

From Documentation/timers/timers-howto.txt

SLEEPING FOR ~USECS OR SMALL MSECS ( 10us - 20ms):                       
  * Use usleep_range                                               

  - Why not msleep for (1ms - 20ms)?                               
    Explained originally here:                               
      http://lkml.org/lkml/2007/8/3/250                
    msleep(1~20) may not do what the caller intends, and     
    will often sleep longer (~20 ms actual sleep for any     
    value given in the 1~20ms range). In many cases this     
    is not the desired behavior. 

When I look at kernel/timers.c in my current kernel, I see msleep is
using msecs_to_jiffies + 1, and on my current platform this appears to
be ~20msec as the jiffies are 10ms.

Thanks,

Sebastian

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2014-02-04 22:05 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-04 20:43 [PATCH v7 0/3] hibernation related patches Sebastian Capella
2014-02-04 20:43 ` [PATCH v7 1/3] mm: add kstrdup_trimnl function Sebastian Capella
2014-02-05 21:50   ` Andrew Morton
2014-02-05 22:55     ` Sebastian Capella
2014-02-05 23:01       ` Andrew Morton
2014-02-06 23:48         ` Sebastian Capella
2014-02-04 20:43 ` [PATCH v7 2/3] trivial: PM / Hibernate: clean up checkpatch in hibernate.c Sebastian Capella
2014-02-04 21:21   ` Joe Perches
2014-02-04 22:05     ` Sebastian Capella [this message]
2014-02-04 23:45       ` Joe Perches
2014-02-04 21:36   ` Rafael J. Wysocki
2014-02-04 22:37     ` Sebastian Capella
2014-02-04 23:22       ` Sebastian Capella
2014-02-05  0:03         ` Rafael J. Wysocki
2014-02-05  0:06           ` Sebastian Capella
2014-02-05  0:28             ` Rafael J. Wysocki
2014-02-05  0:24               ` Sebastian Capella
2014-02-05 11:07                 ` Rafael J. Wysocki
2014-02-04 23:59       ` Rafael J. Wysocki
2014-02-04 20:43 ` [PATCH v7 3/3] PM / Hibernate: use name_to_dev_t to parse resume Sebastian Capella
2014-02-04 21:39   ` Rafael J. Wysocki
2014-02-04 23:17     ` Sebastian Capella

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140204220534.28287.21049@capellas-linux \
    --to=sebastian.capella@linaro.org \
    --cc=joe@perches.com \
    --cc=len.brown@intel.com \
    --cc=linaro-kernel@lists.linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=patches@linaro.org \
    --cc=pavel@ucw.cz \
    --cc=rjw@rjwysocki.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).