All of lore.kernel.org
 help / color / mirror / Atom feed
From: Krzysztof Kozlowski <krzk@kernel.org>
To: Herbert Xu <herbert@gondor.apana.org.au>,
	"David S. Miller" <davem@davemloft.net>,
	Maxime Coquelin <mcoquelin.stm32@gmail.com>,
	Alexandre Torgue <alexandre.torgue@st.com>,
	Tom Lendacky <thomas.lendacky@amd.com>,
	Siva Reddy Kallam <siva.kallam@broadcom.com>,
	Prashant Sreedharan <prashant@broadcom.com>,
	Michael Chan <mchan@broadcom.com>,
	Fugang Duan <fugang.duan@nxp.com>,
	Pantelis Antoniou <pantelis.antoniou@gmail.com>,
	Vitaly Bordug <vbordug@ru.mvista.com>,
	Jose Abreu <Jose.Abreu@synopsys.com>,
	Larry Finger <Larry.Finger@lwfinger.net>,
	Florian Schilhabel <florian.c.schilhabel@googlemail.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	linux-kernel@vger.kernel.org, linux-crypto@vger.kernel.org,
	linux-arm-kern
Cc: Krzysztof Kozlowski <krzk@kernel.org>
Subject: [PATCH 0/6] lib/crc32: treewide: Use existing define with polynomial
Date: Tue, 17 Jul 2018 18:05:35 +0200	[thread overview]
Message-ID: <20180717160541.3843-1-krzk@kernel.org> (raw)

Hi,

Kernel defines same polynomial for CRC-32 in few places.
This is unnecessary duplication of the same value. Also this might
be error-prone for future code - every driver will define the
polynomial again.

This is an attempt to unify definition of polynomial.  Few obvious
hard-coded locations are fixed with define.

All series depend on each 1/6 and 2/6.

This could be merged in two different merge windows (1st lib/crc and then
the rest) or taken through one tree.

It would be nice to get some testing. Only generic lib/crc, bunzip, xz_crc32
and Freescale's Ethernet driver were tested on HW.  Rest got just different
builds.

Best regards,
Krzysztof




Krzysztof Kozlowski (6):
  lib/crc: Move polynomial definition to separate header
  lib/crc: Use consistent naming for CRC-32 polynomials
  crypto: stm32_crc32 - Use existing define with polynomial
  net: ethernet: Use existing define with polynomial
  staging: rtl: Use existing define with polynomial
  lib: Use existing define with polynomial

 drivers/crypto/stm32/stm32_crc32.c               | 11 ++++-------
 drivers/net/ethernet/amd/xgbe/xgbe-dev.c         |  4 ++--
 drivers/net/ethernet/apple/bmac.c                |  8 ++------
 drivers/net/ethernet/broadcom/tg3.c              |  3 ++-
 drivers/net/ethernet/freescale/fec_main.c        |  4 ++--
 drivers/net/ethernet/freescale/fs_enet/fec.h     |  3 ---
 drivers/net/ethernet/freescale/fs_enet/mac-fec.c |  3 ++-
 drivers/net/ethernet/micrel/ks8851_mll.c         |  3 ++-
 drivers/net/ethernet/synopsys/dwc-xlgmac-hw.c    |  4 ++--
 drivers/staging/rtl8712/rtl871x_security.c       |  5 ++---
 drivers/staging/rtl8723bs/core/rtw_security.c    |  5 ++---
 include/linux/crc32poly.h                        | 20 ++++++++++++++++++++
 lib/crc32.c                                      | 11 ++++++-----
 lib/crc32defs.h                                  | 14 --------------
 lib/decompress_bunzip2.c                         |  3 ++-
 lib/gen_crc32table.c                             |  5 +++--
 lib/xz/xz_crc32.c                                |  3 ++-
 17 files changed, 55 insertions(+), 54 deletions(-)
 create mode 100644 include/linux/crc32poly.h

-- 
2.14.1

WARNING: multiple messages have this Message-ID (diff)
From: Krzysztof Kozlowski <krzk@kernel.org>
To: Herbert Xu <herbert@gondor.apana.org.au>,
	"David S. Miller" <davem@davemloft.net>,
	Maxime Coquelin <mcoquelin.stm32@gmail.com>,
	Alexandre Torgue <alexandre.torgue@st.com>,
	Tom Lendacky <thomas.lendacky@amd.com>,
	Siva Reddy Kallam <siva.kallam@broadcom.com>,
	Prashant Sreedharan <prashant@broadcom.com>,
	Michael Chan <mchan@broadcom.com>,
	Fugang Duan <fugang.duan@nxp.com>,
	Pantelis Antoniou <pantelis.antoniou@gmail.com>,
	Vitaly Bordug <vbordug@ru.mvista.com>,
	Jose Abreu <Jose.Abreu@synopsys.com>,
	Larry Finger <Larry.Finger@lwfinger.net>,
	Florian Schilhabel <florian.c.schilhabel@googlemail.com>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	linux-kernel@vger.kernel.org, linux-crypto@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, netdev@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, devel@driverdev.osuosl.org
Cc: Krzysztof Kozlowski <krzk@kernel.org>
Subject: [PATCH 0/6] lib/crc32: treewide: Use existing define with polynomial
Date: Tue, 17 Jul 2018 18:05:35 +0200	[thread overview]
Message-ID: <20180717160541.3843-1-krzk@kernel.org> (raw)

Hi,

Kernel defines same polynomial for CRC-32 in few places.
This is unnecessary duplication of the same value. Also this might
be error-prone for future code - every driver will define the
polynomial again.

This is an attempt to unify definition of polynomial.  Few obvious
hard-coded locations are fixed with define.

All series depend on each 1/6 and 2/6.

This could be merged in two different merge windows (1st lib/crc and then
the rest) or taken through one tree.

It would be nice to get some testing. Only generic lib/crc, bunzip, xz_crc32
and Freescale's Ethernet driver were tested on HW.  Rest got just different
builds.

Best regards,
Krzysztof




Krzysztof Kozlowski (6):
  lib/crc: Move polynomial definition to separate header
  lib/crc: Use consistent naming for CRC-32 polynomials
  crypto: stm32_crc32 - Use existing define with polynomial
  net: ethernet: Use existing define with polynomial
  staging: rtl: Use existing define with polynomial
  lib: Use existing define with polynomial

 drivers/crypto/stm32/stm32_crc32.c               | 11 ++++-------
 drivers/net/ethernet/amd/xgbe/xgbe-dev.c         |  4 ++--
 drivers/net/ethernet/apple/bmac.c                |  8 ++------
 drivers/net/ethernet/broadcom/tg3.c              |  3 ++-
 drivers/net/ethernet/freescale/fec_main.c        |  4 ++--
 drivers/net/ethernet/freescale/fs_enet/fec.h     |  3 ---
 drivers/net/ethernet/freescale/fs_enet/mac-fec.c |  3 ++-
 drivers/net/ethernet/micrel/ks8851_mll.c         |  3 ++-
 drivers/net/ethernet/synopsys/dwc-xlgmac-hw.c    |  4 ++--
 drivers/staging/rtl8712/rtl871x_security.c       |  5 ++---
 drivers/staging/rtl8723bs/core/rtw_security.c    |  5 ++---
 include/linux/crc32poly.h                        | 20 ++++++++++++++++++++
 lib/crc32.c                                      | 11 ++++++-----
 lib/crc32defs.h                                  | 14 --------------
 lib/decompress_bunzip2.c                         |  3 ++-
 lib/gen_crc32table.c                             |  5 +++--
 lib/xz/xz_crc32.c                                |  3 ++-
 17 files changed, 55 insertions(+), 54 deletions(-)
 create mode 100644 include/linux/crc32poly.h

-- 
2.14.1

WARNING: multiple messages have this Message-ID (diff)
From: krzk@kernel.org (Krzysztof Kozlowski)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 0/6] lib/crc32: treewide: Use existing define with polynomial
Date: Tue, 17 Jul 2018 18:05:35 +0200	[thread overview]
Message-ID: <20180717160541.3843-1-krzk@kernel.org> (raw)

Hi,

Kernel defines same polynomial for CRC-32 in few places.
This is unnecessary duplication of the same value. Also this might
be error-prone for future code - every driver will define the
polynomial again.

This is an attempt to unify definition of polynomial.  Few obvious
hard-coded locations are fixed with define.

All series depend on each 1/6 and 2/6.

This could be merged in two different merge windows (1st lib/crc and then
the rest) or taken through one tree.

It would be nice to get some testing. Only generic lib/crc, bunzip, xz_crc32
and Freescale's Ethernet driver were tested on HW.  Rest got just different
builds.

Best regards,
Krzysztof




