All of lore.kernel.org
 help / color / mirror / Atom feed
From: Julien Grall <julien.grall@linaro.org>
To: Ian Campbell <ian.campbell@citrix.com>
Cc: xen-devel@lists.xenproject.org, tim@xen.org,
	stefano.stabellini@citrix.com,
	Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Subject: Re: [PATCH v3 12/13] xen/iommu: smmu: Add Xen specific code to be able to use the driver
Date: Fri, 20 Feb 2015 14:01:55 +0000	[thread overview]
Message-ID: <54E73E53.9030505@linaro.org> (raw)
In-Reply-To: <1424438999.30924.231.camel@citrix.com>

On 20/02/15 13:29, Ian Campbell wrote:
> On Mon, 2015-02-09 at 23:40 +0800, Julien Grall wrote:
>> Hi Stefano,
>>
>> On 06/02/2015 21:20, Stefano Stabellini wrote:
>>> On Fri, 30 Jan 2015, Julien Grall wrote:
>>>> -static int force_stage;
>>>> -module_param_named(force_stage, force_stage, int, S_IRUGO | S_IWUSR);
>>>> -MODULE_PARM_DESC(force_stage,
>>>> -	"Force SMMU mappings to be installed at a particular stage of translation. A value of '1' or '2' forces the corresponding stage. All other values are ignored (i.e. no stage is forced). Note that selecting a specific stage will disable support for nested translation.");
>>>
>>> for the sake of minimizing the diff, I would add
>>>
>>> #define module_param_named(a, b, c, d)
>>> #define MODULE_PARM_DESC(a, b)
>>>
>>> to the Xen definitions above
>>
>> We still have to drop force_stage because it will get unused and won't 
>> compile.
>> So it's not too bad to remove the 2 other lines.
> 
> You currently redefine it as a const int -- is it really unused?

This variable is only read to force the driver to use the specify stage
(1 or 2).

On Xen, we only want to use stage-2. The driver will bail out if the
SMMU doesn't support it.


>> All the Xen code is beginning with /* Xen: */. Though, I could add a /* 
>> Xen: End */ to make the separation clearer.
> 
> BTW, I was thinking to suggest replacing all the #if 0 with #ifndef
> CONFIG_XEN or something, which might make some of the comments shorter
> or even mean they aren't really needed.
> 
> Either way I would write it as:
>    #if 0 /* Xen: Comment comment */
> (similarly any if (0) ...)

I prefer the #if 0 /* Xen: */

>>> For the sake of minimizing the changes to Linux functions, could you
>>> write a wrapper around this function instead? That might allow you to
>>> remove the changes related to the return value.
>>
>> We should avoid to try to minimize the code against the clarity of the 
>> code...
>>
>> The change you suggest would require to modify the caller of this 
>> function, which is less clearer than this one.
> 
> Given an original function foo can you do
> 
> static void foo(void)
> {
>   original code, unmodified
> }
> static void foo_wrapper(void)
> {
>    wrapper
>    foo_orig
>    wrapper
> }
> #define foo foo_wrapper
> 
> or something along those lines?

There is some case where we need to modify the original function. So I'm
not sure it worth to add more line just for a wrapper.

Regards,


-- 
Julien Grall

  reply	other threads:[~2015-02-20 14:02 UTC|newest]

