All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Linus Walleij <linus.walleij@linaro.org>
Cc: kbuild-all@lists.01.org, linux-arm-kernel@lists.infradead.org
Subject: [linusw-nomadik:ux500-crypto-fb-stab 24/24] drivers/crypto/ux500/hash/hash_alg.h:198:33: error: field 'fallback_req' has incomplete type
Date: Wed, 17 Aug 2022 16:13:53 +0800	[thread overview]
Message-ID: <202208171544.94dYWwp0-lkp@intel.com> (raw)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik.git ux500-crypto-fb-stab
head:   8b966d88af5f34992cc041b8c1a3aa8ff6e166d3
commit: 8b966d88af5f34992cc041b8c1a3aa8ff6e166d3 [24/24] fallback stab
config: arm-allyesconfig (https://download.01.org/0day-ci/archive/20220817/202208171544.94dYWwp0-lkp@intel.com/config)
compiler: arm-linux-gnueabi-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik.git/commit/?id=8b966d88af5f34992cc041b8c1a3aa8ff6e166d3
        git remote add linusw-nomadik https://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-nomadik.git
        git fetch --no-tags linusw-nomadik ux500-crypto-fb-stab
        git checkout 8b966d88af5f34992cc041b8c1a3aa8ff6e166d3
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   In file included from drivers/crypto/ux500/hash/hash_core.c:39:
>> drivers/crypto/ux500/hash/hash_alg.h:198:33: error: field 'fallback_req' has incomplete type
     198 |         struct skcipher_request fallback_req;
         |                                 ^~~~~~~~~~~~
   drivers/crypto/ux500/hash/hash_core.c: In function 'ux500_hash_init':
>> drivers/crypto/ux500/hash/hash_core.c:409:58: error: passing argument 2 of 'ahash_request_set_tfm' from incompatible pointer type [-Werror=incompatible-pointer-types]
     409 |         ahash_request_set_tfm(&req_ctx->fallback_req, ctx->fallback_tfm);
         |                                                       ~~~^~~~~~~~~~~~~~
         |                                                          |
         |                                                          struct crypto_skcipher *
   In file included from include/crypto/internal/hash.h:12,
                    from drivers/crypto/ux500/hash/hash_core.c:33:
   include/crypto/hash.h:582:63: note: expected 'struct crypto_ahash *' but argument is of type 'struct crypto_skcipher *'
     582 |                                          struct crypto_ahash *tfm)
         |                                          ~~~~~~~~~~~~~~~~~~~~~^~~
   In file included from include/linux/device.h:15,
                    from include/linux/amba/bus.h:15,
                    from drivers/crypto/ux500/hash/hash_core.c:16:
   drivers/crypto/ux500/hash/hash_core.c: In function 'hash_setkey':