Krzysztof Kozlowski (6):
  lib/crc: Move polynomial definition to separate header
  lib/crc: Use consistent naming for CRC-32 polynomials
  crypto: stm32_crc32 - Use existing define with polynomial
  net: ethernet: Use existing define with polynomial
  staging: rtl: Use existing define with polynomial
  lib: Use existing define with polynomial

 drivers/crypto/stm32/stm32_crc32.c               | 11 ++++-------
 drivers/net/ethernet/amd/xgbe/xgbe-dev.c         |  4 ++--
 drivers/net/ethernet/apple/bmac.c                |  8 ++------
 drivers/net/ethernet/broadcom/tg3.c              |  3 ++-
 drivers/net/ethernet/freescale/fec_main.c        |  4 ++--
 drivers/net/ethernet/freescale/fs_enet/fec.h     |  3 ---
 drivers/net/ethernet/freescale/fs_enet/mac-fec.c |  3 ++-
 drivers/net/ethernet/micrel/ks8851_mll.c         |  3 ++-
 drivers/net/ethernet/synopsys/dwc-xlgmac-hw.c    |  4 ++--
 drivers/staging/rtl8712/rtl871x_security.c       |  5 ++---
 drivers/staging/rtl8723bs/core/rtw_security.c    |  5 ++---
 include/linux/crc32poly.h                        | 20 ++++++++++++++++++++
 lib/crc32.c                                      | 11 ++++++-----
 lib/crc32defs.h                                  | 14 --------------
 lib/decompress_bunzip2.c                         |  3 ++-
 lib/gen_crc32table.c                             |  5 +++--
 lib/xz/xz_crc32.c                                |  3 ++-
 17 files changed, 55 insertions(+), 54 deletions(-)
 create mode 100644 include/linux/crc32poly.h

-- 
2.14.1

             reply	other threads:[~2018-07-17 16:05 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-07-17 16:05 Krzysztof Kozlowski [this message]
2018-07-17 16:05 ` [PATCH 0/6] lib/crc32: treewide: Use existing define with polynomial Krzysztof Kozlowski
2018-07-17 16:05 ` Krzysztof Kozlowski
2018-07-17 16:05 ` [PATCH 1/6] lib/crc: Move polynomial definition to separate header Krzysztof Kozlowski
2018-07-17 16:05   ` Krzysztof Kozlowski
2018-07-17 16:05   ` Krzysztof Kozlowski
2018-07-17 16:05 ` [PATCH 2/6] lib/crc: Use consistent naming for CRC-32 polynomials Krzysztof Kozlowski
2018-07-17 16:05   ` Krzysztof Kozlowski
2018-07-17 16:05   ` Krzysztof Kozlowski
2018-07-17 16:05 ` [PATCH 3/6] crypto: stm32_crc32 - Use existing define with polynomial Krzysztof Kozlowski
2018-07-17 16:05   ` Krzysztof Kozlowski
2018-07-17 16:05   ` Krzysztof Kozlowski
2018-07-17 16:05 ` [PATCH 4/6] net: ethernet: " Krzysztof Kozlowski
2018-07-17 16:05   ` Krzysztof Kozlowski
2018-07-17 16:05 ` [PATCH 5/6] staging: rtl: " Krzysztof Kozlowski
2018-07-17 16:05   ` Krzysztof Kozlowski
2018-07-17 16:05 ` [PATCH 6/6] lib: " Krzysztof Kozlowski
2018-07-17 16:05   ` Krzysztof Kozlowski
2018-07-17 16:05   ` Krzysztof Kozlowski
2018-07-18  0:12 ` [PATCH 0/6] lib/crc32: treewide: " Eric Biggers
2018-07-18  0:12   ` Eric Biggers
2018-07-18  0:12   ` Eric Biggers
2018-07-18  6:33   ` Krzysztof Kozlowski
2018-07-18  6:33     ` Krzysztof Kozlowski
2018-07-18  6:33     ` Krzysztof Kozlowski
2018-07-27 16:05 ` Herbert Xu
2018-07-27 16:05   ` Herbert Xu
2018-07-27 16:05   ` Herbert Xu

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=20180717160541.3843-1-krzk@kernel.org \
    --to=krzk@kernel.org \
    --cc=Jose.Abreu@synopsys.com \
    --cc=Larry.Finger@lwfinger.net \
    --cc=alexandre.torgue@st.com \
    --cc=davem@davemloft.net \
    --cc=florian.c.schilhabel@googlemail.com \
    --cc=fugang.duan@nxp.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=herbert@gondor.apana.org.au \
    --cc=linux-crypto@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mchan@broadcom.com \
    --cc=mcoquelin.stm32@gmail.com \
    --cc=pantelis.antoniou@gmail.com \
    --cc=prashant@broadcom.com \
    --cc=siva.kallam@broadcom.com \
    --cc=tglx@linutronix.de \
    --cc=thomas.lendacky@amd.com \
    --cc=vbordug@ru.mvista.com \
    /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.