Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
77 commits
Select commit Hold shift + click to select a range
49cad57
fuse: fine-grained request ftraces
bsbernd Apr 2, 2025
c8f3d45
fuse: {uring} Pin the user buffer
bsbernd Jan 8, 2025
8a20f0b
fuse: {io-uring] Avoid complete-in-task if pinned pages are used
bsbernd Jan 17, 2025
1cb8f2d
fuse: Use fuser-server provided read-ahead for CAP_SYS_ADMIN
bsbernd May 7, 2025
7c5216b
fuse: Increase the default max pages limit to 8182
bsbernd Apr 8, 2025
9e44162
fuse: add DLM_LOCK opcode
bsbernd Jun 20, 2025
ec05a1c
fuse: Renumber FUSE_DLM_WB_LOCK to 100
cding-ddn Jul 17, 2025
d25d13a
fuse: invalidate inode aliases when doing inode invalidation
yongzech Jul 8, 2025
440ccd8
fuse: Send DLM_WB_LOCK request in page_mkwrite handler
cding-ddn Jul 16, 2025
dbfa78c
fuse: Allow read_folio to retry page fault and read operations
cding-ddn Jul 16, 2025
a6dc0c6
fuse: flush pending fuse events before aborting the connection
Jul 17, 2025
1f531ed
fuse: Refactor io-uring bg queue flush and queue abort
bsbernd Jul 18, 2025
0744737
fuse: Flush the io-uring bg queue from fuse_uring_flush_bg
bsbernd Jul 18, 2025
8c810fa
fuse: fix unnecessary connection abort in dlm lock acquiring
hbirth Jul 21, 2025
1d4a8b3
fuse: fix connection abort on mmap when fuse server returns ENOSYS
hbirth Jul 21, 2025
3ce2031
fuse: change FUSE DLM_LOCK to request start and end of area
hbirth Aug 20, 2025
13eef80
fuse: fix memory leak in fuse-over-io-uring argument copies
cding-ddn Sep 24, 2025
cdd444e
fuse: {io-uring} Add queue length counters
bsbernd Jun 2, 2025
9f6de8b
fuse: {io-uring} Rename ring->nr_queues to max_nr_queues
bsbernd Jun 13, 2025
5a0f4bf
fuse: {io-uring} Use bitmaps to track registered queues
bsbernd Jun 10, 2025
a7f6de4
fuse: {io-uring} Allow reduced number of ring queues
bsbernd Jun 4, 2025
1fe1b00
fuse: {io-uring} Queue background requests on a different core
bsbernd Sep 24, 2025
489b160
fuse: Add retry attempts for numa local queues for load distribution
bsbernd Oct 24, 2025
7f65f76
fuse: Fetch a queued fuse request on command registration
bsbernd Nov 10, 2025
73c9855
fuse: add compound command to combine multiple requests
hbirth Sep 16, 2025
901deb5
RED-34640: Fix a startup teardown race
bsbernd Dec 12, 2025
9bb2806
fuse: Move ring queues_refs decrement
bsbernd Oct 20, 2025
c915d7f
fs/fuse: fix potential memory leak from fuse_uring_cancel
jianhuangli Oct 20, 2025
9b49db7
fuse: Fix missing numa_q_map free in dev_uring
bsbernd Nov 23, 2025
e32fd25
fuse: fix includes
hbirth Dec 19, 2025
1ae938a
Create workflow the create pr for redfs in each branch
openunix Sep 29, 2025
c4d8037
Fix the github actions PR trigger
openunix Dec 30, 2025
27baabd
Remove the pull_request_target from actions
openunix Dec 30, 2025
b226346
fuse: Make compounds a module option
bsbernd Jan 13, 2026
026345b
fuse: Fix the reduced queue assignment
bsbernd Feb 4, 2026
8e7e5b9
Fix the compiling error on aarch64
openunix Dec 26, 2025
ce5b16a
fuse: {io-uring} Prefer the current core over mapping
bsbernd Feb 11, 2026
2e4905a
fuse: enable large folios in inode initialization
hbirth Feb 23, 2026
0b7039a
fuse: Remove double define of 'enable_large_folios' module param
bsbernd Mar 6, 2026
9ebffb0
fuse: Remove unlock_request/lock_request
bsbernd Mar 9, 2026
09e3c7b
fuse: fix inode initialization race
hbirth Jan 16, 2026
f65445e
fuse: debug print requests when we hang in fuse_wait_aborted()
hbirth Mar 26, 2026
39d2998
fuse: fix io_uring connection abort leaving requests stuck
hbirth Apr 2, 2026
17fd845
fuse: invalidate page cache after sync and async direct writes
cding-ddn Mar 6, 2026
4f790a1
Invalidate selinux security label during inode invalidation.
kchen-ddn Apr 21, 2026
b321885
ubuntu: fix makefile compiler warning option to support LLVM
hbirth Apr 28, 2026
f1e07df
fuse: fix DLM lock acquiring when writeback is not used
hbirth May 1, 2026
6c3bd48
fuse: prepare EAGAIN translation
hbirth May 1, 2026
e5427d0
fuse: Add DLM retry workaround for iomap write failures
bsbernd May 1, 2026
5d0d41c
fuse: Use -EDEADLK for DLM lock error instead of -EAGAIN
bsbernd May 2, 2026
254befb
fuse: avoid retry livelock when iomap drains iov_iter
hbirth Jun 17, 2026
43e47ca
fuse: drop BDI_CAP_STRICTLIMIT from fuse bdi setup
hbirth Jun 22, 2026
838b254
fuse: switch to direct IO on an inode-invalidation notify storm
hbirth Jul 7, 2026
c2e13f9
fuse: bound folio order to the per-request page limit
hbirth Jun 22, 2026
a58871e
fuse: allow parallel direct writes past EOF
bsbernd Jun 30, 2026
c887541
fuse: balance uncached_io accounting under forced-DIO latch
hbirth Jul 16, 2026
7184b5d
fuse: don't hold i_rwsem exclusively when doing buffered write
hbirth Jul 8, 2026
98d943b
fuse: acquire dlm lock for the normal buffer read
hazhou-ddn Jul 16, 2026
eb4d949
fuse: fence cached reads against NOTIFY invalidate with a percpu gate
hbirth Jul 16, 2026
670028b
fuse: satisfy DLM read lock requests from a held write lock
hbirth Jul 17, 2026
13c342d
fuse: zero-fill expanding writes instead of sending READ requests
hbirth Jul 20, 2026
7b95693
fuse: only refresh size on cached write when opened with O_APPEND
hazhou-ddn Jul 29, 2026
c722576
fuse: disable local attribute cache override under DLM
hazhou-ddn Aug 12, 2026
109645d
fuse: seed DLM grant merging with an interval-tree lookup
hbirth Jul 25, 2026
512fda2
fuse: re-validate the DLM grant after waiting on the coherency gate
hbirth Jul 23, 2026
83905a1
fuse: fix the DLM revoke range of an inode invalidate
hbirth Jul 28, 2026
0ce39f3
fuse: fence mmapped invalidates and local truncates with the coherenc…
hbirth Jul 28, 2026
0c6f606
fuse: order grant recording against concurrent revokes
hbirth Jul 28, 2026
71beba5
fuse: retry grant recording until it wins against revokes
hbirth Aug 12, 2026
5478785
fuse: gate the notify-driven direct-IO latch behind a module parameter
hbirth Aug 12, 2026
4a9ddcf
fuse: re-decide the write lock mode after the DLM probe
Aug 11, 2026
db5896f
fuse: unlink the DLM range before shortening it when splitting
Aug 15, 2026
5941ee4
fuse: mark writeback-initiated SETATTR with FATTR_WRITEBACK
hbirth Aug 14, 2026
ec910d0
fuse: don't launder from a NOTIFY invalidate while writepages are frozen
hbirth Aug 14, 2026
2c5bf21
fuse: do not kill suid from inside the coherency gate
hbirth Aug 14, 2026
306422b
fuse: keep cached size and times under a DLM write grant
hbirth Aug 14, 2026
f40355d
fuse: take i_rwsem exclusive when a write drops suid/sgid
hbirth Aug 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
93 changes: 93 additions & 0 deletions .github/workflows/create-redfs-pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
# Automatially run copy-from-linux-branch.sh on branches and create PR for redfs.
name: Sync to redfs repo
on:
# Triggers the workflow on pull request merged.
pull_request:
branches: [ "redfs-*" ]
types: [ "closed" ]

