Re: [PATCH] lib/vsprintf.c: remove %Z support

From: Alexey Dobriyan
Date: Mon Jan 09 2017 - 17:05:22 EST


On Wed, Jan 04, 2017 at 11:33:14AM +0200, Andy Shevchenko wrote:
> On Wed, Jan 4, 2017 at 1:01 AM, Alexey Dobriyan <adobriyan@xxxxxxxxx> wrote:
> > Now that %z is standartised in C99 there is no reason to support %Z.
> > Unlike %L it doesn't even make format strings smaller.
>
> For the following files:
> Reviewed-by: Andy Shevchenko <andy.shevchenko@xxxxxxxxx>
>
> > drivers/net/ethernet/cadence/macb.c | 2
> > drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c | 2
> > drivers/net/wireless/intel/iwlegacy/4965-mac.c | 30 ++---
> > drivers/net/wireless/intel/iwlwifi/iwl-drv.c | 16 +--
>
> > kernel/relay.c | 2
> > lib/vsprintf.c | 8 -
> > mm/dmapool.c | 2
>
> > sound/soc/soc-core.c | 2
>
> And couple of comment below.
>
> > --- a/drivers/net/ethernet/cadence/macb.c
> > +++ b/drivers/net/ethernet/cadence/macb.c
> > @@ -1566,7 +1566,7 @@ static void macb_init_rx_buffer_size(struct macb *bp, size_t size)
> > }
> > }
> >
> > - netdev_dbg(bp->dev, "mtu [%u] rx_buffer_size [%Zu]\n",
> > + netdev_dbg(bp->dev, "mtu [%u] rx_buffer_size [%zu]\n",
> > bp->dev->mtu, bp->rx_buffer_size);
> > }
>
> > --- a/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
> > +++ b/drivers/net/wireless/broadcom/brcm80211/brcmfmac/cfg80211.c
> > @@ -4878,7 +4878,7 @@ brcmf_cfg80211_mgmt_tx(struct wiphy *wiphy, struct wireless_dev *wdev,
> > kfree(af_params);
> > } else {
> > brcmf_dbg(TRACE, "Unhandled, fc=%04x!!\n", mgmt->frame_control);
> > - brcmf_dbg_hex_dump(true, buf, len, "payload, len=%Zu\n", len);
> > + brcmf_dbg_hex_dump(true, buf, len, "payload, len=%zu\n", len);
> > }
> >
> > exit:
> > --- a/drivers/net/wireless/intel/iwlegacy/4965-mac.c
> > +++ b/drivers/net/wireless/intel/iwlegacy/4965-mac.c
> > @@ -4855,39 +4855,39 @@ il4965_ucode_callback(const struct firmware *ucode_raw, void *context)
> > */
> >
> > D_INFO("f/w package hdr ucode version raw = 0x%x\n", il->ucode_ver);
> > - D_INFO("f/w package hdr runtime inst size = %Zd\n", pieces.inst_size);
> > - D_INFO("f/w package hdr runtime data size = %Zd\n", pieces.data_size);
> > - D_INFO("f/w package hdr init inst size = %Zd\n", pieces.init_size);
> > - D_INFO("f/w package hdr init data size = %Zd\n", pieces.init_data_size);
> > - D_INFO("f/w package hdr boot inst size = %Zd\n", pieces.boot_size);
> > + D_INFO("f/w package hdr runtime inst size = %zd\n", pieces.inst_size);
> > + D_INFO("f/w package hdr runtime data size = %zd\n", pieces.data_size);
> > + D_INFO("f/w package hdr init inst size = %zd\n", pieces.init_size);
> > + D_INFO("f/w package hdr init data size = %zd\n", pieces.init_data_size);
> > + D_INFO("f/w package hdr boot inst size = %zd\n", pieces.boot_size);
> >
> > /* Verify that uCode images will fit in card's SRAM */
> > if (pieces.inst_size > il->hw_params.max_inst_size) {
> > - IL_ERR("uCode instr len %Zd too large to fit in\n",
> > + IL_ERR("uCode instr len %zd too large to fit in\n",
> > pieces.inst_size);
> > goto try_again;
> > }
> >
> > if (pieces.data_size > il->hw_params.max_data_size) {
> > - IL_ERR("uCode data len %Zd too large to fit in\n",
> > + IL_ERR("uCode data len %zd too large to fit in\n",
> > pieces.data_size);
> > goto try_again;
> > }
> >
> > if (pieces.init_size > il->hw_params.max_inst_size) {
> > - IL_ERR("uCode init instr len %Zd too large to fit in\n",
> > + IL_ERR("uCode init instr len %zd too large to fit in\n",
> > pieces.init_size);
> > goto try_again;
> > }
> >
> > if (pieces.init_data_size > il->hw_params.max_data_size) {
> > - IL_ERR("uCode init data len %Zd too large to fit in\n",
> > + IL_ERR("uCode init data len %zd too large to fit in\n",
> > pieces.init_data_size);
> > goto try_again;
> > }
> >
> > if (pieces.boot_size > il->hw_params.max_bsm_size) {
> > - IL_ERR("uCode boot instr len %Zd too large to fit in\n",
> > + IL_ERR("uCode boot instr len %zd too large to fit in\n",
> > pieces.boot_size);
> > goto try_again;
> > }
> > @@ -4938,7 +4938,7 @@ il4965_ucode_callback(const struct firmware *ucode_raw, void *context)
> > /* Copy images into buffers for card's bus-master reads ... */
> >
> > /* Runtime instructions (first block of data in file) */
> > - D_INFO("Copying (but not loading) uCode instr len %Zd\n",
> > + D_INFO("Copying (but not loading) uCode instr len %zd\n",
> > pieces.inst_size);
> > memcpy(il->ucode_code.v_addr, pieces.inst, pieces.inst_size);
> >
> > @@ -4949,28 +4949,28 @@ il4965_ucode_callback(const struct firmware *ucode_raw, void *context)
> > * Runtime data
> > * NOTE: Copy into backup buffer will be done in il_up()
> > */
> > - D_INFO("Copying (but not loading) uCode data len %Zd\n",
> > + D_INFO("Copying (but not loading) uCode data len %zd\n",
> > pieces.data_size);
> > memcpy(il->ucode_data.v_addr, pieces.data, pieces.data_size);
> > memcpy(il->ucode_data_backup.v_addr, pieces.data, pieces.data_size);
> >
> > /* Initialization instructions */
> > if (pieces.init_size) {
> > - D_INFO("Copying (but not loading) init instr len %Zd\n",
> > + D_INFO("Copying (but not loading) init instr len %zd\n",
> > pieces.init_size);
> > memcpy(il->ucode_init.v_addr, pieces.init, pieces.init_size);
> > }
> >
> > /* Initialization data */
> > if (pieces.init_data_size) {
> > - D_INFO("Copying (but not loading) init data len %Zd\n",
> > + D_INFO("Copying (but not loading) init data len %zd\n",
> > pieces.init_data_size);
> > memcpy(il->ucode_init_data.v_addr, pieces.init_data,
> > pieces.init_data_size);
> > }
> >
> > /* Bootstrap instructions */
> > - D_INFO("Copying (but not loading) boot instr len %Zd\n",
> > + D_INFO("Copying (but not loading) boot instr len %zd\n",
> > pieces.boot_size);
> > memcpy(il->ucode_boot.v_addr, pieces.boot, pieces.boot_size);
> >
> > --- a/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
> > +++ b/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
> > @@ -1096,21 +1096,21 @@ static int validate_sec_sizes(struct iwl_drv *drv,
> > struct iwl_firmware_pieces *pieces,
> > const struct iwl_cfg *cfg)
> > {
> > - IWL_DEBUG_INFO(drv, "f/w package hdr runtime inst size = %Zd\n",
> > + IWL_DEBUG_INFO(drv, "f/w package hdr runtime inst size = %zd\n",
> > get_sec_size(pieces, IWL_UCODE_REGULAR,
> > IWL_UCODE_SECTION_INST));
> > - IWL_DEBUG_INFO(drv, "f/w package hdr runtime data size = %Zd\n",
> > + IWL_DEBUG_INFO(drv, "f/w package hdr runtime data size = %zd\n",
> > get_sec_size(pieces, IWL_UCODE_REGULAR,
> > IWL_UCODE_SECTION_DATA));
> > - IWL_DEBUG_INFO(drv, "f/w package hdr init inst size = %Zd\n",
> > + IWL_DEBUG_INFO(drv, "f/w package hdr init inst size = %zd\n",
> > get_sec_size(pieces, IWL_UCODE_INIT, IWL_UCODE_SECTION_INST));
> > - IWL_DEBUG_INFO(drv, "f/w package hdr init data size = %Zd\n",
> > + IWL_DEBUG_INFO(drv, "f/w package hdr init data size = %zd\n",
> > get_sec_size(pieces, IWL_UCODE_INIT, IWL_UCODE_SECTION_DATA));
> >
> > /* Verify that uCode images will fit in card's SRAM. */
> > if (get_sec_size(pieces, IWL_UCODE_REGULAR, IWL_UCODE_SECTION_INST) >
> > cfg->max_inst_size) {
> > - IWL_ERR(drv, "uCode instr len %Zd too large to fit in\n",
> > + IWL_ERR(drv, "uCode instr len %zd too large to fit in\n",
> > get_sec_size(pieces, IWL_UCODE_REGULAR,
> > IWL_UCODE_SECTION_INST));
> > return -1;
> > @@ -1118,7 +1118,7 @@ static int validate_sec_sizes(struct iwl_drv *drv,
> >
> > if (get_sec_size(pieces, IWL_UCODE_REGULAR, IWL_UCODE_SECTION_DATA) >
> > cfg->max_data_size) {
> > - IWL_ERR(drv, "uCode data len %Zd too large to fit in\n",
> > + IWL_ERR(drv, "uCode data len %zd too large to fit in\n",
> > get_sec_size(pieces, IWL_UCODE_REGULAR,
> > IWL_UCODE_SECTION_DATA));
> > return -1;
> > @@ -1126,7 +1126,7 @@ static int validate_sec_sizes(struct iwl_drv *drv,
> >
> > if (get_sec_size(pieces, IWL_UCODE_INIT, IWL_UCODE_SECTION_INST) >
> > cfg->max_inst_size) {
> > - IWL_ERR(drv, "uCode init instr len %Zd too large to fit in\n",
> > + IWL_ERR(drv, "uCode init instr len %zd too large to fit in\n",
> > get_sec_size(pieces, IWL_UCODE_INIT,
> > IWL_UCODE_SECTION_INST));
> > return -1;
> > @@ -1134,7 +1134,7 @@ static int validate_sec_sizes(struct iwl_drv *drv,
> >
> > if (get_sec_size(pieces, IWL_UCODE_INIT, IWL_UCODE_SECTION_DATA) >
> > cfg->max_data_size) {
> > - IWL_ERR(drv, "uCode init data len %Zd too large to fit in\n",
> > + IWL_ERR(drv, "uCode init data len %zd too large to fit in\n",
> > get_sec_size(pieces, IWL_UCODE_REGULAR,
> > IWL_UCODE_SECTION_DATA));
> > return -1;
>
> > --- a/kernel/relay.c
> > +++ b/kernel/relay.c
> > @@ -847,7 +847,7 @@ void relay_close(struct rchan *chan)
> >
> > if (chan->last_toobig)
> > printk(KERN_WARNING "relay: one or more items not logged "
> > - "[item size (%Zd) > sub-buffer size (%Zd)]\n",
> > + "[item size (%zd) > sub-buffer size (%zd)]\n",
> > chan->last_toobig, chan->subbuf_size);
> >
> > list_del(&chan->list);
>
> > --- a/lib/vsprintf.c
> > +++ b/lib/vsprintf.c
> > @@ -1739,6 +1739,7 @@ char *pointer(const char *fmt, char *buf, char *end, void *ptr,
> > * 'h', 'l', or 'L' for integer fields
> > * 'z' support added 23/7/1999 S.H.
> > * 'z' changed to 'Z' --davidm 1/25/99
> > + * 'Z' changed to 'z' --adobriyan 2017-01-25
> > * 't' added for ptrdiff_t
> > *
> > * @fmt: the format string
> > @@ -1838,7 +1839,7 @@ int format_decode(const char *fmt, struct printf_spec *spec)
> > /* get the conversion qualifier */
> > qualifier = 0;
>
> > if (*fmt == 'h' || _tolower(*fmt) == 'l' ||
> > - _tolower(*fmt) == 'z' || *fmt == 't') {
> > + *fmt == 'z' || *fmt == 't') {
>
> Can it be one line?

Actually, they can't because line would become 82-characters long.

Fix coding style and risk "unrelated changes" reply or don't fix coding
style and get "coding style" reply. It's coding style, who cares.

A