All of lore.kernel.org
 help / color / mirror / Atom feed
* linux-next: build warnings after merge of the tomoyo tree
@ 2022-05-31  0:44 Stephen Rothwell
  2022-05-31  4:31 ` Tetsuo Handa
  0 siblings, 1 reply; 3+ messages in thread
From: Stephen Rothwell @ 2022-05-31  0:44 UTC (permalink / raw)
  To: Tetsuo Handa; +Cc: Linux Kernel Mailing List, Linux Next Mailing List

[-- Attachment #1: Type: text/plain, Size: 4663 bytes --]

Hi all,

After merging the tomoyo tree, today's linux-next build (powerpc
ppc64_defconfig) produced these warnings:

drivers/scsi/mpt3sas/mpt3sas_scsih.c: In function 'scsih_suspend':
drivers/scsi/mpt3sas/mpt3sas_scsih.c:12412:9: note: '#pragma message: Please avoid flushing system-wide workqueues.'
12412 |         flush_scheduled_work();
      |         ^~~~~~~~~~~~~~~~~~~~
drivers/scsi/qla2xxx/qla_target.c: In function 'qlt_stop_phase1':
drivers/scsi/qla2xxx/qla_target.c:1566:17: note: '#pragma message: Please avoid flushing system-wide workqueues.'
 1566 |                 flush_scheduled_work();
      |                 ^~~~~~~~~~~~~~~~~~~~
drivers/md/dm.c: In function 'local_exit':
drivers/md/dm.c:246:9: note: '#pragma message: Please avoid flushing system-wide workqueues.'
  246 |         flush_scheduled_work();
      |         ^~~~~~~~~~~~~~~~~~~~

Introduced by commit

  48d1646a0262 ("workqueue: Wrap flush_scheduled_work() using a macro")

Also, my x86_64 allmodconfig build gained these:

drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.c: In function 'cdns_mhdp_remove':
drivers/gpu/drm/bridge/cadence/cdns-mhdp8546-core.c:2606:9: note: '#pragma message: Please avoid flushing system-wide workqueues.'
 2606 |         flush_scheduled_work();
      |         ^~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/bridge/lontium-lt9611uxc.c: In function 'lt9611uxc_remove':
drivers/gpu/drm/bridge/lontium-lt9611uxc.c:985:9: note: '#pragma message: Please avoid flushing system-wide workqueues.'
  985 |         flush_scheduled_work();
      |         ^~~~~~~~~~~~~~~~~~~~
drivers/message/fusion/mptscsih.c: In function 'mptscsih_suspend':
drivers/message/fusion/mptscsih.c:1234:9: note: '#pragma message: Please avoid flushing system-wide workqueues.'
 1234 |         flush_scheduled_work();
      |         ^~~~~~~~~~~~~~~~~~~~
drivers/net/wireless/ath/ath6kl/usb.c: In function 'ath6kl_usb_flush_all':
drivers/net/wireless/ath/ath6kl/usb.c:481:9: note: '#pragma message: Please avoid flushing system-wide workqueues.'
  481 |         flush_scheduled_work();
      |         ^~~~~~~~~~~~~~~~~~~~
In file included from drivers/gpu/drm/i915/gt/intel_execlists_submission.c:4112:
drivers/gpu/drm/i915/gt/selftest_execlists.c: In function 'wait_for_reset':
drivers/gpu/drm/i915/gt/selftest_execlists.c:88:9: note: '#pragma message: Please avoid flushing system-wide workqueues.'
   88 |         flush_scheduled_work();
      |         ^~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/i915/display/intel_display.c: In function 'intel_modeset_driver_remove_noirq':
drivers/gpu/drm/i915/display/intel_display.c:10502:9: note: '#pragma message: Please avoid flushing system-wide workqueues.'
10502 |         flush_scheduled_work();
      |         ^~~~~~~~~~~~~~~~~~~~
drivers/scsi/qla2xxx/qla_target.c: In function 'qlt_stop_phase1':
drivers/scsi/qla2xxx/qla_target.c:1566:17: note: '#pragma message: Please avoid flushing system-wide workqueues.'
 1566 |                 flush_scheduled_work();
      |                 ^~~~~~~~~~~~~~~~~~~~
drivers/rtc/dev.c: In function 'clear_uie':
drivers/rtc/dev.c:99:25: note: '#pragma message: Please avoid flushing system-wide workqueues.'
   99 |                         flush_scheduled_work();
      |                         ^~~~~~~~~~~~~~~~~~~~
drivers/scsi/mpt3sas/mpt3sas_scsih.c: In function 'scsih_suspend':
drivers/scsi/mpt3sas/mpt3sas_scsih.c:12412:9: note: '#pragma message: Please avoid flushing system-wide workqueues.'
12412 |         flush_scheduled_work();
      |         ^~~~~~~~~~~~~~~~~~~~
drivers/md/dm.c: In function 'local_exit':
drivers/md/dm.c:246:9: note: '#pragma message: Please avoid flushing system-wide workqueues.'
  246 |         flush_scheduled_work();
      |         ^~~~~~~~~~~~~~~~~~~~
drivers/platform/surface/surface_acpi_notify.c: In function 'san_remove':
drivers/platform/surface/surface_acpi_notify.c:864:9: note: '#pragma message: Please avoid flushing system-wide workqueues.'
  864 |         flush_scheduled_work();
      |         ^~~~~~~~~~~~~~~~~~~~
drivers/rapidio/devices/tsi721.c: In function 'tsi721_remove':
drivers/rapidio/devices/tsi721.c:2944:9: note: '#pragma message: Please avoid flushing system-wide workqueues.'
 2944 |         flush_scheduled_work();
      |         ^~~~~~~~~~~~~~~~~~~~
drivers/iio/light/tsl2563.c: In function 'tsl2563_remove':
drivers/iio/light/tsl2563.c:811:9: note: '#pragma message: Please avoid flushing system-wide workqueues.'
  811 |         flush_scheduled_work();
      |         ^~~~~~~~~~~~~~~~~~~~

Linus will not be happy ...
-- 
Cheers,
Stephen Rothwell

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: linux-next: build warnings after merge of the tomoyo tree
  2022-05-31  0:44 linux-next: build warnings after merge of the tomoyo tree Stephen Rothwell
@ 2022-05-31  4:31 ` Tetsuo Handa
  2022-05-31 16:45   ` Linus Torvalds
  0 siblings, 1 reply; 3+ messages in thread
From: Tetsuo Handa @ 2022-05-31  4:31 UTC (permalink / raw)
  To: Stephen Rothwell
  Cc: Linux Kernel Mailing List, Linux Next Mailing List, Linus Torvalds

On 2022/05/31 9:44, Stephen Rothwell wrote:
> Hi all,
> 
> After merging the tomoyo tree, today's linux-next build (powerpc
> ppc64_defconfig) produced these warnings:
> 
> drivers/scsi/mpt3sas/mpt3sas_scsih.c:12412:9: note: '#pragma message: Please avoid flushing system-wide workqueues.'

This is neither "warning:" nor "error:". This is a "note:" message which also appears with "make W=1" case.

> Also, my x86_64 allmodconfig build gained these:

Yes, currently there are many matches when building all modules.
But do developers build all modules?

> Linus will not be happy ...

Hmm, an important part which was missing in commit 771c035372a036f8 ("deprecate
the '__deprecated' attribute warnings entirely and for good") is that Linus
builds all modules and reads all messages during the build?

If that is the case, reporting "Please avoid flushing system-wide workqueues."
every time sounds noisy for him.

But since __deprecated became no-op in v4.19, I guess that developers abandoned
efforts for removing __deprecated usage.

  v5.18: 13 references
  v5.10: 12 references
  v4.19: 12 references
  v4.18: 20 references
  v4.10: 25 references
  v4.0:  25 references
  v3.10: 37 references

What I'm trying to do is to teach developers about possibility of problems
at compile time. __deprecated suits here but is no-op.

Something like console_loglevel which can be controlled on per directory
basis (so that developers can deeply listen to messages from only modules
they maintain) is needed for kernel build?


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: linux-next: build warnings after merge of the tomoyo tree
  2022-05-31  4:31 ` Tetsuo Handa