Thread overview: 68+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-30 18:49 [PATCH v3 00/13] xen/arm: Resync the SMMU driver with the Linux one Julien Grall
2015-01-30 18:49 ` [PATCH v3 01/13] xen/arm: gic-v2: Change the device name in DT_DEVICE_START Julien Grall
2015-02-20 12:16   ` Ian Campbell
2015-01-30 18:49 ` [PATCH v3 02/13] xen/arm: vgic: Drop unecessary include asm/device.h Julien Grall
2015-02-20 12:16   ` Ian Campbell
2015-01-30 18:49 ` [PATCH v3 03/13] xen/dt: Extend dt_device_match to possibly store data Julien Grall
2015-02-06 12:37   ` Stefano Stabellini
2015-02-20 12:16     ` Ian Campbell
2015-01-30 18:49 ` [PATCH v3 04/13] xen/arm: device: Rename device_type into device_class Julien Grall
2015-02-06 12:38   ` Stefano Stabellini
2015-02-20 12:17     ` Ian Campbell
2015-01-30 18:49 ` [PATCH v3 05/13] xen/iommu: arm: Remove temporary the SMMU driver Julien Grall
2015-02-20 12:18   ` Ian Campbell
2015-02-20 12:53     ` Julien Grall
2015-02-20 13:47       ` Ian Campbell
2015-02-20 13:53         ` Julien Grall
2015-02-20 14:06           ` Ian Campbell
2015-02-20 14:07             ` Julien Grall
2015-01-30 18:49 ` [PATCH v3 06/13] xen/arm: Introduce a generic way to describe device Julien Grall
2015-02-02  8:04   ` Jan Beulich
2015-02-06 12:39   ` Stefano Stabellini
2015-02-20 12:22   ` Ian Campbell
2015-02-24 14:26     ` Julien Grall
2015-02-24 14:45       ` Ian Campbell
2015-01-30 18:49 ` [PATCH v3 07/13] xen/iommu: Consolidate device assignment ops into a single set Julien Grall
2015-02-20 12:25   ` Ian Campbell
2015-01-30 18:49 ` [PATCH v3 08/13] xen/arm: Describe device supported by a driver with dt_match_node Julien Grall
2015-02-20 12:30   ` Ian Campbell
2015-02-24 14:42     ` Julien Grall
2015-01-30 18:49 ` [PATCH v3 09/13] xen/iommu: arm: Import the SMMU driver from Linux Julien Grall
2015-02-20 12:31   ` Ian Campbell
2015-02-20 13:33     ` Julien Grall
2015-02-20 13:48       ` Ian Campbell
2015-01-30 18:49 ` [PATCH v3 10/13] xen/iommu: smmu: Check for duplicate stream IDs when registering master devices Julien Grall
2015-02-20 12:35   ` Ian Campbell
2015-02-20 13:34     ` Julien Grall
2015-02-20 13:48       ` Ian Campbell
2015-02-20 14:47       ` Andreas Herrmann
2015-01-30 18:49 ` [PATCH v3 11/13] xen/iommu: smmu: Introduce automatic stream-id-masking Julien Grall
2015-02-20 13:15   ` Ian Campbell
2015-02-20 13:42     ` Julien Grall
2015-02-20 13:55       ` Ian Campbell
2015-02-20 15:07         ` Julien Grall
2015-02-23 10:42           ` Ian Campbell
2015-02-23 10:52             ` Julien Grall
2015-02-23 12:48               ` Ian Campbell
2015-01-30 18:49 ` [PATCH v3 12/13] xen/iommu: smmu: Add Xen specific code to be able to use the driver Julien Grall
2015-02-02 18:55   ` Manish
2015-02-02 23:01     ` Julien Grall
2015-02-06 13:20   ` Stefano Stabellini
2015-02-09 15:40     ` Julien Grall
2015-02-19 17:17       ` Julien Grall
2015-02-20 13:29       ` Ian Campbell
2015-02-20 14:01         ` Julien Grall [this message]
2015-02-20 13:23     ` Ian Campbell
2015-02-20 13:50       ` Julien Grall
2015-01-30 18:49 ` [PATCH v3 13/13] xen/iommu: smmu: Advertise when the SMMU support coherent table walk Julien Grall
2015-02-06 14:06   ` Stefano Stabellini
2015-02-10  1:36     ` Julien Grall
2015-02-10  1:37       ` Julien Grall
2015-02-20 13:34   ` Ian Campbell
2015-02-20 14:07     ` Julien Grall
2015-02-20 14:13       ` Ian Campbell
2015-02-20 14:15         ` Julien Grall
2015-02-20 14:28           ` Ian Campbell
2015-02-20 14:15 ` [PATCH v3 00/13] xen/arm: Resync the SMMU driver with the Linux one Ian Campbell
2015-02-20 14:19   ` Julien Grall
2015-02-20 14:27     ` Ian Campbell

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=54E73E53.9030505@linaro.org \
    --to=julien.grall@linaro.org \
    --cc=ian.campbell@citrix.com \
    --cc=stefano.stabellini@citrix.com \
    --cc=stefano.stabellini@eu.citrix.com \
    --cc=tim@xen.org \
    --cc=xen-devel@lists.xenproject.org \
    /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.