Skip to content

Commit

Permalink
Use github-mirror-action@v3
Browse files Browse the repository at this point in the history
  • Loading branch information
johnny-mnemonic committed Jan 11, 2024
1 parent ca4d9b8 commit 771bb85
Show file tree
Hide file tree
Showing 19 changed files with 4,875 additions and 4 deletions.
46 changes: 46 additions & 0 deletions .github/workflows/build-kernel.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: 'build kernel'
on:
workflow_call:
inputs:
branch:
required: true
type: string
kernel_version:
required: true
type: string

workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
with:
ref: ${{ inputs.branch }}

- name: build_step
run: |
echo "build"
build_dir=$( pwd )
pushd ../
wget 'https://mirrors.edge.kernel.org/pub/tools/crosstool/files/bin/x86_64/13.2.0/x86_64-gcc-13.2.0-nolibc-ia64-linux.tar.xz' -O ./tarball.tar.xz
wget 'https://raw.githubusercontent.com/johnny-mnemonic/linux-stable-rc/__mirror/make-kernel.bash' && chmod +x make-kernel.bash
wget 'https://raw.githubusercontent.com/johnny-mnemonic/linux-stable-rc/__mirror/rx2620-rx2660-rx2800-i2-combined-localmodconfig'
wget 'https://raw.githubusercontent.com/johnny-mnemonic/linux-stable-rc/__mirror/ia64-linux-workaround-ice-with-gcc-13.patch'
tar -xf tarball.tar.xz
ls -l
PATH=$PATH:$PWD/gcc-13.2.0-nolibc/ia64-linux/bin
popd
patch -p1 < ../ia64-linux-workaround-ice-with-gcc-13.patch || true
BRANCH="${{ inputs.branch }}"
KERNEL_VERSION=$( git log --oneline | head -n1 | grep -o "Linux\ .*\-rc.*" )
pushd ../
echo "| STATUS | BRANCH | VERSION |" >> $GITHUB_STEP_SUMMARY
echo "| ------ | ------ | ------- |" >> $GITHUB_STEP_SUMMARY
if time ./make-kernel.bash ./rx2620-rx2660-rx2800-i2-combined-localmodconfig ia64 ${build_dir}; then
echo "| :white_check_mark: | $BRANCH | $KERNEL_VERSION" | >> $GITHUB_STEP_SUMMARY
else
echo "| :x: | $BRANCH | $KERNEL_VERSION | >> $GITHUB_STEP_SUMMARY
fi
13 changes: 13 additions & 0 deletions .github/workflows/build_linux-4.19.y.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: 'signal_build_linux_4_19_y'
on:
workflow_call:
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: echo
run: |
echo "build linux-4.19.y"
13 changes: 13 additions & 0 deletions .github/workflows/build_linux-5.10.y.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: 'signal_build_linux_5_10_y'
on:
workflow_call:
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: echo
run: |
echo "build linux-5.10.y"
13 changes: 13 additions & 0 deletions .github/workflows/build_linux-5.15.y.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: 'signal_build_linux_5_15_y'
on:
workflow_call:
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: echo
run: |
echo "build linux-5.15.y"
13 changes: 13 additions & 0 deletions .github/workflows/build_linux-5.4.y.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: 'signal_build_linux_5_4_y'
on:
workflow_call:
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: echo
run: |
echo "build linux-5.4.y"
13 changes: 13 additions & 0 deletions .github/workflows/build_linux-6.1.y.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: 'signal_build_linux_6_1_y'
on:
workflow_call:
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: echo
run: |
echo "build linux-6.1.y"
13 changes: 13 additions & 0 deletions .github/workflows/build_linux-6.6.y.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: 'signal_build_linux_6_6_y'
on:
workflow_call:
workflow_dispatch:

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: echo
run: |
echo "build linux-6.6.y"
13 changes: 13 additions & 0 deletions .github/workflows/linux-4.19.y.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: 'linux-4.19.y'
on:
workflow_run:
workflows: [signal_build_linux_4_19_y]
types: [completed]
workflow_dispatch:

jobs:
build:
#if: ${{ github.event.workflow_run.conclusion == 'success' }}
uses: ./.github/workflows/build-kernel.yml
with:
branch: 'linux-4.19.y'
13 changes: 13 additions & 0 deletions .github/workflows/linux-5.10.y.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: 'linux-5.10.y'
on:
workflow_run:
workflows: [signal_build_linux_5_10_y]
types: [completed]
workflow_dispatch:

jobs:
build:
#if: ${{ github.event.workflow_run.conclusion == 'success' }}
uses: ./.github/workflows/build-kernel.yml
with:
branch: 'linux-5.10.y'
13 changes: 13 additions & 0 deletions .github/workflows/linux-5.15.y.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: 'linux-5.15.y'
on:
workflow_run:
workflows: [signal_build_linux_5_16_y]
types: [completed]
workflow_dispatch:

jobs:
build:
#if: ${{ github.event.workflow_run.conclusion == 'success' }}
uses: ./.github/workflows/build-kernel.yml
with:
branch: 'linux-5.15.y'
13 changes: 13 additions & 0 deletions .github/workflows/linux-5.4.y.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: 'linux-5.4.y'
on:
workflow_run:
workflows: [signal_build_linux_5_4_y]
types: [completed]
workflow_dispatch:

jobs:
build:
#if: ${{ github.event.workflow_run.conclusion == 'success' }}
uses: ./.github/workflows/build-kernel.yml
with:
branch: 'linux-5.4.y'
13 changes: 13 additions & 0 deletions .github/workflows/linux-6.1.y.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: 'linux-6.1.y'
on:
workflow_run:
workflows: [signal_build_linux_6_1_y]
types: [completed]
workflow_dispatch:

jobs:
build:
#if: ${{ github.event.workflow_run.conclusion == 'success' }}
uses: ./.github/workflows/build-kernel.yml
with:
branch: 'linux-6.1.y'
13 changes: 13 additions & 0 deletions .github/workflows/linux-6.6.y.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
name: 'linux-6.6.y'
on:
workflow_run:
workflows: [signal_build_linux_6_1_y]
types: [completed]
workflow_dispatch:

jobs:
build:
#if: ${{ github.event.workflow_run.conclusion == 'success' }}
uses: ./.github/workflows/build-kernel.yml
with:
branch: 'linux-6.6.y'
60 changes: 57 additions & 3 deletions .github/workflows/mirror.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,67 @@ on:
workflow_dispatch:

jobs:
mirror:
mirror_and_check:
runs-on: ubuntu-latest
name: mirror
outputs:
branch_matrix: ${{ steps.check.outputs.branch_matrix }}
steps:
- name: mirror
id: mirror
uses: bridgelightcloud/github-mirror-action@v2
uses: bridgelightcloud/github-mirror-action@v3
with:
origin: 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git'
GITHUB_TOKEN: ${{ secrets.PAT }}

- name: check
id: check
run: |
REPO=$( basename $PWD )
cd ..
mv $REPO ${REPO}.git
git clone --shared ${REPO}.git $REPO
JSON_DATA_FILE="$PWD/workflows.json"
touch ${JSON_DATA_FILE}
cd $REPO
echo "DEBUG $( pwd ) - before for"
for branch in $( cat rc-branches ); do
git worktree add ../${branch} ${branch}
pushd ../${branch}
pwd
if git log --oneline | head -n1 | grep "Linux\ .*\-rc.*" &>/dev/null; then
KERNEL_VERSION=$( git log --oneline | head -n1 | grep -o "Linux\ .*\-rc.*" )
echo "DEBUG build ${KERNEL_VERSION}"
if [[ -s ${JSON_DATA_FILE} ]]; then
echo -n "DEBUG , \"build_${branch}.yml\""
echo -n ", \"${branch}\"" >> ${JSON_DATA_FILE}
else
echo -n "DEBUG [\"build_${branch}.yml\""
echo -n "[\"${branch}\"" >> ${JSON_DATA_FILE}
fi
fi
cat ${JSON_DATA_FILE} || echo "DEBUG #1"
popd
pwd
done
echo -n "]" >> ${JSON_DATA_FILE}
pwd
echo "DEBUG $( pwd ) - after for"
ls -1
ls -1 ../
cat -v ${JSON_DATA_FILE} || echo "DEBUG #2"
echo "branch_matrix=$( jq -cn --argjson environments "$( cat ${JSON_DATA_FILE} )" '{branch: $environments}' )" >> $GITHUB_OUTPUT
signal_build:
needs: mirror_and_check
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix: ${{fromJson(needs.mirror_and_check.outputs.branch_matrix)}}
steps:
- uses: ./.github/workflows/build-kernel.yml
with:
branch: ${{ matrix.branch }}
# - name: test
# run: |
# echo ${{ matrix.workflow }}
21 changes: 20 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,20 @@
This branch exists for internal purposes, to see the code, go to [the master branch](../../tree/master)
# Linux stable Release (Candidate) builds for ia64 #

## Mirror workflow ##