@ 2022-05-31 16:45   ` Linus Torvalds
  0 siblings, 0 replies; 3+ messages in thread
From: Linus Torvalds @ 2022-05-31 16:45 UTC (permalink / raw)
  To: Tetsuo Handa
  Cc: Stephen Rothwell, Linux Kernel Mailing List, Linux Next Mailing List

On Mon, May 30, 2022 at 9:32 PM Tetsuo Handa
<penguin-kernel@i-love.sakura.ne.jp> wrote:
>
> Yes, currently there are many matches when building all modules.
> But do developers build all modules?

They had better. Every time you change a core header file, you'd
better check it. And the minimum check is "build as much as you can on
your primary architecture", which is usually something like
'allmodconfig'.

> Hmm, an important part which was missing in commit 771c035372a036f8 ("deprecate
> the '__deprecated' attribute warnings entirely and for good") is that Linus
> builds all modules and reads all messages during the build?

Indeed. I do an 'allmodconfig' build between every single pull  I do
(except when traveling - it gets too painful on a laptop), and often
do a couple of other builds too (ie I have my own "machine config"
that I also do).

And yeah, I will complain if that build is not quiet. The standard
kernel build needs to be _clean_, because that's the only way you
notice when new problems happen.

                 Linus

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-05-31 16:46 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-31  0:44 linux-next: build warnings after merge of the tomoyo tree Stephen Rothwell
2022-05-31  4:31 ` Tetsuo Handa
2022-05-31 16:45   ` Linus Torvalds

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.