* linux-next: manual merge of the vfs-brauner tree with the mm tree
@ 2024-02-20 23:32 Stephen Rothwell
2024-03-11 21:56 ` Stephen Rothwell
0 siblings, 1 reply; 13+ messages in thread
From: Stephen Rothwell @ 2024-02-20 23:32 UTC (permalink / raw)
To: Christian Brauner, Andrew Morton
Cc: Christophe Leroy, Linux Kernel Mailing List,
Linux Next Mailing List
[-- Attachment #1: Type: text/plain, Size: 1108 bytes --]
Hi all,
Today's linux-next merge of the vfs-brauner tree got a conflict in:
init/main.c
between commit:
4728b74d1992 ("arm64, powerpc, riscv, s390, x86: ptdump: refactor CONFIG_DEBUG_WX")
from the mm-unstable branch of the mm tree and commit:
193d98b1d3aa ("pidfd: add pidfs")
from the vfs-brauner tree.
I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging. You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.
--
Cheers,
Stephen Rothwell
diff --cc init/main.c
index bc3b6b49b3d8,2fbf6a3114d5..000000000000
--- a/init/main.c
+++ b/init/main.c
@@@ -100,7 -99,7 +100,8 @@@
#include <linux/init_syscalls.h>
#include <linux/stackdepot.h>
#include <linux/randomize_kstack.h>
+#include <linux/ptdump.h>
+ #include <linux/pidfs.h>
#include <net/net_namespace.h>
#include <asm/io.h>
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread* Re: linux-next: manual merge of the vfs-brauner tree with the mm tree
2024-02-20 23:32 linux-next: manual merge of the vfs-brauner tree with the mm tree Stephen Rothwell
@ 2024-03-11 21:56 ` Stephen Rothwell
0 siblings, 0 replies; 13+ messages in thread
From: Stephen Rothwell @ 2024-03-11 21:56 UTC (permalink / raw)
To: Andrew Morton
Cc: Christian Brauner, Christophe Leroy, Linux Kernel Mailing List,
Linux Next Mailing List
[-- Attachment #1: Type: text/plain, Size: 1374 bytes --]
Hi all,
On Wed, 21 Feb 2024 10:32:00 +1100 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> Today's linux-next merge of the vfs-brauner tree got a conflict in:
>
> init/main.c
>
> between commit:
>
> 4728b74d1992 ("arm64, powerpc, riscv, s390, x86: ptdump: refactor CONFIG_DEBUG_WX")
>
> from the mm-unstable branch of the mm tree and commit:
>
> 193d98b1d3aa ("pidfd: add pidfs")
>
> from the vfs-brauner tree.
>
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging. You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
>
> --
> Cheers,
> Stephen Rothwell
>
> diff --cc init/main.c
> index bc3b6b49b3d8,2fbf6a3114d5..000000000000
> --- a/init/main.c
> +++ b/init/main.c
> @@@ -100,7 -99,7 +100,8 @@@
> #include <linux/init_syscalls.h>
> #include <linux/stackdepot.h>
> #include <linux/randomize_kstack.h>
> +#include <linux/ptdump.h>
> + #include <linux/pidfs.h>
> #include <net/net_namespace.h>
>
> #include <asm/io.h>
This is now a conflict between the mm-stable tree and Linus' tree.
--
Cheers,
Stephen Rothwell
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* linux-next: manual merge of the vfs-brauner tree with the mm tree
@ 2024-09-02 1:21 Stephen Rothwell
2024-09-02 9:18 ` Pankaj Raghav (Samsung)
2024-09-18 0:34 ` Stephen Rothwell
0 siblings, 2 replies; 13+ messages in thread
From: Stephen Rothwell @ 2024-09-02 1:21 UTC (permalink / raw)
To: Christian Brauner, Andrew Morton
Cc: Linux Kernel Mailing List, Linux Next Mailing List,
Luis Chamberlain, Pankaj Raghav, Usama Arif
[-- Attachment #1: Type: text/plain, Size: 2289 bytes --]
Hi all,
Today's linux-next merge of the fs-next tree got a conflict in:
include/linux/huge_mm.h
between commit:
bc47772ebe8b ("mm: introduce a pageflag for partially mapped folios")
from the mm-unstable branch of the mm tree and commit:
fd031210c9ce ("mm: split a folio in minimum folio order chunks")
from the vfs-brauner tree.
I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging. You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.
--
Cheers,
Stephen Rothwell
diff --cc include/linux/huge_mm.h
index 0b0539f4ee1a,7c50aeed0522..000000000000
--- a/include/linux/huge_mm.h
+++ b/include/linux/huge_mm.h
@@@ -326,14 -316,15 +328,15 @@@ unsigned long thp_get_unmapped_area_vmf
unsigned long len, unsigned long pgoff, unsigned long flags,
vm_flags_t vm_flags);
-bool can_split_folio(struct folio *folio, int *pextra_pins);
+bool can_split_folio(struct folio *folio, int caller_pins, int *pextra_pins);
int split_huge_page_to_list_to_order(struct page *page, struct list_head *list,
unsigned int new_order);
+ int split_folio_to_list(struct folio *folio, struct list_head *list);
static inline int split_huge_page(struct page *page)
{
- return split_huge_page_to_list_to_order(page, NULL, 0);
+ return split_folio(page_folio(page));
}
-void deferred_split_folio(struct folio *folio);
+void deferred_split_folio(struct folio *folio, bool partially_mapped);
void __split_huge_pmd(struct vm_area_struct *vma, pmd_t *pmd,
unsigned long address, bool freeze, struct folio *folio);
@@@ -502,7 -487,13 +505,13 @@@ static inline int split_huge_page(struc
{
return 0;
}
+
+ static inline int split_folio_to_list(struct folio *folio, struct list_head *list)
+ {
+ return 0;
+ }
+
-static inline void deferred_split_folio(struct folio *folio) {}
+static inline void deferred_split_folio(struct folio *folio, bool partially_mapped) {}
#define split_huge_pmd(__vma, __pmd, __address) \
do { } while (0)
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread* Re: linux-next: manual merge of the vfs-brauner tree with the mm tree
2024-09-02 1:21 Stephen Rothwell
@ 2024-09-02 9:18 ` Pankaj Raghav (Samsung)
2024-09-18 0:34 ` Stephen Rothwell
1 sibling, 0 replies; 13+ messages in thread
From: Pankaj Raghav (Samsung) @ 2024-09-02 9:18 UTC (permalink / raw)
To: Stephen Rothwell
Cc: Christian Brauner, Andrew Morton, Linux Kernel Mailing List,
Linux Next Mailing List, Luis Chamberlain, Pankaj Raghav,
Usama Arif
On Mon, Sep 02, 2024 at 11:21:01AM +1000, Stephen Rothwell wrote:
> Hi all,
>
> Today's linux-next merge of the fs-next tree got a conflict in:
>
> include/linux/huge_mm.h
>
> between commit:
>
> bc47772ebe8b ("mm: introduce a pageflag for partially mapped folios")
>
> from the mm-unstable branch of the mm tree and commit:
>
> fd031210c9ce ("mm: split a folio in minimum folio order chunks")
>
> from the vfs-brauner tree.
>
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging. You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
Thanks Stephen.
The changes look good to me.
There is also another fix in this commit that I will be sending out very
soon.
@Christian and @Stephen:
I see that fs-next still does not have the mm-unstable changes. When I
send the fix, should I base it on:
- vfs.blocksize branch from Christian?
or
- linux-next which has latest mm changes?
--
Pankaj
^ permalink raw reply [flat|nested] 13+ messages in thread* Re: linux-next: manual merge of the vfs-brauner tree with the mm tree
2024-09-02 1:21 Stephen Rothwell
2024-09-02 9:18 ` Pankaj Raghav (Samsung)
@ 2024-09-18 0:34 ` Stephen Rothwell
1 sibling, 0 replies; 13+ messages in thread
From: Stephen Rothwell @ 2024-09-18 0:34 UTC (permalink / raw)
To: Christian Brauner, Andrew Morton
Cc: Linux Kernel Mailing List, Linux Next Mailing List,
Luis Chamberlain, Pankaj Raghav, Usama Arif
[-- Attachment #1: Type: text/plain, Size: 2572 bytes --]
Hi all,
On Mon, 2 Sep 2024 11:21:01 +1000 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> Today's linux-next merge of the fs-next tree got a conflict in:
>
> include/linux/huge_mm.h
>
> between commit:
>
> bc47772ebe8b ("mm: introduce a pageflag for partially mapped folios")
>
> from the mm-unstable branch of the mm tree and commit:
>
> fd031210c9ce ("mm: split a folio in minimum folio order chunks")
>
> from the vfs-brauner tree.
>
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging. You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
>
> diff --cc include/linux/huge_mm.h
> index 0b0539f4ee1a,7c50aeed0522..000000000000
> --- a/include/linux/huge_mm.h
> +++ b/include/linux/huge_mm.h
> @@@ -326,14 -316,15 +328,15 @@@ unsigned long thp_get_unmapped_area_vmf
> unsigned long len, unsigned long pgoff, unsigned long flags,
> vm_flags_t vm_flags);
>
> -bool can_split_folio(struct folio *folio, int *pextra_pins);
> +bool can_split_folio(struct folio *folio, int caller_pins, int *pextra_pins);
> int split_huge_page_to_list_to_order(struct page *page, struct list_head *list,
> unsigned int new_order);
> + int split_folio_to_list(struct folio *folio, struct list_head *list);
> static inline int split_huge_page(struct page *page)
> {
> - return split_huge_page_to_list_to_order(page, NULL, 0);
> + return split_folio(page_folio(page));
> }
> -void deferred_split_folio(struct folio *folio);
> +void deferred_split_folio(struct folio *folio, bool partially_mapped);
>
> void __split_huge_pmd(struct vm_area_struct *vma, pmd_t *pmd,
> unsigned long address, bool freeze, struct folio *folio);
> @@@ -502,7 -487,13 +505,13 @@@ static inline int split_huge_page(struc
> {
> return 0;
> }
> +
> + static inline int split_folio_to_list(struct folio *folio, struct list_head *list)
> + {
> + return 0;
> + }
> +
> -static inline void deferred_split_folio(struct folio *folio) {}
> +static inline void deferred_split_folio(struct folio *folio, bool partially_mapped) {}
> #define split_huge_pmd(__vma, __pmd, __address) \
> do { } while (0)
>
This is now a conflict between the vfs-brauner tree and the mm-stable
tree.
--
Cheers,
Stephen Rothwell
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* linux-next: manual merge of the vfs-brauner tree with the mm tree
@ 2023-11-21 23:31 Stephen Rothwell
2024-01-08 21:00 ` Stephen Rothwell
0 siblings, 1 reply; 13+ messages in thread
From: Stephen Rothwell @ 2023-11-21 23:31 UTC (permalink / raw)
To: Christian Brauner, Andrew Morton
Cc: Linux Kernel Mailing List, Linux Next Mailing List,
Matthew Wilcox (Oracle)
[-- Attachment #1: Type: text/plain, Size: 1642 bytes --]
Hi all,
Today's linux-next merge of the vfs-brauner tree got a conflict in:
fs/buffer.c
between commits:
2c68861ed127 ("buffer: return bool from grow_dev_folio()")
5334c6480adb ("buffer: calculate block number inside folio_init_buffers()")
from the mm tree and commit:
488e2eea5100 ("fs: Rename mapping private members")
from the vfs-brauner tree.
I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging. You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.
--
Cheers,
Stephen Rothwell
diff --cc fs/buffer.c
index 4eb44ccdc6be,5ffc44ab4854..000000000000
--- a/fs/buffer.c
+++ b/fs/buffer.c
@@@ -1067,14 -1064,17 +1067,14 @@@ static bool grow_dev_folio(struct block
* lock to be atomic wrt __find_get_block(), which does not
* run under the folio lock.
*/
- spin_lock(&inode->i_mapping->private_lock);
+ spin_lock(&inode->i_mapping->i_private_lock);
link_dev_buffers(folio, bh);
- end_block = folio_init_buffers(folio, bdev,
- (sector_t)index << sizebits, size);
+ end_block = folio_init_buffers(folio, bdev, size);
- spin_unlock(&inode->i_mapping->private_lock);
+ spin_unlock(&inode->i_mapping->i_private_lock);
-done:
- ret = (block < end_block) ? 1 : -ENXIO;
-failed:
+unlock:
folio_unlock(folio);
folio_put(folio);
- return ret;
+ return block < end_block;
}
/*
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread* Re: linux-next: manual merge of the vfs-brauner tree with the mm tree
2023-11-21 23:31 Stephen Rothwell
@ 2024-01-08 21:00 ` Stephen Rothwell
0 siblings, 0 replies; 13+ messages in thread
From: Stephen Rothwell @ 2024-01-08 21:00 UTC (permalink / raw)
To: Andrew Morton
Cc: Christian Brauner, Linux Kernel Mailing List,
Linux Next Mailing List, Matthew Wilcox (Oracle)
[-- Attachment #1: Type: text/plain, Size: 1932 bytes --]
Hi all,
On Wed, 22 Nov 2023 10:31:19 +1100 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> Today's linux-next merge of the vfs-brauner tree got a conflict in:
>
> fs/buffer.c
>
> between commits:
>
> 2c68861ed127 ("buffer: return bool from grow_dev_folio()")
> 5334c6480adb ("buffer: calculate block number inside folio_init_buffers()")
>
> from the mm tree and commit:
>
> 488e2eea5100 ("fs: Rename mapping private members")
>
> from the vfs-brauner tree.
>
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging. You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
>
> --
> Cheers,
> Stephen Rothwell
>
> diff --cc fs/buffer.c
> index 4eb44ccdc6be,5ffc44ab4854..000000000000
> --- a/fs/buffer.c
> +++ b/fs/buffer.c
> @@@ -1067,14 -1064,17 +1067,14 @@@ static bool grow_dev_folio(struct block
> * lock to be atomic wrt __find_get_block(), which does not
> * run under the folio lock.
> */
> - spin_lock(&inode->i_mapping->private_lock);
> + spin_lock(&inode->i_mapping->i_private_lock);
> link_dev_buffers(folio, bh);
> - end_block = folio_init_buffers(folio, bdev,
> - (sector_t)index << sizebits, size);
> + end_block = folio_init_buffers(folio, bdev, size);
> - spin_unlock(&inode->i_mapping->private_lock);
> + spin_unlock(&inode->i_mapping->i_private_lock);
> -done:
> - ret = (block < end_block) ? 1 : -ENXIO;
> -failed:
> +unlock:
> folio_unlock(folio);
> folio_put(folio);
> - return ret;
> + return block < end_block;
> }
>
> /*
This is now a conflict between the mm tree and Linus' tree.
--
Cheers,
Stephen Rothwell
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* linux-next: manual merge of the vfs-brauner tree with the mm tree
@ 2023-09-28 0:25 Stephen Rothwell
2023-10-30 22:30 ` Stephen Rothwell
0 siblings, 1 reply; 13+ messages in thread
From: Stephen Rothwell @ 2023-09-28 0:25 UTC (permalink / raw)
To: Christian Brauner, Andrew Morton
Cc: Jan Kara, Linux Kernel Mailing List, Linux Next Mailing List,
Qi Zheng
[-- Attachment #1: Type: text/plain, Size: 1208 bytes --]
Hi all,
Today's linux-next merge of the vfs-brauner tree got a conflict in:
fs/xfs/xfs_buf.c
between commit:
5c7b459f9f1d ("xfs: dynamically allocate the xfs-buf shrinker")
from the mm tree and commit:
176ccb99e207 ("xfs: Convert to bdev_open_by_path()")
from the vfs-brauner tree.
I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging. You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.
--
Cheers,
Stephen Rothwell
diff --cc fs/xfs/xfs_buf.c
index 9e7ba04572db,003e157241da..000000000000
--- a/fs/xfs/xfs_buf.c
+++ b/fs/xfs/xfs_buf.c
@@@ -1943,9 -1945,7 +1943,7 @@@ voi
xfs_free_buftarg(
struct xfs_buftarg *btp)
{
- struct block_device *bdev = btp->bt_bdev;
-
- unregister_shrinker(&btp->bt_shrinker);
+ shrinker_free(btp->bt_shrinker);
ASSERT(percpu_counter_sum(&btp->bt_io_count) == 0);
percpu_counter_destroy(&btp->bt_io_count);
list_lru_destroy(&btp->bt_lru);
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread* Re: linux-next: manual merge of the vfs-brauner tree with the mm tree
2023-09-28 0:25 Stephen Rothwell
@ 2023-10-30 22:30 ` Stephen Rothwell
0 siblings, 0 replies; 13+ messages in thread
From: Stephen Rothwell @ 2023-10-30 22:30 UTC (permalink / raw)
To: Andrew Morton
Cc: Christian Brauner, Jan Kara, Linux Kernel Mailing List,
Linux Next Mailing List, Qi Zheng
[-- Attachment #1: Type: text/plain, Size: 1478 bytes --]
Hi all,
On Thu, 28 Sep 2023 10:25:04 +1000 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> Today's linux-next merge of the vfs-brauner tree got a conflict in:
>
> fs/xfs/xfs_buf.c
>
> between commit:
>
> 5c7b459f9f1d ("xfs: dynamically allocate the xfs-buf shrinker")
>
> from the mm tree and commit:
>
> 176ccb99e207 ("xfs: Convert to bdev_open_by_path()")
>
> from the vfs-brauner tree.
>
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging. You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
>
> --
> Cheers,
> Stephen Rothwell
>
> diff --cc fs/xfs/xfs_buf.c
> index 9e7ba04572db,003e157241da..000000000000
> --- a/fs/xfs/xfs_buf.c
> +++ b/fs/xfs/xfs_buf.c
> @@@ -1943,9 -1945,7 +1943,7 @@@ voi
> xfs_free_buftarg(
> struct xfs_buftarg *btp)
> {
> - struct block_device *bdev = btp->bt_bdev;
> -
> - unregister_shrinker(&btp->bt_shrinker);
> + shrinker_free(btp->bt_shrinker);
> ASSERT(percpu_counter_sum(&btp->bt_io_count) == 0);
> percpu_counter_destroy(&btp->bt_io_count);
> list_lru_destroy(&btp->bt_lru);
This is now a conflict between the mm-stable tree and Linus' tree.
--
Cheers,
Stephen Rothwell
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
* linux-next: manual merge of the vfs-brauner tree with the mm tree
@ 2023-09-20 23:13 Stephen Rothwell
0 siblings, 0 replies; 13+ messages in thread
From: Stephen Rothwell @ 2023-09-20 23:13 UTC (permalink / raw)
To: Christian Brauner, Andrew Morton
Cc: Linux Kernel Mailing List, Linux Next Mailing List, Ying Sun
[-- Attachment #1: Type: text/plain, Size: 1266 bytes --]
Hi all,
Today's linux-next merge of the vfs-brauner tree got a conflict in:
mm/shmem.c
between commit:
449e3b71c77c ("mm/shmem: remove dead code can not be satisfied by "(CONFIG_SHMEM)&&(!(CONFIG_SHMEM))"")
from the mm tree and commit:
db58b5eea8a4 ("Revert "tmpfs: add support for multigrain timestamps"")
from the vfs-brauner tree.
I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging. You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.
--
Cheers,
Stephen Rothwell
diff --cc mm/shmem.c
index be050efe18cb,69595d341882..000000000000
--- a/mm/shmem.c
+++ b/mm/shmem.c
@@@ -4602,7 -4585,11 +4602,7 @@@ static struct file_system_type shmem_fs
.parameters = shmem_fs_parameters,
#endif
.kill_sb = kill_litter_super,
- .fs_flags = FS_USERNS_MOUNT | FS_ALLOW_IDMAP | FS_MGTIME,
-#ifdef CONFIG_SHMEM
+ .fs_flags = FS_USERNS_MOUNT | FS_ALLOW_IDMAP,
-#else
- .fs_flags = FS_USERNS_MOUNT,
-#endif
};
void __init shmem_init(void)
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread* linux-next: manual merge of the vfs-brauner tree with the mm tree
@ 2023-07-14 0:24 Stephen Rothwell
0 siblings, 0 replies; 13+ messages in thread
From: Stephen Rothwell @ 2023-07-14 0:24 UTC (permalink / raw)
To: Christian Brauner, Andrew Morton
Cc: Carlos Maiolino, Carlos Maiolino, Chuck Lever, Jeff Layton,
Linux Kernel Mailing List, Linux Next Mailing List, Lukas Czerner
[-- Attachment #1: Type: text/plain, Size: 7588 bytes --]
Hi all,
Today's linux-next merge of the vfs-brauner tree got a conflict in:
mm/shmem.c
between commits:
3c37c527bbf9 ("shmem: make shmem_get_inode() return ERR_PTR instead of NULL")
1a93dd24f1be ("shmem: quota support")
from the mm tree and commits:
ad9717ca487a ("shmem: stable directory offsets")
fa6c36fb3f24 ("shmem: convert to ctime accessor functions")
from the vfs-brauner tree.
I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging. You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.
--
Cheers,
Stephen Rothwell
diff --cc mm/shmem.c
index c35717763dcc,310b0544eae3..000000000000
--- a/mm/shmem.c
+++ b/mm/shmem.c
@@@ -2445,83 -2355,81 +2445,89 @@@ static void shmem_set_inode_flags(struc
#define shmem_initxattrs NULL
#endif
+ static struct offset_ctx *shmem_get_offset_ctx(struct inode *inode)
+ {
+ return &SHMEM_I(inode)->dir_offsets;
+ }
+
-static struct inode *shmem_get_inode(struct mnt_idmap *idmap, struct super_block *sb,
- struct inode *dir, umode_t mode, dev_t dev,
- unsigned long flags)
+static struct inode *__shmem_get_inode(struct mnt_idmap *idmap,
+ struct super_block *sb,
+ struct inode *dir, umode_t mode,
+ dev_t dev, unsigned long flags)
{
struct inode *inode;
struct shmem_inode_info *info;
struct shmem_sb_info *sbinfo = SHMEM_SB(sb);
ino_t ino;
+ int err;
+
+ err = shmem_reserve_inode(sb, &ino);
+ if (err)
+ return ERR_PTR(err);
- if (shmem_reserve_inode(sb, &ino))
- return NULL;
inode = new_inode(sb);
- if (inode) {
- inode->i_ino = ino;
- inode_init_owner(idmap, inode, dir, mode);
- inode->i_blocks = 0;
- inode->i_atime = inode->i_mtime = inode_set_ctime_current(inode);
- inode->i_generation = get_random_u32();
- info = SHMEM_I(inode);
- memset(info, 0, (char *)inode - (char *)info);
- spin_lock_init(&info->lock);
- atomic_set(&info->stop_eviction, 0);
- info->seals = F_SEAL_SEAL;
- info->flags = flags & VM_NORESERVE;
- info->i_crtime = inode->i_mtime;
- info->fsflags = (dir == NULL) ? 0 :
- SHMEM_I(dir)->fsflags & SHMEM_FL_INHERITED;
- if (info->fsflags)
- shmem_set_inode_flags(inode, info->fsflags);
- INIT_LIST_HEAD(&info->shrinklist);
- INIT_LIST_HEAD(&info->swaplist);
- if (sbinfo->noswap)
- mapping_set_unevictable(inode->i_mapping);
- simple_xattrs_init(&info->xattrs);
- cache_no_acl(inode);
- mapping_set_large_folios(inode->i_mapping);
- switch (mode & S_IFMT) {
- default:
- inode->i_op = &shmem_special_inode_operations;
- init_special_inode(inode, mode, dev);
- break;
- case S_IFREG:
- inode->i_mapping->a_ops = &shmem_aops;
- inode->i_op = &shmem_inode_operations;
- inode->i_fop = &shmem_file_operations;
- mpol_shared_policy_init(&info->policy,
- shmem_get_sbmpol(sbinfo));
- break;
- case S_IFDIR:
- inc_nlink(inode);
- /* Some things misbehave if size == 0 on a directory */
- inode->i_size = 2 * BOGO_DIRENT_SIZE;
- inode->i_op = &shmem_dir_inode_operations;
- inode->i_fop = &simple_offset_dir_operations;
- simple_offset_init(shmem_get_offset_ctx(inode));
- break;
- case S_IFLNK:
- /*
- * Must not load anything in the rbtree,
- * mpol_free_shared_policy will not be called.
- */
- mpol_shared_policy_init(&info->policy, NULL);
- break;
- }
-
- lockdep_annotate_inode_mutex_key(inode);
- } else
+ if (!inode) {
shmem_free_inode(sb);
+ return ERR_PTR(-ENOSPC);
+ }
+
+ inode->i_ino = ino;
+ inode_init_owner(idmap, inode, dir, mode);
+ inode->i_blocks = 0;
- inode->i_atime = inode->i_mtime = inode->i_ctime = current_time(inode);
++ inode->i_atime = inode->i_mtime = inode_set_ctime_current(inode);
+ inode->i_generation = get_random_u32();
+ info = SHMEM_I(inode);
+ memset(info, 0, (char *)inode - (char *)info);
+ spin_lock_init(&info->lock);
+ atomic_set(&info->stop_eviction, 0);
+ info->seals = F_SEAL_SEAL;
+ info->flags = flags & VM_NORESERVE;
+ info->i_crtime = inode->i_mtime;
+ info->fsflags = (dir == NULL) ? 0 :
+ SHMEM_I(dir)->fsflags & SHMEM_FL_INHERITED;
+ if (info->fsflags)
+ shmem_set_inode_flags(inode, info->fsflags);
+ INIT_LIST_HEAD(&info->shrinklist);
+ INIT_LIST_HEAD(&info->swaplist);
+ INIT_LIST_HEAD(&info->swaplist);
+ if (sbinfo->noswap)
+ mapping_set_unevictable(inode->i_mapping);
+ simple_xattrs_init(&info->xattrs);
+ cache_no_acl(inode);
+ mapping_set_large_folios(inode->i_mapping);
+
+ switch (mode & S_IFMT) {
+ default:
+ inode->i_op = &shmem_special_inode_operations;
+ init_special_inode(inode, mode, dev);
+ break;
+ case S_IFREG:
+ inode->i_mapping->a_ops = &shmem_aops;
+ inode->i_op = &shmem_inode_operations;
+ inode->i_fop = &shmem_file_operations;
+ mpol_shared_policy_init(&info->policy,
+ shmem_get_sbmpol(sbinfo));
+ break;
+ case S_IFDIR:
+ inc_nlink(inode);
+ /* Some things misbehave if size == 0 on a directory */
+ inode->i_size = 2 * BOGO_DIRENT_SIZE;
+ inode->i_op = &shmem_dir_inode_operations;
- inode->i_fop = &simple_dir_operations;
++ inode->i_fop = &simple_offset_dir_operations;
++ simple_offset_init(shmem_get_offset_ctx(inode));
+ break;
+ case S_IFLNK:
+ /*
+ * Must not load anything in the rbtree,
+ * mpol_free_shared_policy will not be called.
+ */
+ mpol_shared_policy_init(&info->policy, NULL);
+ break;
+ }
+
+ lockdep_annotate_inode_mutex_key(inode);
return inode;
}
@@@ -3203,30 -3075,30 +3209,33 @@@ shmem_mknod(struct mnt_idmap *idmap, st
struct dentry *dentry, umode_t mode, dev_t dev)
{
struct inode *inode;
- int error = -ENOSPC;
+ int error;
inode = shmem_get_inode(idmap, dir->i_sb, dir, mode, dev, VM_NORESERVE);
- if (inode) {
- error = simple_acl_create(dir, inode);
- if (error)
- goto out_iput;
- error = security_inode_init_security(inode, dir,
- &dentry->d_name,
- shmem_initxattrs, NULL);
- if (error && error != -EOPNOTSUPP)
- goto out_iput;
- error = simple_offset_add(shmem_get_offset_ctx(dir), dentry);
- if (error)
- goto out_iput;
+ if (IS_ERR(inode))
+ return PTR_ERR(inode);
- dir->i_size += BOGO_DIRENT_SIZE;
- dir->i_mtime = inode_set_ctime_current(dir);
- inode_inc_iversion(dir);
- d_instantiate(dentry, inode);
- dget(dentry); /* Extra count - pin the dentry in core */
- }
+ error = simple_acl_create(dir, inode);
+ if (error)
+ goto out_iput;
+ error = security_inode_init_security(inode, dir,
+ &dentry->d_name,
+ shmem_initxattrs, NULL);
+ if (error && error != -EOPNOTSUPP)
+ goto out_iput;
+
- error = 0;
++ error = simple_offset_add(shmem_get_offset_ctx(dir), dentry);
++ if (error)
++ goto out_iput;
++
+ dir->i_size += BOGO_DIRENT_SIZE;
- dir->i_ctime = dir->i_mtime = current_time(dir);
++ dir->i_mtime = inode_set_ctime_current(dir);
+ inode_inc_iversion(dir);
+ d_instantiate(dentry, inode);
+ dget(dentry); /* Extra count - pin the dentry in core */
return error;
+
out_iput:
iput(inode);
return error;
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread* linux-next: manual merge of the vfs-brauner tree with the mm tree
@ 2023-07-14 0:02 Stephen Rothwell
0 siblings, 0 replies; 13+ messages in thread
From: Stephen Rothwell @ 2023-07-14 0:02 UTC (permalink / raw)
To: Christian Brauner, Andrew Morton
Cc: Carlos Maiolino, Carlos Maiolino, Chuck Lever,
Linux Kernel Mailing List, Linux Next Mailing List, Lukas Czerner
[-- Attachment #1: Type: text/plain, Size: 1261 bytes --]
Hi all,
Today's linux-next merge of the vfs-brauner tree got a conflict in:
include/linux/shmem_fs.h
between commit:
1a93dd24f1be ("shmem: quota support")
from the mm tree and commit:
ad9717ca487a ("shmem: stable directory offsets")
from the vfs-brauner tree.
I fixed it up (see below) and can carry the fix as necessary. This
is now fixed as far as linux-next is concerned, but any non trivial
conflicts should be mentioned to your upstream maintainer when your tree
is submitted for merging. You may also want to consider cooperating
with the maintainer of the conflicting tree to minimise any particularly
complex conflicts.
--
Cheers,
Stephen Rothwell
diff --cc include/linux/shmem_fs.h
index c0058f3bba70,a5454a80ab30..000000000000
--- a/include/linux/shmem_fs.h
+++ b/include/linux/shmem_fs.h
@@@ -31,9 -27,7 +31,10 @@@ struct shmem_inode_info
atomic_t stop_eviction; /* hold when working on inode */
struct timespec64 i_crtime; /* file creation time */
unsigned int fsflags; /* flags for FS_IOC_[SG]ETFLAGS */
+#ifdef CONFIG_TMPFS_QUOTA
+ struct dquot *i_dquot[MAXQUOTAS];
+#endif
+ struct offset_ctx dir_offsets; /* stable entry offsets */
struct inode vfs_inode;
};
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread* linux-next: manual merge of the vfs-brauner tree with the mm tree
@ 2023-05-24 0:06 Stephen Rothwell
0 siblings, 0 replies; 13+ messages in thread
From: Stephen Rothwell @ 2023-05-24 0:06 UTC (permalink / raw)
To: Christian Brauner, Andrew Morton
Cc: Danila Chernetsov, Linux Kernel Mailing List,
Linux Next Mailing List
[-- Attachment #1: Type: text/plain, Size: 774 bytes --]
Hi all,
Today's linux-next merge of the vfs-brauner tree got a conflict in:
fs/ntfs/mft.c
between commit:
e7c5ef2adfdf ("ntfs: do not dereference a null ctx on error")
from the mm tree and commit:
ee3b4556cee8 ("ntfs: do not dereference a null ctx on error")
from the vfs-brauner tree.
I fixed it up (the latter seems to be a newer version, so I just used
that) and can carry the fix as necessary. This is now fixed as far as
linux-next is concerned, but any non trivial conflicts should be mentioned
to your upstream maintainer when your tree is submitted for merging.
You may also want to consider cooperating with the maintainer of the
conflicting tree to minimise any particularly complex conflicts.
--
Cheers,
Stephen Rothwell
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2024-09-18 0:34 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-02-20 23:32 linux-next: manual merge of the vfs-brauner tree with the mm tree Stephen Rothwell
2024-03-11 21:56 ` Stephen Rothwell
-- strict thread matches above, loose matches on Subject: below --
2024-09-02 1:21 Stephen Rothwell
2024-09-02 9:18 ` Pankaj Raghav (Samsung)
2024-09-18 0:34 ` Stephen Rothwell
2023-11-21 23:31 Stephen Rothwell
2024-01-08 21:00 ` Stephen Rothwell
2023-09-28 0:25 Stephen Rothwell
2023-10-30 22:30 ` Stephen Rothwell
2023-09-20 23:13 Stephen Rothwell
2023-07-14 0:24 Stephen Rothwell
2023-07-14 0:02 Stephen Rothwell
2023-05-24 0:06 Stephen Rothwell
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox