Skip to content

Jenkinsfile: move pipeline to library - #99

Merged
webconn merged 1 commit into
dev/v5.10.yfrom
feature/separated-pipeline
Jul 21, 2022
Merged

Jenkinsfile: move pipeline to library#99
webconn merged 1 commit into
dev/v5.10.yfrom
feature/separated-pipeline

Conversation

@webconn

@webconn webconn commented Jul 20, 2022

Copy link
Copy Markdown
Contributor

Переносит пайплайн для сборки ядра в библиотеку. Там его проще менять отдельно от ядра, меньше переносов при портировании и т.д.

Вместе с этим в библиотеке были исправлены проблемы сборки пайплайна.

Ядро для WB5 выкинул намеренно, т.к. давно не пересобирали и даже не проверяли.

Парный PR в библиотеку: https://github.com/wirenboard/jenkins-pipeline-lib/pull/16/

@webconn
webconn merged commit 3bcadf6 into dev/v5.10.y Jul 21, 2022
@webconn
webconn deleted the feature/separated-pipeline branch July 21, 2022 08:47
evgeny-boger pushed a commit that referenced this pull request Mar 26, 2024
* wb-deb: linux 5.10

* build system integrated in kernel repository in single commit
* use static changelog
* build kernel using Jenkins pipeline with improvements

* wb-deb: add revision from changelog to uname

 * also add FORCE_OVERWRITE to upload stage

* Makefile: do not remove debian directory

* rts on rs485 uarts is configured as gpio with

* dts: disable rts-gpios on WB6 modX uarts by default (#68)

* add support for wb7 in custom build scripts

* conflict on linux-image to forbid multiple images (#77)

* fix build with recent dpkg (ubuntu 22.04)

dpkg guys really like to break backward package compatibility
every couple of years. This time newer dpkg defaults to zst compression
which is not supported by slightly older dpkg from bullsey.

* add wireguard-required packages to "Provides:" section (#129)

* add wireguard-required packages to "Provides:" section

* add wireguard-modules & wireguard-dkms packages

* remove dkms package

* wireguard-modules is only in provides

jenkinsfile: rename contactless folder to wirenboard (#59)

jenkinsfile: replace manual deployment with one from library (#61)

wb: jenkins: add wb7 to target list

Jenkinsfile: move pipeline to library (#99)

wb-deb: add debian files exceptions to .gitignore

wb: add more build artifacts to gitignore

wb build scripts: add wb7min
minimum configuration w/o Wi-Fi and with everything compiled in kernel.
add scripts to make bootpart image with zImage, dtbs and version

initial commit of bootlet in package

fix wb build scripts: add wb7min

Jenkinsfile: build bootlets by default
taraant pushed a commit that referenced this pull request May 16, 2025
taraant pushed a commit that referenced this pull request May 16, 2025
Original commits:
  .gitignore
    39f9574: wb: add more build artifacts to gitignore
  .gitmodules
    97b9b0f: wb7: Add rtl8733bu wireless driver as a submodule
  Jenkinsfile
    be8355f: jenkinsfile: replace manual deployment with one from library (#61)
    2f63eae: wb: jenkins: add wb7 to target list
    3bcadf6: Jenkinsfile: move pipeline to library (#99)
    7863007: Jenkinsfile: build bootlets by default
  scripts/package/wb/builddeb
    b042223: dts: disable rts-gpios on WB6 modX uarts by default (#68)
    fc8da1c: builddeb: conflict on linux-image to forbid multiple images (#77)
    bf2dfdc: fix build with recent dpkg (ubuntu 22.04)
    f3e93d5: wb builddeb: add wireguard-required packages to "Provides:" section (#129)
  scripts/package/wb/common.sh
    efbe2be: add wb7min defconfig
  scripts/package/wb/do_build_bootpart.sh
    efbe2be: add wb7min defconfig
  scripts/package/wb/do_build_deb.sh
    7edec46: add support for wb7 in custom build scripts
    efbe2be: add wb7min defconfig
    13c5c77: initial commit of bootlet in package
    90a0ec9: scripts: make wb7x-factory-bootlet not work as regular bootlet; no functional changes
  scripts/package/wb/version.sh
    7edec46: add support for wb7 in custom build scripts
    efbe2be: add wb7min defconfig
    13c5c77: initial commit of bootlet in package
    90a0ec9: scripts: make wb7x-factory-bootlet not work as regular bootlet; no functional changes
taraant pushed a commit that referenced this pull request May 16, 2025
Original commits:
  .gitignore
    39f9574: wb: add more build artifacts to gitignore
  .gitmodules
    97b9b0f: wb7: Add rtl8733bu wireless driver as a submodule
  Jenkinsfile
    be8355f: jenkinsfile: replace manual deployment with one from library (#61)
    2f63eae: wb: jenkins: add wb7 to target list
    3bcadf6: Jenkinsfile: move pipeline to library (#99)
    7863007: Jenkinsfile: build bootlets by default
  scripts/package/wb/builddeb
    b042223: dts: disable rts-gpios on WB6 modX uarts by default (#68)
    fc8da1c: builddeb: conflict on linux-image to forbid multiple images (#77)
    bf2dfdc: fix build with recent dpkg (ubuntu 22.04)
    f3e93d5: wb builddeb: add wireguard-required packages to "Provides:" section (#129)
  scripts/package/wb/common.sh
    efbe2be: add wb7min defconfig
  scripts/package/wb/do_build_bootpart.sh
    efbe2be: add wb7min defconfig
  scripts/package/wb/do_build_deb.sh
    7edec46: add support for wb7 in custom build scripts
    efbe2be: add wb7min defconfig
    13c5c77: initial commit of bootlet in package
    90a0ec9: scripts: make wb7x-factory-bootlet not work as regular bootlet; no functional changes
  scripts/package/wb/version.sh
    7edec46: add support for wb7 in custom build scripts
    efbe2be: add wb7min defconfig
    13c5c77: initial commit of bootlet in package
    90a0ec9: scripts: make wb7x-factory-bootlet not work as regular bootlet; no functional changes
taraant pushed a commit that referenced this pull request May 16, 2025
Original commits:
  .gitignore
    39f9574: wb: add more build artifacts to gitignore
  .gitmodules
    97b9b0f: wb7: Add rtl8733bu wireless driver as a submodule
  Jenkinsfile
    be8355f: jenkinsfile: replace manual deployment with one from library (#61)
    2f63eae: wb: jenkins: add wb7 to target list
    3bcadf6: Jenkinsfile: move pipeline to library (#99)
    7863007: Jenkinsfile: build bootlets by default
  scripts/package/wb/builddeb
    b042223: dts: disable rts-gpios on WB6 modX uarts by default (#68)
    fc8da1c: builddeb: conflict on linux-image to forbid multiple images (#77)
    bf2dfdc: fix build with recent dpkg (ubuntu 22.04)
    f3e93d5: wb builddeb: add wireguard-required packages to "Provides:" section (#129)
  scripts/package/wb/common.sh
    efbe2be: add wb7min defconfig
  scripts/package/wb/do_build_bootpart.sh
    efbe2be: add wb7min defconfig
  scripts/package/wb/do_build_deb.sh
    7edec46: add support for wb7 in custom build scripts
    efbe2be: add wb7min defconfig
    13c5c77: initial commit of bootlet in package
    90a0ec9: scripts: make wb7x-factory-bootlet not work as regular bootlet; no functional changes
  scripts/package/wb/version.sh
    7edec46: add support for wb7 in custom build scripts
    efbe2be: add wb7min defconfig
    13c5c77: initial commit of bootlet in package
    90a0ec9: scripts: make wb7x-factory-bootlet not work as regular bootlet; no functional changes
taraant pushed a commit that referenced this pull request May 19, 2025
taraant pushed a commit that referenced this pull request May 19, 2025
Original commits:
  .gitignore
    9d7ac38: wb-deb: linux 5.10 (#54)
    324edfb: wb-deb: add debian files exceptions to .gitignore
    39f9574: wb: add more build artifacts to gitignore
  .gitmodules
    97b9b0f: wb7: Add rtl8733bu wireless driver as a submodule
  Jenkinsfile
    9d7ac38: wb-deb: linux 5.10 (#54)
    c6a7634: jenkinsfile: rename contactless folder to wirenboard (#59)
    be8355f: jenkinsfile: replace manual deployment with one from library (#61)
    2f63eae: wb: jenkins: add wb7 to target list
    3bcadf6: Jenkinsfile: move pipeline to library (#99)
    7863007: Jenkinsfile: build bootlets by default
  scripts/Makefile.kasan
    393200a: kasan: fix hwasan build for gcc
  scripts/Makefile.package
    9d7ac38: wb-deb: linux 5.10 (#54)
  scripts/package/wb/builddeb
    9d7ac38: wb-deb: linux 5.10 (#54)
    8b7ff1b: rts on rs485 uarts is configured as gpio with default PD (#56)
    b042223: dts: disable rts-gpios on WB6 modX uarts by default (#68)
    fc8da1c: builddeb: conflict on linux-image to forbid multiple images (#77)
    bf2dfdc: fix build with recent dpkg (ubuntu 22.04)
    f3e93d5: wb builddeb: add wireguard-required packages to "Provides:" section (#129)
  scripts/package/wb/common.sh
    efbe2be: add wb7min defconfig
  scripts/package/wb/do_build_bootpart.sh
    efbe2be: add wb7min defconfig
  scripts/package/wb/do_build_deb.sh
    9d7ac38: wb-deb: linux 5.10 (#54)
    7edec46: add support for wb7 in custom build scripts
    efbe2be: add wb7min defconfig
    13c5c77: initial commit of bootlet in package
    90a0ec9: scripts: make wb7x-factory-bootlet not work as regular bootlet; no functional changes
  scripts/package/wb/version.sh
    9d7ac38: wb-deb: linux 5.10 (#54)
    7edec46: add support for wb7 in custom build scripts
    efbe2be: add wb7min defconfig
    13c5c77: initial commit of bootlet in package
    90a0ec9: scripts: make wb7x-factory-bootlet not work as regular bootlet; no functional changes
taraant pushed a commit that referenced this pull request Jun 6, 2025
[ Upstream commit 7dd7f39 ]

hda_generic_machine_select() appends -idisp to the tplg filename by
allocating a new string with devm_kasprintf(), then stores the string
right back into the global variable snd_soc_acpi_intel_hda_machines.
When the module is unloaded, this memory is freed, resulting in a global
variable pointing to freed memory.  Reloading the module then triggers
a use-after-free:

BUG: KFENCE: use-after-free read in string+0x48/0xe0

Use-after-free read at 0x00000000967e0109 (in kfence-#99):
 string+0x48/0xe0
 vsnprintf+0x329/0x6e0
 devm_kvasprintf+0x54/0xb0
 devm_kasprintf+0x58/0x80
 hda_machine_select.cold+0x198/0x17a2 [snd_sof_intel_hda_generic]
 sof_probe_work+0x7f/0x600 [snd_sof]
 process_one_work+0x17b/0x330
 worker_thread+0x2ce/0x3f0
 kthread+0xcf/0x100
 ret_from_fork+0x31/0x50
 ret_from_fork_asm+0x1a/0x30

kfence-#99: 0x00000000198a940f-0x00000000ace47d9d, size=64, cache=kmalloc-64

allocated by task 333 on cpu 8 at 17.798069s (130.453553s ago):
 devm_kmalloc+0x52/0x120
 devm_kvasprintf+0x66/0xb0
 devm_kasprintf+0x58/0x80
 hda_machine_select.cold+0x198/0x17a2 [snd_sof_intel_hda_generic]
 sof_probe_work+0x7f/0x600 [snd_sof]
 process_one_work+0x17b/0x330
 worker_thread+0x2ce/0x3f0
 kthread+0xcf/0x100
 ret_from_fork+0x31/0x50
 ret_from_fork_asm+0x1a/0x30

freed by task 1543 on cpu 4 at 141.586686s (6.665010s ago):
 release_nodes+0x43/0xb0
 devres_release_all+0x90/0xf0
 device_unbind_cleanup+0xe/0x70
 device_release_driver_internal+0x1c1/0x200
 driver_detach+0x48/0x90
 bus_remove_driver+0x6d/0xf0
 pci_unregister_driver+0x42/0xb0
 __do_sys_delete_module+0x1d1/0x310
 do_syscall_64+0x82/0x190
 entry_SYSCALL_64_after_hwframe+0x76/0x7e

Fix it by copying the match array with devm_kmemdup_array() before we
modify it.

Fixes: 5458411 ("ASoC: SOF: Intel: hda: refactoring topology name fixup for HDA mach")
Suggested-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Acked-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Signed-off-by: Tavian Barnes <tavianator@tavianator.com>
Link: https://patch.msgid.link/570b15570b274520a0d9052f4e0f064a29c950ef.1747229716.git.tavianator@tavianator.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
taraant pushed a commit that referenced this pull request Jun 9, 2025
[ Upstream commit 7dd7f39 ]

hda_generic_machine_select() appends -idisp to the tplg filename by
allocating a new string with devm_kasprintf(), then stores the string
right back into the global variable snd_soc_acpi_intel_hda_machines.
When the module is unloaded, this memory is freed, resulting in a global
variable pointing to freed memory.  Reloading the module then triggers
a use-after-free:

BUG: KFENCE: use-after-free read in string+0x48/0xe0

Use-after-free read at 0x00000000967e0109 (in kfence-#99):
 string+0x48/0xe0
 vsnprintf+0x329/0x6e0
 devm_kvasprintf+0x54/0xb0
 devm_kasprintf+0x58/0x80
 hda_machine_select.cold+0x198/0x17a2 [snd_sof_intel_hda_generic]
 sof_probe_work+0x7f/0x600 [snd_sof]
 process_one_work+0x17b/0x330
 worker_thread+0x2ce/0x3f0
 kthread+0xcf/0x100
 ret_from_fork+0x31/0x50
 ret_from_fork_asm+0x1a/0x30

kfence-#99: 0x00000000198a940f-0x00000000ace47d9d, size=64, cache=kmalloc-64

allocated by task 333 on cpu 8 at 17.798069s (130.453553s ago):
 devm_kmalloc+0x52/0x120
 devm_kvasprintf+0x66/0xb0
 devm_kasprintf+0x58/0x80
 hda_machine_select.cold+0x198/0x17a2 [snd_sof_intel_hda_generic]
 sof_probe_work+0x7f/0x600 [snd_sof]
 process_one_work+0x17b/0x330
 worker_thread+0x2ce/0x3f0
 kthread+0xcf/0x100
 ret_from_fork+0x31/0x50
 ret_from_fork_asm+0x1a/0x30

freed by task 1543 on cpu 4 at 141.586686s (6.665010s ago):
 release_nodes+0x43/0xb0
 devres_release_all+0x90/0xf0
 device_unbind_cleanup+0xe/0x70
 device_release_driver_internal+0x1c1/0x200
 driver_detach+0x48/0x90
 bus_remove_driver+0x6d/0xf0
 pci_unregister_driver+0x42/0xb0
 __do_sys_delete_module+0x1d1/0x310
 do_syscall_64+0x82/0x190
 entry_SYSCALL_64_after_hwframe+0x76/0x7e

Fix it by copying the match array with devm_kmemdup_array() before we
modify it.

Fixes: 5458411 ("ASoC: SOF: Intel: hda: refactoring topology name fixup for HDA mach")
Suggested-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Acked-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Signed-off-by: Tavian Barnes <tavianator@tavianator.com>
Link: https://patch.msgid.link/570b15570b274520a0d9052f4e0f064a29c950ef.1747229716.git.tavianator@tavianator.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
taraant pushed a commit that referenced this pull request Jun 9, 2025
taraant pushed a commit that referenced this pull request Jul 29, 2025
taraant pushed a commit that referenced this pull request Oct 31, 2025
taraant pushed a commit that referenced this pull request Apr 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants