From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
patches@lists.linux.dev,
syzbot+f3e5d0948a1837ed1bb0@syzkaller.appspotmail.com,
Konstantin Komarov <almaz.alexandrovich@paragon-software.com>,
Miguel Garcia Roman <miguelgarciaroman8@gmail.com>
Subject: [PATCH 6.1 195/198] fs/ntfs3: Change new sparse cluster processing
Date: Tue, 25 Mar 2025 08:22:37 -0400 [thread overview]
Message-ID: <20250325122201.768824695@linuxfoundation.org> (raw)
In-Reply-To: <20250325122156.633329074@linuxfoundation.org>
6.1-stable review patch. If anyone has any objections, please let me know.
------------------
From: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>
commit c380b52f6c5702cc4bdda5e6d456d6c19a201a0b upstream.
Remove ntfs_sparse_cluster.
Zero clusters in attr_allocate_clusters.
Fixes xfstest generic/263
Bug: https://syzkaller.appspot.com/bug?extid=f3e5d0948a1837ed1bb0
Reported-by: syzbot+f3e5d0948a1837ed1bb0@syzkaller.appspotmail.com
Cc: <stable@vger.kernel.org>
Signed-off-by: Konstantin Komarov <almaz.alexandrovich@paragon-software.com>
Signed-off-by: Miguel Garcia Roman <miguelgarciaroman8@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
fs/ntfs3/attrib.c | 178 ++++++++++++++++++++++++++++++++++++-----------------
fs/ntfs3/file.c | 151 +++++++++-----------------------------------
fs/ntfs3/frecord.c | 2
fs/ntfs3/index.c | 4 -
fs/ntfs3/inode.c | 12 +--
fs/ntfs3/ntfs_fs.h | 7 --
6 files changed, 167 insertions(+), 187 deletions(-)
--- a/fs/ntfs3/attrib.c
+++ b/fs/ntfs3/attrib.c
@@ -176,7 +176,7 @@ out:
int attr_allocate_clusters(struct ntfs_sb_info *sbi, struct runs_tree *run,
CLST vcn, CLST lcn, CLST len, CLST *pre_alloc,
enum ALLOCATE_OPT opt, CLST *alen, const size_t fr,
- CLST *new_lcn)
+ CLST *new_lcn, CLST *new_len)
{
int err;
CLST flen, vcn0 = vcn, pre = pre_alloc ? *pre_alloc : 0;
@@ -196,20 +196,36 @@ int attr_allocate_clusters(struct ntfs_s
if (err)
goto out;
- if (new_lcn && vcn == vcn0)
- *new_lcn = lcn;
+ if (vcn == vcn0) {
+ /* Return the first fragment. */
+ if (new_lcn)
+ *new_lcn = lcn;
+ if (new_len)
+ *new_len = flen;
+ }
/* Add new fragment into run storage. */
- if (!run_add_entry(run, vcn, lcn, flen, opt == ALLOCATE_MFT)) {
+ if (!run_add_entry(run, vcn, lcn, flen, opt & ALLOCATE_MFT)) {
/* Undo last 'ntfs_look_for_free_space' */
mark_as_free_ex(sbi, lcn, len, false);
err = -ENOMEM;
goto out;
}
+ if (opt & ALLOCATE_ZERO) {
+ u8 shift = sbi->cluster_bits - SECTOR_SHIFT;
+
+ err = blkdev_issue_zeroout(sbi->sb->s_bdev,
+ (sector_t)lcn << shift,
+ (sector_t)flen << shift,
+ GFP_NOFS, 0);
+ if (err)
+ goto out;
+ }
+
vcn += flen;
- if (flen >= len || opt == ALLOCATE_MFT ||
+ if (flen >= len || (opt & ALLOCATE_MFT) ||
(fr && run->count - cnt >= fr)) {
*alen = vcn - vcn0;
return 0;
@@ -287,7 +303,8 @@ int attr_make_nonresident(struct ntfs_in
const char *data = resident_data(attr);
err = attr_allocate_clusters(sbi, run, 0, 0, len, NULL,
- ALLOCATE_DEF, &alen, 0, NULL);
+ ALLOCATE_DEF, &alen, 0, NULL,
+ NULL);
if (err)
goto out1;
@@ -582,13 +599,13 @@ add_alloc_in_same_attr_seg:
/* ~3 bytes per fragment. */
err = attr_allocate_clusters(
sbi, run, vcn, lcn, to_allocate, &pre_alloc,
- is_mft ? ALLOCATE_MFT : 0, &alen,
+ is_mft ? ALLOCATE_MFT : ALLOCATE_DEF, &alen,
is_mft ? 0
: (sbi->record_size -
le32_to_cpu(rec->used) + 8) /
3 +
1,
- NULL);
+ NULL, NULL);
if (err)
goto out;
}
@@ -886,8 +903,19 @@ bad_inode:
return err;
}
+/*
+ * attr_data_get_block - Returns 'lcn' and 'len' for given 'vcn'.
+ *
+ * @new == NULL means just to get current mapping for 'vcn'
+ * @new != NULL means allocate real cluster if 'vcn' maps to hole
+ * @zero - zeroout new allocated clusters
+ *
+ * NOTE:
+ * - @new != NULL is called only for sparsed or compressed attributes.
+ * - new allocated clusters are zeroed via blkdev_issue_zeroout.
+ */
int attr_data_get_block(struct ntfs_inode *ni, CLST vcn, CLST clen, CLST *lcn,
- CLST *len, bool *new)
+ CLST *len, bool *new, bool zero)
{
int err = 0;
struct runs_tree *run = &ni->file.run;
@@ -896,29 +924,27 @@ int attr_data_get_block(struct ntfs_inod
struct ATTRIB *attr = NULL, *attr_b;
struct ATTR_LIST_ENTRY *le, *le_b;
struct mft_inode *mi, *mi_b;
- CLST hint, svcn, to_alloc, evcn1, next_svcn, asize, end;
+ CLST hint, svcn, to_alloc, evcn1, next_svcn, asize, end, vcn0, alen;
+ unsigned int fr;
u64 total_size;
- u32 clst_per_frame;
- bool ok;
if (new)
*new = false;
+ /* Try to find in cache. */
down_read(&ni->file.run_lock);
- ok = run_lookup_entry(run, vcn, lcn, len, NULL);
+ if (!run_lookup_entry(run, vcn, lcn, len, NULL))
+ *len = 0;
up_read(&ni->file.run_lock);
- if (ok && (*lcn != SPARSE_LCN || !new)) {
- /* Normal way. */
- return 0;
+ if (*len) {
+ if (*lcn != SPARSE_LCN || !new)
+ return 0; /* Fast normal way without allocation. */
+ else if (clen > *len)
+ clen = *len;
}
- if (!clen)
- clen = 1;
-
- if (ok && clen > *len)
- clen = *len;
-
+ /* No cluster in cache or we need to allocate cluster in hole. */
sbi = ni->mi.sbi;
cluster_bits = sbi->cluster_bits;
@@ -944,12 +970,6 @@ int attr_data_get_block(struct ntfs_inod
goto out;
}
- clst_per_frame = 1u << attr_b->nres.c_unit;
- to_alloc = (clen + clst_per_frame - 1) & ~(clst_per_frame - 1);
-
- if (vcn + to_alloc > asize)
- to_alloc = asize - vcn;
-
svcn = le64_to_cpu(attr_b->nres.svcn);
evcn1 = le64_to_cpu(attr_b->nres.evcn) + 1;
@@ -968,36 +988,68 @@ int attr_data_get_block(struct ntfs_inod
evcn1 = le64_to_cpu(attr->nres.evcn) + 1;
}
+ /* Load in cache actual information. */
err = attr_load_runs(attr, ni, run, NULL);
if (err)
goto out;
- if (!ok) {
- ok = run_lookup_entry(run, vcn, lcn, len, NULL);
- if (ok && (*lcn != SPARSE_LCN || !new)) {
- /* Normal way. */
- err = 0;
+ if (!*len) {
+ if (run_lookup_entry(run, vcn, lcn, len, NULL)) {
+ if (*lcn != SPARSE_LCN || !new)
+ goto ok; /* Slow normal way without allocation. */
+
+ if (clen > *len)
+ clen = *len;
+ } else if (!new) {
+ /* Here we may return -ENOENT.
+ * In any case caller gets zero length. */
goto ok;
}
-
- if (!ok && !new) {
- *len = 0;
- err = 0;
- goto ok;
- }
-
- if (ok && clen > *len) {
- clen = *len;
- to_alloc = (clen + clst_per_frame - 1) &
- ~(clst_per_frame - 1);
- }
}
if (!is_attr_ext(attr_b)) {
+ /* The code below only for sparsed or compressed attributes. */
err = -EINVAL;
goto out;
}
+ vcn0 = vcn;
+ to_alloc = clen;
+ fr = (sbi->record_size - le32_to_cpu(mi->mrec->used) + 8) / 3 + 1;
+ /* Allocate frame aligned clusters.
+ * ntfs.sys usually uses 16 clusters per frame for sparsed or compressed.
+ * ntfs3 uses 1 cluster per frame for new created sparsed files. */
+ if (attr_b->nres.c_unit) {
+ CLST clst_per_frame = 1u << attr_b->nres.c_unit;
+ CLST cmask = ~(clst_per_frame - 1);
+
+ /* Get frame aligned vcn and to_alloc. */
+ vcn = vcn0 & cmask;
+ to_alloc = ((vcn0 + clen + clst_per_frame - 1) & cmask) - vcn;
+ if (fr < clst_per_frame)
+ fr = clst_per_frame;
+ zero = true;
+
+ /* Check if 'vcn' and 'vcn0' in different attribute segments. */
+ if (vcn < svcn || evcn1 <= vcn) {
+ /* Load attribute for truncated vcn. */
+ attr = ni_find_attr(ni, attr_b, &le, ATTR_DATA, NULL, 0,
+ &vcn, &mi);
+ if (!attr) {
+ err = -EINVAL;
+ goto out;
+ }
+ svcn = le64_to_cpu(attr->nres.svcn);
+ evcn1 = le64_to_cpu(attr->nres.evcn) + 1;
+ err = attr_load_runs(attr, ni, run, NULL);
+ if (err)
+ goto out;
+ }
+ }
+
+ if (vcn + to_alloc > asize)
+ to_alloc = asize - vcn;
+
/* Get the last LCN to allocate from. */
hint = 0;
@@ -1011,18 +1063,33 @@ int attr_data_get_block(struct ntfs_inod
hint = -1;
}
- err = attr_allocate_clusters(
- sbi, run, vcn, hint + 1, to_alloc, NULL, 0, len,
- (sbi->record_size - le32_to_cpu(mi->mrec->used) + 8) / 3 + 1,
- lcn);
+ /* Allocate and zeroout new clusters. */
+ err = attr_allocate_clusters(sbi, run, vcn, hint + 1, to_alloc, NULL,
+ zero ? ALLOCATE_ZERO : ALLOCATE_DEF, &alen,
+ fr, lcn, len);
if (err)
goto out;
*new = true;
- end = vcn + *len;
-
+ end = vcn + alen;
total_size = le64_to_cpu(attr_b->nres.total_size) +
- ((u64)*len << cluster_bits);
+ ((u64)alen << cluster_bits);
+
+ if (vcn != vcn0) {
+ if (!run_lookup_entry(run, vcn0, lcn, len, NULL)) {
+ err = -EINVAL;
+ goto out;
+ }
+ if (*lcn == SPARSE_LCN) {
+ /* Internal error. Should not happened. */
+ WARN_ON(1);
+ err = -EINVAL;
+ goto out;
+ }
+ /* Check case when vcn0 + len overlaps new allocated clusters. */
+ if (vcn0 + *len > end)
+ *len = end - vcn0;
+ }
repack:
err = mi_pack_runs(mi, attr, run, max(end, evcn1) - svcn);
@@ -1547,7 +1614,7 @@ int attr_allocate_frame(struct ntfs_inod
struct ATTRIB *attr = NULL, *attr_b;
struct ATTR_LIST_ENTRY *le, *le_b;
struct mft_inode *mi, *mi_b;
- CLST svcn, evcn1, next_svcn, lcn, len;
+ CLST svcn, evcn1, next_svcn, len;
CLST vcn, end, clst_data;
u64 total_size, valid_size, data_size;
@@ -1623,8 +1690,9 @@ int attr_allocate_frame(struct ntfs_inod
}
err = attr_allocate_clusters(sbi, run, vcn + clst_data,
- hint + 1, len - clst_data, NULL, 0,
- &alen, 0, &lcn);
+ hint + 1, len - clst_data, NULL,
+ ALLOCATE_DEF, &alen, 0, NULL,
+ NULL);
if (err)
goto out;
--- a/fs/ntfs3/file.c
+++ b/fs/ntfs3/file.c
@@ -122,8 +122,8 @@ static int ntfs_extend_initialized_size(
bits = sbi->cluster_bits;
vcn = pos >> bits;
- err = attr_data_get_block(ni, vcn, 0, &lcn, &clen,
- NULL);
+ err = attr_data_get_block(ni, vcn, 1, &lcn, &clen, NULL,
+ false);
if (err)
goto out;
@@ -196,18 +196,18 @@ static int ntfs_zero_range(struct inode
struct address_space *mapping = inode->i_mapping;
u32 blocksize = 1 << inode->i_blkbits;
pgoff_t idx = vbo >> PAGE_SHIFT;
- u32 z_start = vbo & (PAGE_SIZE - 1);
+ u32 from = vbo & (PAGE_SIZE - 1);
pgoff_t idx_end = (vbo_to + PAGE_SIZE - 1) >> PAGE_SHIFT;
loff_t page_off;
struct buffer_head *head, *bh;
- u32 bh_next, bh_off, z_end;
+ u32 bh_next, bh_off, to;
sector_t iblock;
struct page *page;
- for (; idx < idx_end; idx += 1, z_start = 0) {
+ for (; idx < idx_end; idx += 1, from = 0) {
page_off = (loff_t)idx << PAGE_SHIFT;
- z_end = (page_off + PAGE_SIZE) > vbo_to ? (vbo_to - page_off)
- : PAGE_SIZE;
+ to = (page_off + PAGE_SIZE) > vbo_to ? (vbo_to - page_off)
+ : PAGE_SIZE;
iblock = page_off >> inode->i_blkbits;
page = find_or_create_page(mapping, idx,
@@ -224,7 +224,7 @@ static int ntfs_zero_range(struct inode
do {
bh_next = bh_off + blocksize;
- if (bh_next <= z_start || bh_off >= z_end)
+ if (bh_next <= from || bh_off >= to)
continue;
if (!buffer_mapped(bh)) {
@@ -258,7 +258,7 @@ static int ntfs_zero_range(struct inode
} while (bh_off = bh_next, iblock += 1,
head != (bh = bh->b_this_page));
- zero_user_segment(page, z_start, z_end);
+ zero_user_segment(page, from, to);
unlock_page(page);
put_page(page);
@@ -270,81 +270,6 @@ out:
}
/*
- * ntfs_sparse_cluster - Helper function to zero a new allocated clusters.
- *
- * NOTE: 512 <= cluster size <= 2M
- */
-void ntfs_sparse_cluster(struct inode *inode, struct page *page0, CLST vcn,
- CLST len)
-{
- struct address_space *mapping = inode->i_mapping;
- struct ntfs_sb_info *sbi = inode->i_sb->s_fs_info;
- u64 vbo = (u64)vcn << sbi->cluster_bits;
- u64 bytes = (u64)len << sbi->cluster_bits;
- u32 blocksize = 1 << inode->i_blkbits;
- pgoff_t idx0 = page0 ? page0->index : -1;
- loff_t vbo_clst = vbo & sbi->cluster_mask_inv;
- loff_t end = ntfs_up_cluster(sbi, vbo + bytes);
- pgoff_t idx = vbo_clst >> PAGE_SHIFT;
- u32 from = vbo_clst & (PAGE_SIZE - 1);
- pgoff_t idx_end = (end + PAGE_SIZE - 1) >> PAGE_SHIFT;
- loff_t page_off;
- u32 to;
- bool partial;
- struct page *page;
-
- for (; idx < idx_end; idx += 1, from = 0) {
- page = idx == idx0 ? page0 : grab_cache_page(mapping, idx);
-
- if (!page)
- continue;
-
- page_off = (loff_t)idx << PAGE_SHIFT;
- to = (page_off + PAGE_SIZE) > end ? (end - page_off)
- : PAGE_SIZE;
- partial = false;
-
- if ((from || PAGE_SIZE != to) &&
- likely(!page_has_buffers(page))) {
- create_empty_buffers(page, blocksize, 0);
- }
-
- if (page_has_buffers(page)) {
- struct buffer_head *head, *bh;
- u32 bh_off = 0;
-
- bh = head = page_buffers(page);
- do {
- u32 bh_next = bh_off + blocksize;
-
- if (from <= bh_off && bh_next <= to) {
- set_buffer_uptodate(bh);
- mark_buffer_dirty(bh);
- } else if (!buffer_uptodate(bh)) {
- partial = true;
- }
- bh_off = bh_next;
- } while (head != (bh = bh->b_this_page));
- }
-
- zero_user_segment(page, from, to);
-
- if (!partial) {
- if (!PageUptodate(page))
- SetPageUptodate(page);
- set_page_dirty(page);
- }
-
- if (idx != idx0) {
- unlock_page(page);
- put_page(page);
- }
- cond_resched();
- }
- mark_inode_dirty(inode);
-}
-
-/*
* ntfs_file_mmap - file_operations::mmap
*/
static int ntfs_file_mmap(struct file *file, struct vm_area_struct *vma)
@@ -385,13 +310,9 @@ static int ntfs_file_mmap(struct file *f
for (; vcn < end; vcn += len) {
err = attr_data_get_block(ni, vcn, 1, &lcn,
- &len, &new);
+ &len, &new, true);
if (err)
goto out;
-
- if (!new)
- continue;
- ntfs_sparse_cluster(inode, NULL, vcn, 1);
}
}
@@ -532,7 +453,8 @@ static long ntfs_fallocate(struct file *
struct ntfs_sb_info *sbi = sb->s_fs_info;
struct ntfs_inode *ni = ntfs_i(inode);
loff_t end = vbo + len;
- loff_t vbo_down = round_down(vbo, PAGE_SIZE);
+ loff_t vbo_down = round_down(vbo, max_t(unsigned long,
+ sbi->cluster_size, PAGE_SIZE));
bool is_supported_holes = is_sparsed(ni) || is_compressed(ni);
loff_t i_size, new_size;
bool map_locked;
@@ -585,11 +507,8 @@ static long ntfs_fallocate(struct file *
u32 frame_size;
loff_t mask, vbo_a, end_a, tmp;
- err = filemap_write_and_wait_range(mapping, vbo, end - 1);
- if (err)
- goto out;
-
- err = filemap_write_and_wait_range(mapping, end, LLONG_MAX);
+ err = filemap_write_and_wait_range(mapping, vbo_down,
+ LLONG_MAX);
if (err)
goto out;
@@ -692,39 +611,35 @@ static long ntfs_fallocate(struct file *
goto out;
if (is_supported_holes) {
- CLST vcn_v = ni->i_valid >> sbi->cluster_bits;
CLST vcn = vbo >> sbi->cluster_bits;
CLST cend = bytes_to_cluster(sbi, end);
+ CLST cend_v = bytes_to_cluster(sbi, ni->i_valid);
CLST lcn, clen;
bool new;
+ if (cend_v > cend)
+ cend_v = cend;
+
/*
- * Allocate but do not zero new clusters. (see below comments)
- * This breaks security: One can read unused on-disk areas.
+ * Allocate and zero new clusters.
* Zeroing these clusters may be too long.
- * Maybe we should check here for root rights?
+ */
+ for (; vcn < cend_v; vcn += clen) {
+ err = attr_data_get_block(ni, vcn, cend_v - vcn,
+ &lcn, &clen, &new,
+ true);
+ if (err)
+ goto out;
+ }
+ /*
+ * Allocate but not zero new clusters.
*/
for (; vcn < cend; vcn += clen) {
err = attr_data_get_block(ni, vcn, cend - vcn,
- &lcn, &clen, &new);
+ &lcn, &clen, &new,
+ false);
if (err)
goto out;
- if (!new || vcn >= vcn_v)
- continue;
-
- /*
- * Unwritten area.
- * NTFS is not able to store several unwritten areas.
- * Activate 'ntfs_sparse_cluster' to zero new allocated clusters.
- *
- * Dangerous in case:
- * 1G of sparsed clusters + 1 cluster of data =>
- * valid_size == 1G + 1 cluster
- * fallocate(1G) will zero 1G and this can be very long
- * xfstest 016/086 will fail without 'ntfs_sparse_cluster'.
- */
- ntfs_sparse_cluster(inode, NULL, vcn,
- min(vcn_v - vcn, clen));
}
}
@@ -945,8 +860,8 @@ static ssize_t ntfs_compress_write(struc
frame_vbo = valid & ~(frame_size - 1);
off = valid & (frame_size - 1);
- err = attr_data_get_block(ni, frame << NTFS_LZNT_CUNIT, 0, &lcn,
- &clen, NULL);
+ err = attr_data_get_block(ni, frame << NTFS_LZNT_CUNIT, 1, &lcn,
+ &clen, NULL, false);
if (err)
goto out;
--- a/fs/ntfs3/frecord.c
+++ b/fs/ntfs3/frecord.c
@@ -2297,7 +2297,7 @@ int ni_decompress_file(struct ntfs_inode
for (vcn = vbo >> sbi->cluster_bits; vcn < end; vcn += clen) {
err = attr_data_get_block(ni, vcn, cend - vcn, &lcn,
- &clen, &new);
+ &clen, &new, false);
if (err)
goto out;
}
--- a/fs/ntfs3/index.c
+++ b/fs/ntfs3/index.c
@@ -1442,8 +1442,8 @@ static int indx_create_allocate(struct n
run_init(&run);
- err = attr_allocate_clusters(sbi, &run, 0, 0, len, NULL, 0, &alen, 0,
- NULL);
+ err = attr_allocate_clusters(sbi, &run, 0, 0, len, NULL, ALLOCATE_DEF,
+ &alen, 0, NULL, NULL);
if (err)
goto out;
--- a/fs/ntfs3/inode.c
+++ b/fs/ntfs3/inode.c
@@ -592,7 +592,8 @@ static noinline int ntfs_get_block_vbo(s
off = vbo & sbi->cluster_mask;
new = false;
- err = attr_data_get_block(ni, vcn, 1, &lcn, &len, create ? &new : NULL);
+ err = attr_data_get_block(ni, vcn, 1, &lcn, &len, create ? &new : NULL,
+ create && sbi->cluster_size > PAGE_SIZE);
if (err)
goto out;
@@ -610,11 +611,8 @@ static noinline int ntfs_get_block_vbo(s
WARN_ON(1);
}
- if (new) {
+ if (new)
set_buffer_new(bh);
- if ((len << cluster_bits) > block_size)
- ntfs_sparse_cluster(inode, page, vcn, len);
- }
lbo = ((u64)lcn << cluster_bits) + off;
@@ -1533,8 +1531,8 @@ struct inode *ntfs_create_inode(struct u
cpu_to_le64(ntfs_up_cluster(sbi, nsize));
err = attr_allocate_clusters(sbi, &ni->file.run, 0, 0,
- clst, NULL, 0, &alen, 0,
- NULL);
+ clst, NULL, ALLOCATE_DEF,
+ &alen, 0, NULL, NULL);
if (err)
goto out5;
--- a/fs/ntfs3/ntfs_fs.h
+++ b/fs/ntfs3/ntfs_fs.h
@@ -128,6 +128,7 @@ struct ntfs_buffers {
enum ALLOCATE_OPT {
ALLOCATE_DEF = 0, // Allocate all clusters.
ALLOCATE_MFT = 1, // Allocate for MFT.
+ ALLOCATE_ZERO = 2, // Zeroout new allocated clusters
};
enum bitmap_mutex_classes {
@@ -418,7 +419,7 @@ enum REPARSE_SIGN {
int attr_allocate_clusters(struct ntfs_sb_info *sbi, struct runs_tree *run,
CLST vcn, CLST lcn, CLST len, CLST *pre_alloc,
enum ALLOCATE_OPT opt, CLST *alen, const size_t fr,
- CLST *new_lcn);
+ CLST *new_lcn, CLST *new_len);
int attr_make_nonresident(struct ntfs_inode *ni, struct ATTRIB *attr,
struct ATTR_LIST_ENTRY *le, struct mft_inode *mi,
u64 new_size, struct runs_tree *run,
@@ -428,7 +429,7 @@ int attr_set_size(struct ntfs_inode *ni,
u64 new_size, const u64 *new_valid, bool keep_prealloc,
struct ATTRIB **ret);
int attr_data_get_block(struct ntfs_inode *ni, CLST vcn, CLST clen, CLST *lcn,
- CLST *len, bool *new);
+ CLST *len, bool *new, bool zero);
int attr_data_read_resident(struct ntfs_inode *ni, struct page *page);
int attr_data_write_resident(struct ntfs_inode *ni, struct page *page);
int attr_load_runs_vcn(struct ntfs_inode *ni, enum ATTR_TYPE type,
@@ -493,8 +494,6 @@ extern const struct file_operations ntfs
/* Globals from file.c */
int ntfs_getattr(struct user_namespace *mnt_userns, const struct path *path,
struct kstat *stat, u32 request_mask, u32 flags);
-void ntfs_sparse_cluster(struct inode *inode, struct page *page0, CLST vcn,
- CLST len);
int ntfs3_setattr(struct user_namespace *mnt_userns, struct dentry *dentry,
struct iattr *attr);
int ntfs_file_open(struct inode *inode, struct file *file);
next prev parent reply other threads:[~2025-03-25 12:30 UTC|newest]
Thread overview: 214+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-03-25 12:19 [PATCH 6.1 000/198] 6.1.132-rc1 review Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 001/198] clockevents/drivers/i8253: Fix stop sequence for timer 0 Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 002/198] sched/isolation: Prevent boot crash when the boot CPU is nohz_full Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 003/198] hrtimer: Use and report correct timerslack values for realtime tasks Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 004/198] fs/ntfs3: Fix shift-out-of-bounds in ntfs_fill_super Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 005/198] fbdev: hyperv_fb: iounmap() the correct memory when removing a device Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 006/198] pinctrl: bcm281xx: Fix incorrect regmap max_registers value Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 007/198] netfilter: nft_ct: Use __refcount_inc() for per-CPU nft_ct_pcpu_template Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 008/198] ice: fix memory leak in aRFS after reset Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 009/198] netfilter: nf_conncount: garbage collection is not skipped when jiffies wrap around Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 010/198] sched: address a potential NULL pointer dereference in the GRED scheduler Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 011/198] wifi: cfg80211: cancel wiphy_work before freeing wiphy Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 012/198] Bluetooth: hci_event: Fix enabling passive scanning Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 013/198] Revert "Bluetooth: hci_core: Fix sleeping function called from invalid context" Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 014/198] net: dsa: mv88e6xxx: Verify after ATU Load ops Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 015/198] net: mctp i2c: Copy headers if cloned Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 016/198] netpoll: hold rcu read lock in __netpoll_send_skb() Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 017/198] drm/hyperv: Fix address space leak when Hyper-V DRM device is removed Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 018/198] Drivers: hv: vmbus: Dont release fb_mmio resource in vmbus_free_mmio() Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 019/198] net/mlx5: handle errors in mlx5_chains_create_table() Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 020/198] eth: bnxt: do not update checksum in bnxt_xdp_build_skb() Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 021/198] net: switchdev: Convert blocking notification chain to a raw one Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 022/198] bonding: fix incorrect MAC address setting to receive NS messages Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 023/198] netfilter: nf_conncount: Fully initialize struct nf_conncount_tuple in insert_tree() Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 024/198] ipvs: prevent integer overflow in do_ip_vs_get_ctl() Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 025/198] net_sched: Prevent creation of classes with TC_H_ROOT Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 026/198] netfilter: nft_exthdr: fix offset with ipv4_find_option() Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 027/198] gre: Fix IPv6 link-local address generation Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 028/198] net: openvswitch: remove misbehaving actions length check Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 029/198] net/mlx5: Bridge, fix the crash caused by LAG state check Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 030/198] net/mlx5e: Prevent bridge link show failure for non-eswitch-allowed devices Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 031/198] nvme-fc: go straight to connecting state when initializing Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 032/198] hrtimers: Mark is_migration_base() with __always_inline Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 033/198] powercap: call put_device() on an error path in powercap_register_control_type() Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 034/198] iscsi_ibft: Fix UBSAN shift-out-of-bounds warning in ibft_attr_show_nic() Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 035/198] scsi: core: Use GFP_NOIO to avoid circular locking dependency Greg Kroah-Hartman
2025-09-11 14:35 ` Jun Eeo
2025-09-11 14:42 ` Greg KH
2025-09-11 14:54 ` Jun Eeo
2025-09-21 17:24 ` Greg KH
2025-03-25 12:19 ` [PATCH 6.1 036/198] scsi: qla1280: Fix kernel oops when debug level > 2 Greg Kroah-Hartman
2025-03-25 12:19 ` [PATCH 6.1 037/198] ACPI: resource: IRQ override for Eluktronics MECH-17 Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 038/198] smb: client: fix noisy when tree connecting to DFS interlink targets Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 039/198] alpha/elf: Fix misc/setarch test of util-linux by removing 32bit support Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 040/198] vboxsf: fix building with GCC 15 Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 041/198] HID: intel-ish-hid: fix the length of MNG_SYNC_FW_CLOCK in doorbell Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 042/198] HID: intel-ish-hid: Send clock sync message immediately after reset Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 043/198] HID: ignore non-functional sensor in HP 5MP Camera Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 044/198] HID: hid-apple: Apple Magic Keyboard a3203 USB-C support Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 045/198] HID: apple: fix up the F6 key on the Omoton KB066 keyboard Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 046/198] sched: Clarify wake_up_q()s write to task->wake_q.next Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 047/198] platform/x86: thinkpad_acpi: Fix invalid fan speed on ThinkPad X120e Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 048/198] platform/x86: thinkpad_acpi: Support for V9 DYTC platform profiles Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 049/198] s390/cio: Fix CHPID "configure" attribute caching Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 050/198] thermal/cpufreq_cooling: Remove structure member documentation Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 051/198] Xen/swiotlb: mark xen_swiotlb_fixup() __init Greg Kroah-Hartman
2025-04-07 18:12 ` Nathan Chancellor
2025-04-14 19:02 ` Salvatore Bonaccorso
2025-04-15 6:38 ` Jürgen Groß
2025-04-22 8:44 ` Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 052/198] ALSA: hda/realtek: Limit mic boost on Positivo ARN50 Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 053/198] ASoC: rsnd: dont indicate warning on rsnd_kctrl_accept_runtime() Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 054/198] ASoC: rsnd: adjust convert rate limitation Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 055/198] ASoC: arizona/madera: use fsleep() in up/down DAPM event delays Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 056/198] ASoC: SOF: Intel: hda: add softdep pre to snd-hda-codec-hdmi module Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 057/198] net: wwan: mhi_wwan_mbim: Silence sequence number glitch errors Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 058/198] nvme-pci: quirk Acer FA100 for non-uniqueue identifiers Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 059/198] nvme-tcp: add basic support for the C2HTermReq PDU Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 060/198] nvmet-rdma: recheck queue state is LIVE in state lock in recv done Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 061/198] sctp: Fix undefined behavior in left shift operation Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 062/198] nvme: only allow entering LIVE from CONNECTING state Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 063/198] ASoC: tas2770: Fix volume scale Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 064/198] ASoC: tas2764: Fix power control mask Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 065/198] ASoC: tas2764: Set the SDOUT polarity correctly Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 066/198] fuse: dont truncate cached, mutated symlink Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 067/198] perf/x86/intel: Use better start period for frequency mode Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 068/198] x86/irq: Define trace events conditionally Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 069/198] mptcp: safety check before fallback Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 070/198] drm/nouveau: Do not override forced connector status Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 071/198] block: fix kmem_cache of name bio-108 already exists Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 072/198] io_uring: return error pointer from io_mem_alloc() Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 073/198] io_uring: add ring freeing helper Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 074/198] mm: add nommu variant of vm_insert_pages() Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 075/198] io_uring: get rid of remap_pfn_range() for mapping rings/sqes Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 076/198] io_uring: dont attempt to mmap larger than what the user asks for Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 077/198] io_uring: fix corner case forgetting to vunmap Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 078/198] xfs: pass refcount intent directly through the log intent code Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 079/198] xfs: pass xfs_extent_free_item " Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 080/198] xfs: fix confusing xfs_extent_item variable names Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 081/198] xfs: pass the xfs_bmbt_irec directly through the log intent code Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 082/198] xfs: pass per-ag references to xfs_free_extent Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 083/198] xfs: validate block number being freed before adding to xefi Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 084/198] xfs: fix bounds check in xfs_defer_agfl_block() Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 085/198] xfs: use deferred frees for btree block freeing Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 086/198] xfs: reserve less log space when recovering log intent items Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 087/198] xfs: move the xfs_rtbitmap.c declarations to xfs_rtbitmap.h Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 088/198] xfs: convert rt bitmap extent lengths to xfs_rtbxlen_t Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 089/198] xfs: consider minlen sized extents in xfs_rtallocate_extent_block Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 090/198] xfs: dont leak recovered attri intent items Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 091/198] xfs: make rextslog computation consistent with mkfs Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 092/198] xfs: fix 32-bit truncation in xfs_compute_rextslog Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 093/198] xfs: dont allow overly small or large realtime volumes Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 094/198] xfs: remove unused fields from struct xbtree_ifakeroot Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 095/198] xfs: recompute growfsrtfree transaction reservation while growing rt volume Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 096/198] xfs: force all buffers to be written during btree bulk load Greg Kroah-Hartman
2025-03-25 12:20 ` [PATCH 6.1 097/198] xfs: initialise di_crc in xfs_log_dinode Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 098/198] xfs: add lock protection when remove perag from radix tree Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 099/198] xfs: fix perag leak when growfs fails Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 100/198] xfs: ensure logflagsp is initialized in xfs_bmap_del_extent_real Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 101/198] xfs: update dir3 leaf block metadata after swap Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 102/198] xfs: reset XFS_ATTR_INCOMPLETE filter on node removal Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 103/198] xfs: remove conditional building of rt geometry validator functions Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 104/198] Input: i8042 - swap old quirk combination with new quirk for NHxxRZQ Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 105/198] Input: i8042 - add required quirks for missing old boardnames Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 106/198] Input: i8042 - swap old quirk combination with new quirk for several devices Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 107/198] Input: i8042 - swap old quirk combination with new quirk for more devices Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 108/198] USB: serial: ftdi_sio: add support for Altera USB Blaster 3 Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 109/198] USB: serial: option: add Telit Cinterion FE990B compositions Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 110/198] USB: serial: option: fix Telit Cinterion FE990A name Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 111/198] USB: serial: option: match on interface class for Telit FN990B Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 112/198] x86/microcode/AMD: Fix out-of-bounds on systems with CPU-less NUMA nodes Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 113/198] drm/atomic: Filter out redundant DPMS calls Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 114/198] drm/dp_mst: Fix locking when skipping CSN before topology probing Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 115/198] drm/amd/display: Restore correct backlight brightness after a GPU reset Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 116/198] drm/amd/display: Assign normalized_pix_clk when color depth = 14 Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 117/198] drm/amd/display: Fix slab-use-after-free on hdcp_work Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 118/198] clk: samsung: update PLL locktime for PLL142XX used on FSD platform Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 119/198] ASoC: amd: yc: Support mic on another Lenovo ThinkPad E16 Gen 2 model Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 120/198] qlcnic: fix memory leak issues in qlcnic_sriov_common.c Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 121/198] rust: Disallow BTF generation with Rust + LTO Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 122/198] lib/buildid: Handle memfd_secret() files in build_id_parse() Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 123/198] tcp: fix races in tcp_abort() Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 124/198] tcp: fix forever orphan socket caused by tcp_abort Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 125/198] leds: mlxreg: Use devm_mutex_init() for mutex initialization Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 126/198] ASoC: ops: Consistently treat platform_max as control value Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 127/198] drm/gma500: Add NULL check for pci_gfx_root in mid_get_vbt_data() Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 128/198] ASoC: codecs: wm0010: Fix error handling path in wm0010_spi_probe() Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 129/198] scripts: generate_rust_analyzer: Handle sub-modules with no Makefile Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 130/198] scripts: `make rust-analyzer` for out-of-tree modules Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 131/198] scripts: generate_rust_analyzer: provide `cfg`s for `core` and `alloc` Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 132/198] scripts: generate_rust_analyzer: add missing macros deps Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 133/198] cifs: Fix integer overflow while processing acregmax mount option Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 134/198] cifs: Fix integer overflow while processing acdirmax " Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 135/198] cifs: Fix integer overflow while processing actimeo " Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 136/198] cifs: Fix integer overflow while processing closetimeo " Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 137/198] i2c: ali1535: Fix an error handling path in ali1535_probe() Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 138/198] i2c: ali15x3: Fix an error handling path in ali15x3_probe() Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 139/198] i2c: sis630: Fix an error handling path in sis630_probe() Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 140/198] arm64: mm: Populate vmemmap at the page level if not section aligned Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 141/198] smb3: add support for IAKerb Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 142/198] smb: client: Fix match_session bug preventing session reuse Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 143/198] HID: apple: disable Fn key handling on the Omoton KB066 Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 144/198] nvme-tcp: Fix a C2HTermReq error message Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 145/198] smb: client: fix potential UAF in cifs_dump_full_key() Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 146/198] firmware: imx-scu: fix OF node leak in .probe() Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 147/198] arm64: dts: freescale: tqma8mpql: Fix vqmmc-supply Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 148/198] xfrm_output: Force software GSO only in tunnel mode Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 149/198] soc: imx8m: Remove global soc_uid Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 150/198] soc: imx8m: Use devm_* to simplify probe failure handling Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 151/198] soc: imx8m: Unregister cpufreq and soc dev in cleanup path Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 152/198] ARM: dts: bcm2711: PL011 UARTs are actually r1p5 Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 153/198] RDMA/bnxt_re: Add missing paranthesis in map_qp_id_to_tbl_indx Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 154/198] ARM: OMAP1: select CONFIG_GENERIC_IRQ_CHIP Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 155/198] ARM: dts: bcm2711: Dont mark timer regs unconfigured Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 156/198] RDMA/bnxt_re: Avoid clearing VLAN_ID mask in modify qp path Greg Kroah-Hartman
2025-03-25 12:21 ` [PATCH 6.1 157/198] RDMA/hns: Fix soft lockup during bt pages loop Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 158/198] RDMA/hns: Fix unmatched condition in error path of alloc_user_qp_db() Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 159/198] RDMA/hns: Fix a missing rollback in error path of hns_roce_create_qp_common() Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 160/198] RDMA/hns: Fix wrong value of max_sge_rd Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 161/198] Bluetooth: Fix error code in chan_alloc_skb_cb() Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 162/198] ipv6: Fix memleak of nhc_pcpu_rth_output in fib_check_nh_v6_gw() Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 163/198] ipv6: Set errno after ip_fib_metrics_init() in ip6_route_info_create() Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 164/198] net: atm: fix use after free in lec_send() Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 165/198] net: lwtunnel: fix recursion loops Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 166/198] net/neighbor: add missing policy for NDTPA_QUEUE_LENBYTES Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 167/198] Revert "gre: Fix IPv6 link-local address generation." Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 168/198] i2c: omap: fix IRQ storms Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 169/198] can: rcar_canfd: Fix page entries in the AFL list Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 170/198] can: flexcan: only change CAN state when link up in system PM Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 171/198] can: flexcan: disable transceiver during " Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 172/198] drm/v3d: Dont run jobs that have errors flagged in its fence Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 173/198] regulator: check that dummy regulator has been probed before using it Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 174/198] arm64: dts: freescale: imx8mm-verdin-dahlia: add Microphone Jack to sound card Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 175/198] arm64: dts: rockchip: Add missing PCIe supplies to RockPro64 board dtsi Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 176/198] mmc: sdhci-brcmstb: add cqhci suspend/resume to PM ops Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 177/198] mmc: atmel-mci: Add missing clk_disable_unprepare() Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 178/198] proc: fix UAF in proc_get_inode() Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 179/198] memcg: drain obj stock on cpu hotplug teardown Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 180/198] ARM: shmobile: smp: Enforce shmobile_smp_* alignment Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 181/198] efi/libstub: Avoid physical address 0x0 when doing random allocation Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 182/198] xsk: fix an integer overflow in xp_create_and_assign_umem() Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 183/198] batman-adv: Ignore own maximum aggregation size during RX Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 184/198] soc: qcom: pdr: Fix the potential deadlock Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 185/198] drm/radeon: fix uninitialized size issue in radeon_vce_cs_parse() Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 186/198] drm/amdgpu: Fix JPEG video caps max size for navi1x and raven Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 187/198] ksmbd: fix incorrect validation for num_aces field of smb_acl Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 188/198] drm/amd/display: Use HW lock mgr for PSR1 when only one eDP Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 189/198] mptcp: Fix data stream corruption in the address announcement Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 190/198] netfilter: nft_counter: Use u64_stats_t for statistic Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 191/198] drm/mediatek: Fix coverity issue with unintentional integer overflow Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 192/198] media: mediatek: vcodec: Fix VP8 stateless decoder smatch warning Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 193/198] arm64: dts: rockchip: fix u2phy1_host status for NanoPi R4S Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 194/198] drm/amdgpu: fix use-after-free bug Greg Kroah-Hartman
2025-03-25 12:22 ` Greg Kroah-Hartman [this message]
2025-03-25 12:22 ` [PATCH 6.1 196/198] wifi: iwlwifi: mvm: ensure offloading TID queue exists Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 197/198] mm/migrate: fix shmem xarray update during migration Greg Kroah-Hartman
2025-03-25 12:22 ` [PATCH 6.1 198/198] block, bfq: fix re-introduced UAF in bic_set_bfqq() Greg Kroah-Hartman
2025-03-25 15:22 ` [PATCH 6.1 000/198] 6.1.132-rc1 review Naresh Kamboju
2025-03-25 16:07 ` Dragan Simic
2025-03-26 15:31 ` Jon Hunter
2025-03-25 16:52 ` Florian Fainelli
2025-03-25 18:21 ` Miguel Ojeda
2025-03-25 20:02 ` Pavel Machek
2025-03-25 20:05 ` Pavel Machek
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=20250325122201.768824695@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=almaz.alexandrovich@paragon-software.com \
--cc=miguelgarciaroman8@gmail.com \
--cc=patches@lists.linux.dev \
--cc=stable@vger.kernel.org \
--cc=syzbot+f3e5d0948a1837ed1bb0@syzkaller.appspotmail.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).