jobs:
create-redfs-pr:
if: github.event.pull_request.merged == true
runs-on: ubuntu-latest
steps:
# Checks-out to a different directory to avoid following checkout removing it.
- uses: actions/checkout@v4
with:
path: linux

- name: Try to checkout sync-${{ github.ref_name }} if it exists
uses: actions/checkout@v4
id: try-checkout
continue-on-error: true
with:
repository: DDNStorage/redfs
ref: sync-${{ github.ref_name }}
fetch-depth: 0
path: redfs
token: ${{ secrets.REDFS_TOKEN }}

- name: Fallback to checkout main
if: steps.try-checkout.outcome == 'failure'
uses: actions/checkout@v4
with:
repository: DDNStorage/redfs
ref: main
fetch-depth: 0
path: redfs
token: ${{ secrets.REDFS_TOKEN }}

- name: Initialize git
run: |
git config --global user.name "DDNStorage RED Workflow"
git config --global user.email "red@ddn.com"

- name: Create tracking branch based on main
if: steps.try-checkout.outcome == 'failure'
run: |
pushd redfs
git checkout -b sync-${{ github.ref_name }}
popd

- name: Generate PR for redfs
run: |
declare -A MAP
MAP["redfs-rhel9_4-427.42.1"]="5.14.0-427.42.1.el9_4"
MAP["redfs-rhel9_5-503.40.1"]="5.14.0-503.40.1.el9_5"
MAP["redfs-rhel9_6-570.12.1"]="5.14.0-570.12.1.el9_6"
MAP["redfs-ubuntu-noble-6.8.0-58.60"]="6.8.0-58.60.ubuntu"
kerver=${MAP["${{ github.ref_name }}"]}
if [ -z ${kerver} ]; then
echo "Cannot find target kernel version"
exit 1
fi
pushd redfs
./copy-from-linux-branch.sh $GITHUB_WORKSPACE/linux ${kerver}
git add src/$kerver
echo -e "Sync with ${{ github.repository }} branch ${{ github.ref_name }}\n" > ../commit.msg
echo -e "Sync with ${{ github.repository }} branch ${{ github.ref_name }} by commit" >> ../commit.msg
echo -e "${{ github.sha }}" >> ../commit.msg
RET=0
git commit -F ../commit.msg 2> ../commit.log || RET=$?;
if [ -s ../commit.log ]; then
echo "Error detcted in commit:"
cat ../commit.log
exit 1
elif [ $RET -eq 0 ]; then
echo "Done. Push the code to remote:"
git push origin sync-${{ github.ref_name }} 2> ../push.log ||:
else
echo "No changes to existed codes. Still try with PR."
fi
if [ -s ../push.log ]; then
echo "Message detected in push:"
cat ../push.log
fi
gh pr create --base main --fill || RET=$?
if [ $RET -eq 1 ]; then
echo "No pending changes for PR, returning $RET."
fi
popd
env:
GH_TOKEN: ${{ secrets.REDFS_TOKEN }}

Loading
Loading