[![mirror](https://github.com/johnny-mnemonic/linux-stable-rc/actions/workflows/mirror.yml/badge.svg?branch=__mirror)](https://github.com/johnny-mnemonic/linux-stable-rc/actions/workflows/mirror.yml)

## Kernel build workflows #

| Status | Kernel version |
| -------------- | ------ |
| [![linux-6.6.y](https://github.com/johnny-mnemonic/linux-stable-rc/actions/workflows/linux-6.6.y.yml/badge.svg)](https://github.com/johnny-mnemonic/linux-stable-rc/actions/workflows/linux-6.6.y.yml) | |
| [![linux-6.1.y](https://github.com/johnny-mnemonic/linux-stable-rc/actions/workflows/linux-6.1.y.yml/badge.svg)](https://github.com/johnny-mnemonic/linux-stable-rc/actions/workflows/linux-6.1.y.yml) | |
| [![linux-5.15.y](https://github.com/johnny-mnemonic/linux-stable-rc/actions/workflows/linux-5.15.y.yml/badge.svg)](https://github.com/johnny-mnemonic/linux-stable-rc/actions/workflows/linux-5.15.y.yml) | |
| [![linux-5.10.y](https://github.com/johnny-mnemonic/linux-stable-rc/actions/workflows/linux-5.10.y.yml/badge.svg)](https://github.com/johnny-mnemonic/linux-stable-rc/actions/workflows/linux-5.10.y.yml) | |
| [![linux-5.4.y](https://github.com/johnny-mnemonic/linux-stable-rc/actions/workflows/linux-5.4.y.yml/badge.svg)](https://github.com/johnny-mnemonic/linux-stable-rc/actions/workflows/linux-5.4.y.yml) | |
| [![linux-4.19.y](https://github.com/johnny-mnemonic/linux-stable-rc/actions/workflows/linux-4.19.y.yml/badge.svg)](https://github.com/johnny-mnemonic/linux-stable-rc/actions/workflows/linux-4.19.y.yml) | |

****

This branch exists for internal purposes, to see the code, go to [the master branch](../../tree/master)
46 changes: 46 additions & 0 deletions ia64-linux-workaround-ice-with-gcc-13.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
From: Frank Scheiner <frank.scheiner@web.de>
Date: Mon, 18 Sep 2023 16:33:50 +0200
Subject: [ia64] `-fno-var-tracking` works around an ICE in gcc-13 for target
ia64

Apply it for the two files that trigger the ICE according to e.g. [1] to
enable successful Linux kernel builds for ia64 when using gcc-13 until
the corresponding GCC bug ([2]) is fixed.

[1]: https://buildd.debian.org/status/fetch.php?pkg=linux&arch=ia64&ver=6.4.4-2&stamp=1690708282&raw=0

[2]: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111425
---
drivers/net/ethernet/broadcom/bnx2x/Makefile | 3 +++
net/ipv4/Makefile | 3 +++
2 files changed, 6 insertions(+)

diff --git a/drivers/net/ethernet/broadcom/bnx2x/Makefile b/drivers/net/ethernet/broadcom/bnx2x/Makefile
index 2523cfc7527d..13db3ee9fcb5 100644
--- a/drivers/net/ethernet/broadcom/bnx2x/Makefile
+++ b/drivers/net/ethernet/broadcom/bnx2x/Makefile
@@ -5,5 +5,8 @@

obj-$(CONFIG_BNX2X) += bnx2x.o

+ifeq ($(ARCH),ia64)
+ CFLAGS_bnx2x_sp.o += -fno-var-tracking
+endif
bnx2x-y := bnx2x_main.o bnx2x_link.o bnx2x_cmn.o bnx2x_ethtool.o bnx2x_stats.o bnx2x_dcb.o bnx2x_sp.o bnx2x_self_test.o
bnx2x-$(CONFIG_BNX2X_SRIOV) += bnx2x_vfpf.o bnx2x_sriov.o
diff --git a/net/ipv4/Makefile b/net/ipv4/Makefile
index b18ba8ef93ad..82326539bf25 100644
--- a/net/ipv4/Makefile
+++ b/net/ipv4/Makefile
@@ -3,6 +3,9 @@
# Makefile for the Linux TCP/IP (INET) layer.
#

+ifeq ($(ARCH),ia64)
+ CFLAGS_fib_semantics.o += -fno-var-tracking
+endif
obj-y := route.o inetpeer.o protocol.o \
ip_input.o ip_fragment.o ip_forward.o ip_options.o \
ip_output.o ip_sockglue.o inet_hashtables.o \
--
2.11.0
Loading

0 comments on commit 771bb85

Please sign in to comment.