mbox series

[v2,0/8] Sync and consolidate Linux-derived printk, BUILD_BUG, BUG, WARN, etc.

Message ID 1505538646-19191-1-git-send-email-yamada.masahiro@socionext.com
Headers show
Series Sync and consolidate Linux-derived printk, BUILD_BUG, BUG, WARN, etc. | expand

Message

Masahiro Yamada Sept. 16, 2017, 5:10 a.m. UTC
I tested this series with buildman.



Masahiro Yamada (8):
  stdio.h: move printf() stuff from <common.h> to <stdio.h>
  printk: collect printk stuff into <linux/printk.h> with loglevel
    support
  treewide: replace with error() with pr_err()
  common.h: remove error()
  vsprintf.h: include <linux/types.h>
  bug.h: sync BUILD_BUG stuff with Linux 4.13
  bug.h: move runtime BUG/WARN macros into <linux/bug.h>
  dm: define dev_*() log functions in DM header

 arch/arm/mach-omap2/am33xx/board.c             |  2 +-
 arch/arm/mach-omap2/utils.c                    |  4 +-
 arch/arm/mach-rockchip/rk3188-board-spl.c      |  2 +-
 arch/arm/mach-rockchip/rk3188-board.c          |  2 +-
 arch/arm/mach-rockchip/rk3368-board-spl.c      |  4 +-
 arch/arm/mach-rockchip/rk3399/sdram_rk3399.c   |  2 +-
 arch/arm/mach-socfpga/reset_manager_arria10.c  |  2 +-
 arch/arm/mach-tegra/ivc.c                      |  8 +--
 arch/arm/mach-tegra/tegra124/xusb-padctl.c     |  2 +-
 arch/arm/mach-tegra/tegra186/nvtboot_mem.c     |  4 +-
 arch/arm/mach-tegra/tegra20/clock.c            |  6 +-
 arch/arm/mach-tegra/tegra210/xusb-padctl.c     |  2 +-
 arch/arm/mach-tegra/tegra30/clock.c            |  6 +-
 arch/arm/mach-tegra/xusb-padctl-common.c       | 22 +++---
 arch/arm/mach-uniphier/dram_init.c             |  3 -
 arch/arm/mach-uniphier/init.h                  |  5 --
 arch/x86/cpu/tangier/sdram.c                   |  6 +-
 board/nvidia/jetson-tk1/jetson-tk1.c           |  6 +-
 board/samsung/common/exynos5-dt.c              |  2 +-
 board/samsung/common/misc.c                    |  2 +-
 board/samsung/goni/goni.c                      |  4 +-
 board/samsung/odroid/odroid.c                  | 12 ++--
 cmd/fastboot.c                                 |  2 +-
 cmd/nvedit.c                                   |  6 +-
 cmd/regulator.c                                |  2 +-
 cmd/thordown.c                                 |  6 +-
 cmd/tpm_test.c                                 |  6 +-
 cmd/usb_gadget_sdp.c                           |  4 +-
 cmd/usb_mass_storage.c                         |  6 +-
 common/Kconfig                                 | 17 +++++
 common/dfu.c                                   |  6 +-
 common/fb_mmc.c                                | 36 +++++-----
 common/fb_nand.c                               | 12 ++--
 common/spl/spl_dfu.c                           |  4 +-
 common/spl/spl_sdp.c                           |  4 +-
 common/update.c                                |  2 +-
 configs/axm_defconfig                          |  1 +
 configs/colibri_vf_defconfig                   |  1 +
 configs/corvus_defconfig                       |  1 +
 configs/omapl138_lcdk_defconfig                |  1 +
 configs/openrd_base_defconfig                  |  1 +
 configs/openrd_client_defconfig                |  1 +
 configs/openrd_ultimate_defconfig              |  1 +
 configs/taurus_defconfig                       |  1 +
 configs/vf610twr_defconfig                     |  1 +
 configs/vf610twr_nand_defconfig                |  1 +
 disk/part_efi.c                                | 10 +--
 drivers/adc/adc-uclass.c                       |  6 +-
 drivers/adc/exynos-adc.c                       |  6 +-
 drivers/adc/sandbox.c                          |  6 +-
 drivers/ata/dwc_ahci.c                         |  6 +-
 drivers/bios_emulator/include/x86emu/x86emui.h |  3 -
 drivers/clk/clk_boston.c                       |  4 +-
 drivers/clk/clk_stm32f7.c                      |  2 +-
 drivers/clk/rockchip/clk_rk3368.c              |  8 +--
 drivers/clk/rockchip/clk_rk3399.c              |  6 +-
 drivers/clk/rockchip/clk_rv1108.c              |  2 +-
 drivers/dfu/dfu.c                              | 14 ++--
 drivers/dfu/dfu_mmc.c                          | 18 ++---
 drivers/dfu/dfu_ram.c                          |  8 +--
 drivers/dfu/dfu_tftp.c                         |  4 +-
 drivers/dma/dma-uclass.c                       |  2 +-
 drivers/dma/lpc32xx_dma.c                      |  8 +--
 drivers/dma/ti-edma3.c                         |  2 +-
 drivers/i2c/i2c-gpio.c                         |  2 +-
 drivers/i2c/omap24xx_i2c.c                     |  2 +-
 drivers/i2c/stm32f7_i2c.c                      | 16 ++---
 drivers/i2c/tegra_i2c.c                        |  4 +-
 drivers/misc/tegra186_bpmp.c                   | 28 ++++----
 drivers/mmc/exynos_dw_mmc.c                    |  2 +-
 drivers/mmc/hi6220_dw_mmc.c                    |  2 +-
 drivers/mmc/xenon_sdhci.c                      |  4 +-
 drivers/mtd/nand/lpc32xx_nand_mlc.c            |  6 +-
 drivers/mtd/nand/pxa3xx_nand.c                 |  2 +-
 drivers/net/bcm-sf2-eth-gmac.c                 | 14 ++--
 drivers/net/bcm-sf2-eth.c                      | 18 ++---
 drivers/net/cpsw-common.c                      |  8 +--
 drivers/net/cpsw.c                             |  8 +--
 drivers/net/dwc_eth_qos.c                      | 92 +++++++++++++-------------
 drivers/net/ep93xx_eth.c                       | 16 ++---
 drivers/net/keystone_net.c                     | 14 ++--
 drivers/pci/pci_tegra.c                        | 50 +++++++-------
 drivers/pci/pcie_xilinx.c                      |  2 +-
 drivers/phy/marvell/comphy_cp110.c             | 40 +++++------
 drivers/phy/ti-pipe3-phy.c                     | 12 ++--
 drivers/pinctrl/mvebu/pinctrl-armada-37xx.c    |  2 +-
 drivers/pinctrl/pinctrl-sti.c                  | 14 ++--
 drivers/pinctrl/pinctrl_stm32.c                |  2 +-
 drivers/power/pmic/as3722.c                    | 12 ++--
 drivers/power/pmic/as3722_gpio.c               | 10 +--
 drivers/power/pmic/i2c_pmic_emul.c             |  6 +-
 drivers/power/pmic/lp873x.c                    |  4 +-
 drivers/power/pmic/lp87565.c                   |  4 +-
 drivers/power/pmic/max77686.c                  |  4 +-
 drivers/power/pmic/max8997.c                   |  4 +-
 drivers/power/pmic/max8998.c                   |  4 +-
 drivers/power/pmic/palmas.c                    |  4 +-
 drivers/power/pmic/pfuze100.c                  |  4 +-
 drivers/power/pmic/s2mps11.c                   |  4 +-
 drivers/power/pmic/s5m8767.c                   |  4 +-
 drivers/power/pmic/sandbox.c                   |  6 +-
 drivers/power/pmic/tps65090.c                  |  4 +-
 drivers/power/regulator/fixed.c                |  2 +-
 drivers/power/regulator/gpio-regulator.c       |  2 +-
 drivers/power/regulator/max77686.c             | 20 +++---
 drivers/power/regulator/sandbox.c              | 18 ++---
 drivers/ram/rockchip/dmc-rk3368.c              | 14 ++--
 drivers/ram/stm32_sdram.c                      |  8 +--
 drivers/reset/sti-reset.c                      | 10 +--
 drivers/spi/atmel_spi.c                        |  2 +-
 drivers/spi/lpc32xx_ssp.c                      |  6 +-
 drivers/sysreset/sysreset_sti.c                |  6 +-
 drivers/sysreset/sysreset_syscon.c             |  4 +-
 drivers/sysreset/sysreset_watchdog.c           |  2 +-
 drivers/tpm/tpm_tis_infineon.c                 |  2 +-
 drivers/usb/common/common.c                    |  2 +-
 drivers/usb/dwc3/linux-compat.h                |  2 -
 drivers/usb/eth/mcs7830.c                      | 12 ++--
 drivers/usb/gadget/at91_udc.c                  |  4 +-
 drivers/usb/gadget/atmel_usba_udc.c            |  6 +-
 drivers/usb/gadget/dwc2_udc_otg.c              |  2 +-
 drivers/usb/gadget/ether.c                     | 42 ++++++------
 drivers/usb/gadget/f_fastboot.c                | 10 +--
 drivers/usb/gadget/f_sdp.c                     | 16 ++---
 drivers/usb/gadget/f_thor.c                    | 26 ++++----
 drivers/usb/host/dwc2.c                        |  2 +-
 drivers/usb/host/ehci-generic.c                | 18 ++---
 drivers/usb/host/ohci-generic.c                | 18 ++---
 drivers/usb/host/xhci-dwc3.c                   |  6 +-
 drivers/usb/host/xhci-rockchip.c               | 12 ++--
 drivers/usb/musb-new/linux-compat.h            |  2 -
 drivers/usb/musb-new/ti-musb.c                 | 12 ++--
 drivers/video/am335x-fb.c                      |  2 +-
 env/common.c                                   |  8 +--
 env/sf.c                                       |  2 +-
 fs/jffs2/jffs2_nand_1pass.c                    |  2 +-
 fs/yaffs2/yaffs_uboot_glue.c                   |  2 +-
 include/common.h                               | 61 +----------------
 include/dm/device.h                            | 72 ++++++++++++++++++++
 include/linux/bug.h                            | 77 ++++++++-------------
 include/linux/build_bug.h                      | 84 +++++++++++++++++++++++
 include/linux/compat.h                         | 43 +++++-------
 include/linux/compiler.h                       |  6 +-
 include/linux/mtd/mtd.h                        | 10 +--
 include/linux/printk.h                         | 79 ++++++++++++++++++++++
 include/stdio.h                                | 59 +++++++++++++++++
 include/vsprintf.h                             |  1 +
 147 files changed, 897 insertions(+), 679 deletions(-)
 create mode 100644 include/linux/build_bug.h
 create mode 100644 include/linux/printk.h
 create mode 100644 include/stdio.h

Comments

Masahiro Yamada Oct. 4, 2017, 5:15 a.m. UTC | #1
2017-09-16 14:10 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
>
> I tested this series with buildman.
>
>
>
> Masahiro Yamada (8):
>   stdio.h: move printf() stuff from <common.h> to <stdio.h>
>   printk: collect printk stuff into <linux/printk.h> with loglevel
>     support
>   treewide: replace with error() with pr_err()
>   common.h: remove error()
>   vsprintf.h: include <linux/types.h>
>   bug.h: sync BUILD_BUG stuff with Linux 4.13
>   bug.h: move runtime BUG/WARN macros into <linux/bug.h>
>   dm: define dev_*() log functions in DM header



I am still worried if this series is dismissed.

I am being blocked from importing NAND code from Linux
due to missing/incompatible Linux-derived macros.
Tom Rini Oct. 5, 2017, 3:06 a.m. UTC | #2
On Wed, Oct 04, 2017 at 02:15:19PM +0900, Masahiro Yamada wrote:
> 2017-09-16 14:10 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:

> >

> > I tested this series with buildman.

> >

> >

> >

> > Masahiro Yamada (8):

> >   stdio.h: move printf() stuff from <common.h> to <stdio.h>

> >   printk: collect printk stuff into <linux/printk.h> with loglevel

> >     support

> >   treewide: replace with error() with pr_err()

> >   common.h: remove error()

> >   vsprintf.h: include <linux/types.h>

> >   bug.h: sync BUILD_BUG stuff with Linux 4.13

> >   bug.h: move runtime BUG/WARN macros into <linux/bug.h>

> >   dm: define dev_*() log functions in DM header

> 

> I am still worried if this series is dismissed.

> 

> I am being blocked from importing NAND code from Linux

> due to missing/incompatible Linux-derived macros.


I am looking at this, but a default LOGLEVEL of 5 is just too high and
I'm seeing what's reasonable now.

-- 
Tom
Masahiro Yamada Oct. 5, 2017, 3:20 a.m. UTC | #3
Hi Tom,


2017-10-05 12:06 GMT+09:00 Tom Rini <trini@konsulko.com>:
> On Wed, Oct 04, 2017 at 02:15:19PM +0900, Masahiro Yamada wrote:
>> 2017-09-16 14:10 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:
>> >
>> > I tested this series with buildman.
>> >
>> >
>> >
>> > Masahiro Yamada (8):
>> >   stdio.h: move printf() stuff from <common.h> to <stdio.h>
>> >   printk: collect printk stuff into <linux/printk.h> with loglevel
>> >     support
>> >   treewide: replace with error() with pr_err()
>> >   common.h: remove error()
>> >   vsprintf.h: include <linux/types.h>
>> >   bug.h: sync BUILD_BUG stuff with Linux 4.13
>> >   bug.h: move runtime BUG/WARN macros into <linux/bug.h>
>> >   dm: define dev_*() log functions in DM header
>>
>> I am still worried if this series is dismissed.
>>
>> I am being blocked from importing NAND code from Linux
>> due to missing/incompatible Linux-derived macros.
>
> I am looking at this, but a default LOGLEVEL of 5 is just too high and
> I'm seeing what's reasonable now.
>

