lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20071005124705.6584e2f9.akpm@linux-foundation.org>
Date:	Fri, 5 Oct 2007 12:47:05 -0700
From:	Andrew Morton <akpm@...ux-foundation.org>
To:	bbpetkov@...oo.de
Cc:	linux-kernel@...r.kernel.org, jeremy@...p.org, muli@...ibm.com,
	satyam@...radead.org, amitkale@...xen.com,
	achim_leubner@...ptec.com
Subject: Re: [PATCH 1/1] unify DMA_..BIT_MASK definitions: v3.1

On Tue, 18 Sep 2007 21:46:47 +0200
Borislav Petkov <bbpetkov@...oo.de> wrote:

> These patches remove redundant DMA_..BIT_MASK definitions across two
> drivers. The computation of the majority of the bitmasks is done by the
> compiler. The initial split of the patch touching each a different file got
> removed due to possible git bisect breakage.
> 
> Andrew, can you please apply this patch for it touches drivers maintained by
> different people and i there might be responsibility issues, imho.
> 
> Signed-off-by: Borislav Petkov <bbpetkov@...oo.de>
> Cc: Jeremy Fitzhardinge <jeremy@...p.org>
> Cc: Muli Ben-Yehuda <muli@...ibm.com>
> 
>  drivers/net/netxen/netxen_nic_main.c |    3 ---
>  drivers/scsi/gdth.c                  |    5 -----
>  include/linux/dma-mapping.h          |   23 +++++++++++++----------
>  3 files changed, 13 insertions(+), 18 deletions(-)
> 
> ...
>
> -#define DMA_64BIT_MASK	0xffffffffffffffffULL
> -#define DMA_48BIT_MASK	0x0000ffffffffffffULL
> -#define DMA_40BIT_MASK	0x000000ffffffffffULL
> -#define DMA_39BIT_MASK	0x0000007fffffffffULL
> -#define DMA_32BIT_MASK	0x00000000ffffffffULL
> -#define DMA_31BIT_MASK	0x000000007fffffffULL
> -#define DMA_30BIT_MASK	0x000000003fffffffULL
> -#define DMA_29BIT_MASK	0x000000001fffffffULL
> -#define DMA_28BIT_MASK	0x000000000fffffffULL
> -#define DMA_24BIT_MASK	0x0000000000ffffffULL
> +#define DMA_BIT_MASK(n)	((1ULL<<(n))-1)
> +
> +#define DMA_64BIT_MASK	(~0ULL)
> +#define DMA_48BIT_MASK	DMA_BIT_MASK(48)
> +#define DMA_40BIT_MASK	DMA_BIT_MASK(40)
> +#define DMA_39BIT_MASK	DMA_BIT_MASK(39)
> +#define DMA_35BIT_MASK	DMA_BIT_MASK(35)
> +#define DMA_32BIT_MASK	DMA_BIT_MASK(32)
> +#define DMA_31BIT_MASK	DMA_BIT_MASK(31)
> +#define DMA_30BIT_MASK	DMA_BIT_MASK(30)
> +#define DMA_29BIT_MASK	DMA_BIT_MASK(29)
> +#define DMA_28BIT_MASK	DMA_BIT_MASK(28)
> +#define DMA_24BIT_MASK	DMA_BIT_MASK(24)
>  

Now that you've done this, those DMA_xxBIT_MASK macros are pointless and
stupid and we should aim to get rid of them.


From: Andrew Morton <akpm@...ux-foundation.org>

Now that we have DMA_BIT_MASK(), these macros are pointless.

Signed-off-by: Andrew Morton <akpm@...ux-foundation.org>
---

 include/linux/dma-mapping.h |    6 ++++++
 1 file changed, 6 insertions(+)

diff -puN include/linux/dma-mapping.h~a include/linux/dma-mapping.h
--- a/include/linux/dma-mapping.h~a
+++ a/include/linux/dma-mapping.h
@@ -15,6 +15,12 @@ enum dma_data_direction {
 
 #define DMA_BIT_MASK(n)	((1ULL<<(n))-1)
 
+/*
+ * NOTE: do not use the below macros in new code and do not add new definitions
+ * here.
+ *
+ * Instead, just open-code DMA_BIT_MASK(n) within your driver
+ */
 #define DMA_64BIT_MASK	(~0ULL)
 #define DMA_48BIT_MASK	DMA_BIT_MASK(48)
 #define DMA_47BIT_MASK	DMA_BIT_MASK(47)
_

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