All of lore.kernel.org
 help / color / mirror / Atom feed
From: Richard Cochran <richardcochran@gmail.com>
To: Baolin Wang <baolin.wang@linaro.org>
Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	john.stultz@linaro.com, tglx@linutronix.de, arnd@linaro.org
Subject: Re: [PATCH 2/4] ptp/clcok:Introduce the setktime/getktime interfaces with "ktime_t" type
Date: Thu, 19 Mar 2015 08:54:16 +0100	[thread overview]
Message-ID: <20150319075416.GB4568@localhost.localdomain> (raw)
In-Reply-To: <1426743909-24335-3-git-send-email-baolin.wang@linaro.org>

On Thu, Mar 19, 2015 at 01:45:07PM +0800, Baolin Wang wrote:

> diff --git a/drivers/ptp/ptp_clock.c b/drivers/ptp/ptp_clock.c
> index 296b0ec..46425ad 100644
> --- a/drivers/ptp/ptp_clock.c
> +++ b/drivers/ptp/ptp_clock.c
> @@ -106,14 +106,30 @@ static int ptp_clock_getres(struct posix_clock *pc, struct timespec *tp)
>  
>  static int ptp_clock_settime(struct posix_clock *pc, const struct timespec *tp)
>  {
> +	ktime_t kt;
>  	struct ptp_clock *ptp = container_of(pc, struct ptp_clock, clock);
> -	return ptp->info->settime(ptp->info, tp);
> +
> +	if (ptp->info->setktime) {
> +		kt = timespec_to_ktime(*tp);
> +		return ptp->info->setktime(ptp->info, kt);
> +	} else {
> +		return ptp->info->settime(ptp->info, tp);
> +	}

This conditional is just the kind of thing I *don't* want to see.  In
Documentation/ptp/ptp.txt we read:

   ** Writing clock drivers

   Clock drivers include include/linux/ptp_clock_kernel.h and register
   themselves by presenting a 'struct ptp_clock_info' to the
   registration method. Clock drivers must implement all of the
   functions in the interface. If a clock does not offer a particular
   ancillary feature, then the driver should just return -EOPNOTSUPP
   from those functions.

Please don't litter the code with tests for NULL methods everywhere.

Thanks,
Richard

  reply	other threads:[~2015-03-19  7:54 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-19  5:45 [PATCH 0/4] Introduce another options to set/get time with "ktime_t" type Baolin Wang
2015-03-19  5:45 ` [PATCH 1/4] ptp/chardev:Introduce another option to get/set time in ptp_clock_info structure Baolin Wang
2015-03-19  7:48   ` Richard Cochran
2015-03-19  5:45 ` [PATCH 2/4] ptp/clcok:Introduce the setktime/getktime interfaces with "ktime_t" type Baolin Wang
2015-03-19  7:54   ` Richard Cochran [this message]
     [not found]     ` <CAMz4kuKyDFCqd-LfoSKJf+tkXdzzLwtPJdp-nF6NbKU8W5HHpQ@mail.gmail.com>
2015-03-20  6:26       ` Richard Cochran
2015-03-20 13:43         ` Arnd Bergmann
2015-03-20 16:49           ` Richard Cochran
2015-03-21  1:16             ` Arnd Bergmann
2015-03-21  7:24               ` Richard Cochran
2015-03-21 16:52                 ` Richard Cochran
2015-03-22  2:47                 ` Arnd Bergmann
2015-03-21  9:21             ` Richard Cochran
2015-03-19  5:45 ` [PATCH 3/4] ptp/pch:Replace timespec with ktime_t in ptp_pch.c Baolin Wang
2015-03-19  5:45 ` [PATCH 4/4] ptp/ixp46x:Replace timespec with ktime_t in ptp_ixp46x.c Baolin Wang

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=20150319075416.GB4568@localhost.localdomain \
    --to=richardcochran@gmail.com \
    --cc=arnd@linaro.org \
    --cc=baolin.wang@linaro.org \
    --cc=john.stultz@linaro.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=tglx@linutronix.de \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.