Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1433840 > unrolled thread
| Started by | Amitoj Kaur Chawla <amitoj1606@gmail.com> |
|---|---|
| First post | 2016-06-29 17:10 +0200 |
| Last post | 2016-06-29 17:50 +0200 |
| Articles | 4 — 4 participants |
Back to article view | Back to linux.kernel
[PATCH] x86/xen: Use DIV_ROUND_UP Amitoj Kaur Chawla <amitoj1606@gmail.com> - 2016-06-29 17:10 +0200
Re: [Xen-devel] [PATCH] x86/xen: Use DIV_ROUND_UP Juergen Gross <jgross@suse.com> - 2016-06-29 17:40 +0200
Re: [Xen-devel] [PATCH] x86/xen: Use DIV_ROUND_UP "Jan Beulich" <JBeulich@suse.com> - 2016-06-29 17:40 +0200
Re: [Xen-devel] [PATCH] x86/xen: Use DIV_ROUND_UP David Vrabel <david.vrabel@citrix.com> - 2016-06-29 17:50 +0200
| From | Amitoj Kaur Chawla <amitoj1606@gmail.com> |
|---|---|
| Date | 2016-06-29 17:10 +0200 |
| Subject | [PATCH] x86/xen: Use DIV_ROUND_UP |
| Message-ID | <rPphL-5KQ-15@gated-at.bofh.it> |
The kernel.h macro DIV_ROUND_UP performs the computation
(((n) + (d) - 1) /(d)) but is perhaps more readable.
The Coccinelle script used to make this change is as follows:
@haskernel@
@@
#include <linux/kernel.h>
@depends on haskernel@
expression n,d;
@@
(
- (n + d - 1) / d
+ DIV_ROUND_UP(n,d)
|
- (n + (d - 1)) / d
+ DIV_ROUND_UP(n,d)
)
Signed-off-by: Amitoj Kaur Chawla <amitoj1606@gmail.com>
---
arch/x86/xen/enlighten.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/x86/xen/enlighten.c b/arch/x86/xen/enlighten.c
index 880862c..6847512 100644
--- a/arch/x86/xen/enlighten.c
+++ b/arch/x86/xen/enlighten.c
@@ -591,7 +591,7 @@ static void xen_load_gdt(const struct desc_ptr *dtr)
{
unsigned long va = dtr->address;
unsigned int size = dtr->size + 1;
- unsigned pages = (size + PAGE_SIZE - 1) / PAGE_SIZE;
+ unsigned pages = DIV_ROUND_UP(size, PAGE_SIZE);
unsigned long frames[pages];
int f;
@@ -640,7 +640,7 @@ static void __init xen_load_gdt_boot(const struct desc_ptr *dtr)
{
unsigned long va = dtr->address;
unsigned int size = dtr->size + 1;
- unsigned pages = (size + PAGE_SIZE - 1) / PAGE_SIZE;
+ unsigned pages = DIV_ROUND_UP(size, PAGE_SIZE);
unsigned long frames[pages];
int f;
--
1.9.1
[toc] | [next] | [standalone]
| From | Juergen Gross <jgross@suse.com> |
|---|---|
| Date | 2016-06-29 17:40 +0200 |
| Subject | Re: [Xen-devel] [PATCH] x86/xen: Use DIV_ROUND_UP |
| Message-ID | <rPpKO-5V4-11@gated-at.bofh.it> |
| In reply to | #1433840 |
On 29/06/16 17:34, Jan Beulich wrote:
>>>> On 29.06.16 at 17:00, <amitoj1606@gmail.com> wrote:
>> --- a/arch/x86/xen/enlighten.c
>> +++ b/arch/x86/xen/enlighten.c
>> @@ -591,7 +591,7 @@ static void xen_load_gdt(const struct desc_ptr *dtr)
>> {
>> unsigned long va = dtr->address;
>> unsigned int size = dtr->size + 1;
>> - unsigned pages = (size + PAGE_SIZE - 1) / PAGE_SIZE;
>> + unsigned pages = DIV_ROUND_UP(size, PAGE_SIZE);
>> unsigned long frames[pages];
>> int f;
>>
>> @@ -640,7 +640,7 @@ static void __init xen_load_gdt_boot(const struct desc_ptr *dtr)
>> {
>> unsigned long va = dtr->address;
>> unsigned int size = dtr->size + 1;
>> - unsigned pages = (size + PAGE_SIZE - 1) / PAGE_SIZE;
>> + unsigned pages = DIV_ROUND_UP(size, PAGE_SIZE);
>> unsigned long frames[pages];
>> int f;
>>
>
> Perhaps even more readable would be PFN_DOWN()?
Or PFN_UP() to be correct?
Juergen
[toc] | [prev] | [next] | [standalone]
| From | "Jan Beulich" <JBeulich@suse.com> |
|---|---|
| Date | 2016-06-29 17:40 +0200 |
| Subject | Re: [Xen-devel] [PATCH] x86/xen: Use DIV_ROUND_UP |
| Message-ID | <rPpKO-5V4-31@gated-at.bofh.it> |
| In reply to | #1433840 |
>>> On 29.06.16 at 17:00, <amitoj1606@gmail.com> wrote:
> --- a/arch/x86/xen/enlighten.c
> +++ b/arch/x86/xen/enlighten.c
> @@ -591,7 +591,7 @@ static void xen_load_gdt(const struct desc_ptr *dtr)
> {
> unsigned long va = dtr->address;
> unsigned int size = dtr->size + 1;
> - unsigned pages = (size + PAGE_SIZE - 1) / PAGE_SIZE;
> + unsigned pages = DIV_ROUND_UP(size, PAGE_SIZE);
> unsigned long frames[pages];
> int f;
>
> @@ -640,7 +640,7 @@ static void __init xen_load_gdt_boot(const struct desc_ptr *dtr)
> {
> unsigned long va = dtr->address;
> unsigned int size = dtr->size + 1;
> - unsigned pages = (size + PAGE_SIZE - 1) / PAGE_SIZE;
> + unsigned pages = DIV_ROUND_UP(size, PAGE_SIZE);
> unsigned long frames[pages];
> int f;
>
Perhaps even more readable would be PFN_DOWN()?
Jan
[toc] | [prev] | [next] | [standalone]
| From | David Vrabel <david.vrabel@citrix.com> |
|---|---|
| Date | 2016-06-29 17:50 +0200 |
| Subject | Re: [Xen-devel] [PATCH] x86/xen: Use DIV_ROUND_UP |
| Message-ID | <rPpUu-5Yx-7@gated-at.bofh.it> |
| In reply to | #1433840 |
On 29/06/16 16:00, Amitoj Kaur Chawla wrote: > The kernel.h macro DIV_ROUND_UP performs the computation > (((n) + (d) - 1) /(d)) but is perhaps more readable. > > The Coccinelle script used to make this change is as follows: > @haskernel@ > @@ > > #include <linux/kernel.h> > > @depends on haskernel@ > expression n,d; > @@ > > ( > - (n + d - 1) / d > + DIV_ROUND_UP(n,d) > | > - (n + (d - 1)) / d > + DIV_ROUND_UP(n,d) > ) Applied to for-linus-4.8, thanks. PFN_UP/DOWN() are for converting addresses to PFNs. DIV_ROUND_UP() is clearer when converting sizes to numbers of pages (as demonstrated by the incorrect suggestion to use PFN_DOWN()). David
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web