No.  I set the default to 6, not 5.

The reason why I chose 6 was to suppress a bunch of pr_info()
from drivers/mtd/nand/, which is a copy of Linux.


If you change it to a bigger number,
some annoying logs would be displayed after NAND:  tag.

If you change it to a smaller number,
pr_notice() would be suppressed.


The Linux doc says:

 5 (KERN_NOTICE)         normal but significant condition


So, I think this is worth printing by default.


If you do not like it, you can change it,
but please make sure to adjust git-log.
Tom Rini Oct. 5, 2017, 11:58 a.m. UTC | #4
On Thu, Oct 05, 2017 at 12:20:36PM +0900, Masahiro Yamada wrote:
> Hi Tom,

> 

> 

> 2017-10-05 12:06 GMT+09:00 Tom Rini <trini@konsulko.com>:

> > On Wed, Oct 04, 2017 at 02:15:19PM +0900, Masahiro Yamada wrote:

> >> 2017-09-16 14:10 GMT+09:00 Masahiro Yamada <yamada.masahiro@socionext.com>:

> >> >

> >> > I tested this series with buildman.

> >> >

> >> >

> >> >

> >> > Masahiro Yamada (8):

> >> >   stdio.h: move printf() stuff from <common.h> to <stdio.h>

> >> >   printk: collect printk stuff into <linux/printk.h> with loglevel

> >> >     support

> >> >   treewide: replace with error() with pr_err()

> >> >   common.h: remove error()

> >> >   vsprintf.h: include <linux/types.h>

> >> >   bug.h: sync BUILD_BUG stuff with Linux 4.13

> >> >   bug.h: move runtime BUG/WARN macros into <linux/bug.h>

> >> >   dm: define dev_*() log functions in DM header

> >>

> >> I am still worried if this series is dismissed.

> >>

> >> I am being blocked from importing NAND code from Linux

> >> due to missing/incompatible Linux-derived macros.

> >

> > I am looking at this, but a default LOGLEVEL of 5 is just too high and

> > I'm seeing what's reasonable now.

> >

> 

> No.  I set the default to 6, not 5.

> 

> The reason why I chose 6 was to suppress a bunch of pr_info()

> from drivers/mtd/nand/, which is a copy of Linux.

> 

> 

> If you change it to a bigger number,

> some annoying logs would be displayed after NAND:  tag.

> 

> If you change it to a smaller number,

> pr_notice() would be suppressed.

> 

> 

> The Linux doc says:

> 

>  5 (KERN_NOTICE)         normal but significant condition

> 

> 

> So, I think this is worth printing by default.

> 

> 

> If you do not like it, you can change it,

> but please make sure to adjust git-log.


Yes, sorry.  You set it to 6, I had already ruled out 5 as too much.
I'm currently looking at 3 globally as otherwise most platforms are
growing by 5KiB or more (often much more).  And I'm going to do it as a
follow-up commit so it's clear.

-- 
Tom