>> drivers/crypto/ux500/hash/hash_core.c:1059:28: error: passing argument 1 of '_dev_err' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1059 |                 dev_err(ctx->device, "shash init error ret=%d\n", ret);
         |                         ~~~^~~~~~~~
         |                            |
         |                            struct hash_device_data *
   include/linux/dev_printk.h:110:25: note: in definition of macro 'dev_printk_index_wrap'
     110 |                 _p_func(dev, fmt, ##__VA_ARGS__);                       \
         |                         ^~~
   drivers/crypto/ux500/hash/hash_core.c:1059:17: note: in expansion of macro 'dev_err'
    1059 |                 dev_err(ctx->device, "shash init error ret=%d\n", ret);
         |                 ^~~~~~~
   include/linux/dev_printk.h:50:36: note: expected 'const struct device *' but argument is of type 'struct hash_device_data *'
      50 | void _dev_err(const struct device *dev, const char *fmt, ...);
         |               ~~~~~~~~~~~~~~~~~~~~~^~~
   drivers/crypto/ux500/hash/hash_core.c:1064:28: error: passing argument 1 of '_dev_err' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1064 |                 dev_err(ctx->device, "shash finup error\n");
         |                         ~~~^~~~~~~~
         |                            |
         |                            struct hash_device_data *
   include/linux/dev_printk.h:110:25: note: in definition of macro 'dev_printk_index_wrap'
     110 |                 _p_func(dev, fmt, ##__VA_ARGS__);                       \
         |                         ^~~
   drivers/crypto/ux500/hash/hash_core.c:1064:17: note: in expansion of macro 'dev_err'
    1064 |                 dev_err(ctx->device, "shash finup error\n");
         |                 ^~~~~~~
   include/linux/dev_printk.h:50:36: note: expected 'const struct device *' but argument is of type 'struct hash_device_data *'
      50 | void _dev_err(const struct device *dev, const char *fmt, ...);
         |               ~~~~~~~~~~~~~~~~~~~~~^~~
   drivers/crypto/ux500/hash/hash_core.c: In function 'hash_cra_init':
>> drivers/crypto/ux500/hash/hash_core.c:1320:27: error: assignment to 'struct crypto_skcipher *' from incompatible pointer type 'struct crypto_ahash *' [-Werror=incompatible-pointer-types]
    1320 |         ctx->fallback_tfm = crypto_alloc_ahash(crypto_tfm_alg_name(tfm), 0,
         |                           ^
   drivers/crypto/ux500/hash/hash_core.c:1323:28: error: passing argument 1 of '_dev_err' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1323 |                 dev_err(ctx->device, "fallback driver could no be loaded\n");
         |                         ~~~^~~~~~~~
         |                            |
         |                            struct hash_device_data *
   include/linux/dev_printk.h:110:25: note: in definition of macro 'dev_printk_index_wrap'
     110 |                 _p_func(dev, fmt, ##__VA_ARGS__);                       \
         |                         ^~~
   drivers/crypto/ux500/hash/hash_core.c:1323:17: note: in expansion of macro 'dev_err'
    1323 |                 dev_err(ctx->device, "fallback driver could no be loaded\n");
         |                 ^~~~~~~
   include/linux/dev_printk.h:50:36: note: expected 'const struct device *' but argument is of type 'struct hash_device_data *'
      50 | void _dev_err(const struct device *dev, const char *fmt, ...);
         |               ~~~~~~~~~~~~~~~~~~~~~^~~
>> drivers/crypto/ux500/hash/hash_core.c:1329:58: error: passing argument 1 of 'crypto_ahash_reqsize' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1329 |                                  crypto_ahash_reqsize(ctx->fallback_tfm));
         |                                                       ~~~^~~~~~~~~~~~~~
         |                                                          |
         |                                                          struct crypto_skcipher *
   include/crypto/hash.h:413:70: note: expected 'struct crypto_ahash *' but argument is of type 'struct crypto_skcipher *'
     413 | static inline unsigned int crypto_ahash_reqsize(struct crypto_ahash *tfm)
         |                                                 ~~~~~~~~~~~~~~~~~~~~~^~~
   In file included from include/linux/string.h:253,
                    from include/linux/bitmap.h:11,
                    from include/linux/cpumask.h:12,
                    from include/linux/smp.h:13,
                    from include/linux/lockdep.h:14,
                    from include/linux/mutex.h:17,
                    from include/linux/notifier.h:14,
                    from include/linux/clk.h:14,
                    from include/linux/amba/bus.h:14:
>> drivers/crypto/ux500/hash/hash_core.c:1331:79: error: invalid use of undefined type 'struct crypto_skcipher'
    1331 |         memcpy(hash_alg->fbname, crypto_tfm_alg_driver_name(&ctx->fallback_tfm->base),
         |                                                                               ^~
   include/linux/fortify-string.h:376:52: note: in definition of macro '__fortify_memcpy_chk'
     376 |         fortify_memcpy_chk(__fortify_size, p_size, q_size,              \
         |                                                    ^~~~~~
   drivers/crypto/ux500/hash/hash_core.c:1331:9: note: in expansion of macro 'memcpy'
    1331 |         memcpy(hash_alg->fbname, crypto_tfm_alg_driver_name(&ctx->fallback_tfm->base),
         |         ^~~~~~
>> drivers/crypto/ux500/hash/hash_core.c:1331:79: error: invalid use of undefined type 'struct crypto_skcipher'
    1331 |         memcpy(hash_alg->fbname, crypto_tfm_alg_driver_name(&ctx->fallback_tfm->base),
         |                                                                               ^~
   include/linux/fortify-string.h:377:42: note: in definition of macro '__fortify_memcpy_chk'
     377 |                            p_size_field, q_size_field, #op);            \
         |                                          ^~~~~~~~~~~~
   drivers/crypto/ux500/hash/hash_core.c:1331:9: note: in expansion of macro 'memcpy'
    1331 |         memcpy(hash_alg->fbname, crypto_tfm_alg_driver_name(&ctx->fallback_tfm->base),
         |         ^~~~~~
>> drivers/crypto/ux500/hash/hash_core.c:1331:79: error: invalid use of undefined type 'struct crypto_skcipher'
    1331 |         memcpy(hash_alg->fbname, crypto_tfm_alg_driver_name(&ctx->fallback_tfm->base),
         |                                                                               ^~
   include/linux/fortify-string.h:378:30: note: in definition of macro '__fortify_memcpy_chk'
     378 |         __underlying_##op(p, q, __fortify_size);                        \
         |                              ^
   drivers/crypto/ux500/hash/hash_core.c:1331:9: note: in expansion of macro 'memcpy'
    1331 |         memcpy(hash_alg->fbname, crypto_tfm_alg_driver_name(&ctx->fallback_tfm->base),
         |         ^~~~~~
   drivers/crypto/ux500/hash/hash_core.c: In function 'hash_cra_exit':
>> drivers/crypto/ux500/hash/hash_core.c:1347:30: error: passing argument 1 of 'crypto_free_ahash' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1347 |         crypto_free_ahash(ctx->fallback_tfm);
         |                           ~~~^~~~~~~~~~~~~~
         |                              |
         |                              struct crypto_skcipher *
   include/crypto/hash.h:287:59: note: expected 'struct crypto_ahash *' but argument is of type 'struct crypto_skcipher *'
     287 | static inline void crypto_free_ahash(struct crypto_ahash *tfm)
         |                                      ~~~~~~~~~~~~~~~~~~~~~^~~
   drivers/crypto/ux500/hash/hash_core.c: At top level:
>> drivers/crypto/ux500/hash/hash_core.c:1366:65: error: expected expression before ',' token
    1366 |                                 .cra_flags = CRYPTO_ALG_ASYNC | ,
         |                                                                 ^
   cc1: some warnings being treated as errors


vim +/fallback_req +198 drivers/crypto/ux500/hash/hash_alg.h

   175	
   176	/**
   177	 * struct hash_ctx - The request context used for hash calculations.
   178	 * @buffer:	Working buffer for messages going to the hardware.
   179	 * @length:	Length of the part of message hashed so far (floor(N/64) * 64).
   180	 * @index:	Valid number of bytes in buffer (N % 64).
   181	 * @state:	The state of the current calculations.
   182	 * @dma_mode:	Used in special cases (workaround), e.g. need to change to
   183	 *		cpu mode, if not supported/working in dma mode.
   184	 * @hw_initialized: Indicates if hardware is initialized for new operations.
   185	 * @fallback_req: Request struct for invoking the fallback skcipher TFM
   186	 *
   187	 * WARNING: "index" is the  member of the structure, to be sure  that "buffer"
   188	 * is aligned on a 4-bytes boundary. This is highly implementation dependent
   189	 * and MUST be checked whenever this code is ported on new platforms.
   190	 */
   191	struct hash_req_ctx {
   192		u32			buffer[HASH_BLOCK_SIZE / sizeof(u32)];
   193		u64			length;
   194		u8			index;
   195		bool			dma_mode;
   196		bool			hw_initialized;
   197		/* Keep this as the end of the struct for referencing by tail */
 > 198		struct skcipher_request	fallback_req;
   199	};
   200	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

                 reply	other threads:[~2022-08-17  8:17 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=202208171544.94dYWwp0-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild-all@lists.01.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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.