On Tue, Apr 20, 2021 at 3:22 AM Jonathan Corbet wrote:
>
> Fox Chen writes:
>
> > On Mon, Apr 19, 2021 at 11:25 AM Matthew Wilcox wrote:
> >>
> >> On Mon, Apr 19, 2021 at 10:33:00AM +0800, Fox Chen wrote:
> >> > On Mon, Apr 19, 2021 at 10:17 AM Ma
6-rc1.gz
> or in the git tree and branch at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
> linux-5.11.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h
>
5.11.16-rc1 Successfully Compiled and booted on my Raspberry PI 4b (8g)
(bcm2711)
Tested-by: Fox Chen
2-rc1.gz
> or in the git tree and branch at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
> linux-5.10.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h
>
5.10.32-rc1 Successfully Compiled and booted on my Raspberry PI 4b (8g)
(bcm2711)
Tested-by: Fox Chen
On Mon, Apr 19, 2021 at 11:25 AM Matthew Wilcox wrote:
>
> On Mon, Apr 19, 2021 at 10:33:00AM +0800, Fox Chen wrote:
> > On Mon, Apr 19, 2021 at 10:17 AM Matthew Wilcox wrote:
> > >
> > > On Tue, Mar 16, 2021 at 01:47:16PM +0800, Fox Chen wrote:
> > &
On Mon, Apr 19, 2021 at 9:59 AM NeilBrown wrote:
>
> On Tue, Mar 16 2021, Fox Chen wrote:
>
> > instead of lookup_real()/vfs_create(), i_op->lookup() and
> > i_op->create() will be called directly.
> >
> > update vfs_open() logic
> >
> >
On Mon, Apr 19, 2021 at 10:17 AM Matthew Wilcox wrote:
>
> On Tue, Mar 16, 2021 at 01:47:16PM +0800, Fox Chen wrote:
> > -In the absence of symbolic links, ``walk_component()`` creates a new
> > +As the last step of ``walk_component()``, ``step_into()`` will be called
> >
z
> or in the git tree and branch at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
> linux-5.10.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h
>
5.10.31-rc1 Successfully Compiled and booted on my Raspberry PI 4b (8g)
(bcm2711)
Tested-by: Fox Chen
z
> or in the git tree and branch at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable-rc.git
> linux-5.11.y
> and the diffstat can be found below.
>
> thanks,
>
> greg k-h
>
5.11.15-rc1 Successfully Compiled and booted on my Raspberry PI 4b (8g)
(bcm2711)
Tested-by: Fox Chen
instead of lookup_real()/vfs_create(), i_op->lookup() and
i_op->create() will be called directly.
update vfs_open() logic
should_follow_link is merged into lookup_last() or open_last_lookup()
which returns symlink name instead of an integer.
Signed-off-by: Fox Chen
---
Documen
W")
commit 1c4ff1a87e46 ("namei: invert WALK_PUT logics")
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 12 +---
1 file changed, 5 insertions(+), 7 deletions(-)
diff --git a/Documentation/filesystems/path-lookup.rst
b/Documentation/filesystems/path-look
no get_link() anymore. we have step_into() and pick_link().
walk_component() will call step_into(), in turn call pick_link,
and return symlink name.
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 10 --
1 file changed, 4 insertions(+), 6 deletions(-)
diff
get_link() is merged into pick_link(). i_op->follow_link is
replaced with i_op->get_link(). get_link() can return ERR_PTR(0)
which equals NULL.
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 13 ++---
1 file changed, 6 insertions(+), 7 deletions(-)
diff -
Add macro name MAXSYMLINKS to the symlink limit description, so
that it is consistent with path name length description above.
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Documentation/filesystems
follow_link has been replaced by get_link() which can be
called in RCU mode.
see commit: commit 6b2553918d8b ("replace ->follow_link() with
new method that could stay in RCU mode")
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 12 +---
1 fi
No inode->put_link operation anymore. We use delayed_call to
deal with link destruction. Cookie has been replaced with
struct delayed_call.
Related commit: commit fceef393a538 ("switch ->get_link() to
delayed_call, kill ->put_link()")
Signed-off-by: Fox Chen
---
Documentati
ctions"
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/Documentation/filesystems/path-lookup.rst
b/Documentation/filesystems/path-lookup.rst
index a65cb477d524..66697db74955 100644
--- a/Docume
traling_symlink() was merged into lookup_last, do_last().
do_last() has later been split into open_last_lookups()
and do_open().
see related commit: commit c5971b8c6354 ("take post-lookup
part of do_last() out of loop")
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-
No path_to_namei() anymore, step_into() will be called.
Related commit: commit c99687a03a78 ("fold path_to_nameidata()
into its only remaining caller")
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 7 ---
1 file changed, 4 insertions(+), 3 deletions(-)
No follow_managed() anymore, handle_mounts(),
traverse_mounts(), will do the job.
see commit 9deed3ebca24 ("new helper: traverse_mounts()")
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 10 +-
1 file changed, 5 insertions(+), 5 deletions(-)
di
path_mountpoint() doesn't exist anymore. Have been folded
into path_lookup_at when flag is set with LOOKUP_MOUNTPOINT.
Check commit: commit 161aff1d93abf0e ("LOOKUP_MOUNTPOINT: fold
path_mountpointat() into path_lookupat()")
Signed-off-by: Fox Chen
---
Documentation/filesystems/
ut of RCU-walk"
6. In Patch 08 "latter" should be "later", fix it and restructure the next
paragrah
removing "Finally"
To help review, I've put a compiled html version here:
http://linux-docs.54fox.com/linux_docs/filesystems/path-lookup-v2.html
On Thu, Jan 28, 2021 at 11:58 AM NeilBrown wrote:
>
> On Tue, Jan 26 2021, Fox Chen wrote:
>
> > The Path lookup is a very complex subject in VFS. The path-lookup
> > document provides a very detailed guidance to help people understand
> > how path lookup works in t
On Wed, Jan 27, 2021 at 4:31 AM Jonathan Corbet wrote:
>
> On Tue, 26 Jan 2021 15:24:31 +0800
> Fox Chen wrote:
>
> > The Path lookup is a very complex subject in VFS. The path-lookup
> > document provides a very detailed guidance to help people understand
> >
On Tue, Jan 26, 2021 at 10:03 PM Greg KH wrote:
>
> On Tue, Jan 26, 2021 at 03:24:32PM +0800, Fox Chen wrote:
> > No follow_managed() anymore, handle_mounts(),
> > traverse_mounts(), will do the job.
> > see commit: 9deed3ebca244663530782631834e706a86a8c8f
>
&g
584b8
1c4ff1a87e46a06fc00a83da2fbbc3ac0298f221
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 12 +---
1 file changed, 5 insertions(+), 7 deletions(-)
diff --git a/Documentation/filesystems/path-lookup.rst
b/Documentation/filesystems/path-lookup.rst
index 915c9ffe22c1..921779a4636f 100644
No inode->put_link operation anymore. We use delayed_call to
deal with link destruction. Cookie has been replaced with
struct delayed_call.
Related commit: fceef393a538134f03b778c5d2519e670269342f
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst |
no get_link() anymore. we have step_into() and pick_link().
walk_component() will call step_into(), in turn call pick_link,
and return symlink name.
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 10 --
1 file changed, 4 insertions(+), 6 deletions(-)
diff
On Tue, Jan 26, 2021 at 3:25 PM Fox Chen wrote:
>
> The Path lookup is a very complex subject in VFS. The path-lookup
> document provides a very detailed guidance to help people understand
> how path lookup works in the kernel.This document was originally
> written based on thr
follow_link has been replaced by get_link() which can be
called in RCU mode.
see commit: 6b2553918d8b4e6de9853fd6315bec7271a2e592
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 12 +---
1 file changed, 5 insertions(+), 7 deletions(-)
diff --git a/Documentation
instead of lookup_real()/vfs_create(), i_op->lookup() and
i_op->create() will be called directly.
update vfs_open() logic
should_follow_link is merged into lookup_last() or open_last_lookup()
which returns symlink name instead of an integer.
Signed-off-by: Fox Chen
---
Documen
get_link() is merged into pick_link(). i_op->follow_link is
replaced with i_op->get_link(). get_link() can return ERR_PTR(0)
which equals NULL.
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 13 ++---
1 file changed, 6 insertions(+), 7 deletions(-)
diff -
traling_symlink() was merged into lookup_last, do_last().
do_last() has later been split into open_last_lookups()
and do_open().
see related commit: c5971b8c6354a95c9ee7eb722928af5000bac247
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 34 +++
1
Add macro name MAXSYMLINKS to the symlink limit description, so
that it is consistent with path name length description above.
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Documentation/filesystems
outdated. This patchset is intended to update
the document to make it more relevant to current codebase.
Fox Chen (12):
docs: path-lookup: update follow_managed() part
docs: path-lookup: update path_to_nameidata() parth
docs: path-lookup: update path_mountpoint() part
docs: path-lookup: update
No path_to_namei() anymore, step_into() will be called.
Related commit: c99687a03a78775f77d57fe9b07af4c8ec3dd03c
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Documentation/filesystems/path-lookup.rst
b
path_mountpoint() doesn't exist anymore. Have been folded
into path_lookup_at when flag is set with LOOKUP_MOUNTPOINT.
check out commit:161aff1d93abf0e5b5e9dbca88928998c155f677
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 3 ++-
1 file changed, 2 insertions(
No filename_mountpoint any more
see commit: 161aff1d93abf0e5b5e9dbca88928998c155f677
Without filename_mountpoint and path_mountpoint(), the
numbers should be four & three:
"These four correspond roughly to the three path_*() functions"
Signed-off-by: Fox Chen
---
Documentati
No follow_managed() anymore, handle_mounts(),
traverse_mounts(), will do the job.
see commit: 9deed3ebca244663530782631834e706a86a8c8f
Signed-off-by: Fox Chen
---
Documentation/filesystems/path-lookup.rst | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/Documentation
On Sun, Dec 20, 2020 at 7:52 AM Ian Kent wrote:
>
> On Sat, 2020-12-19 at 11:23 -0500, Tejun Heo wrote:
> > Hello,
> >
> > On Sat, Dec 19, 2020 at 03:08:13PM +0800, Ian Kent wrote:
> > > And looking further I see there's a race that kernfs can't do
> > > anything
> > > about between kernfs_refresh
On Sat, Dec 19, 2020 at 8:53 AM Ian Kent wrote:
>
> On Fri, 2020-12-18 at 21:20 +0800, Fox Chen wrote:
> > On Fri, Dec 18, 2020 at 7:21 PM Ian Kent wrote:
> > > On Fri, 2020-12-18 at 16:01 +0800, Fox Chen wrote:
> > > > On Fri, Dec 18, 2020 at 3:36 PM Ian Kent
On Fri, Dec 18, 2020 at 7:21 PM Ian Kent wrote:
>
> On Fri, 2020-12-18 at 16:01 +0800, Fox Chen wrote:
> > On Fri, Dec 18, 2020 at 3:36 PM Ian Kent wrote:
> > > On Thu, 2020-12-17 at 10:14 -0500, Tejun Heo wrote:
> > > > Hello,
> > > >
> > >
On Fri, Dec 18, 2020 at 3:36 PM Ian Kent wrote:
>
> On Thu, 2020-12-17 at 10:14 -0500, Tejun Heo wrote:
> > Hello,
> >
> > On Thu, Dec 17, 2020 at 07:48:49PM +0800, Ian Kent wrote:
> > > > What could be done is to make the kernfs node attr_mutex
> > > > a pointer and dynamically allocate it but ev
On Thu, Dec 17, 2020 at 12:46 PM Ian Kent wrote:
>
> On Tue, 2020-12-15 at 20:59 +0800, Ian Kent wrote:
> > On Tue, 2020-12-15 at 16:33 +0800, Fox Chen wrote:
> > > On Mon, Dec 14, 2020 at 9:30 PM Ian Kent wrote:
> > > > On Mon, 2020-12-14 at 14:14 +0800, Fox Che
On Mon, Dec 14, 2020 at 9:30 PM Ian Kent wrote:
>
> On Mon, 2020-12-14 at 14:14 +0800, Fox Chen wrote:
> > On Sun, Dec 13, 2020 at 11:46 AM Ian Kent wrote:
> > > On Fri, 2020-12-11 at 10:17 +0800, Ian Kent wrote:
> > > > On Fri, 2020-12-11 at 10:01 +0800, Ia
On Sun, Dec 13, 2020 at 11:46 AM Ian Kent wrote:
>
> On Fri, 2020-12-11 at 10:17 +0800, Ian Kent wrote:
> > On Fri, 2020-12-11 at 10:01 +0800, Ian Kent wrote:
> > > > For the patches, there is a mutex_lock in kn->attr_mutex, as
> > > > Tejun
> > > > mentioned here
> > > > (https://lore.kernel.org/
The following commit has been merged into the core/rcu branch of tip:
Commit-ID: d8566f15da9b1e51fd35f24321ec133095e02d06
Gitweb:
https://git.kernel.org/tip/d8566f15da9b1e51fd35f24321ec133095e02d06
Author:Fox Chen
AuthorDate:Wed, 09 Sep 2020 14:53:40 +08:00
Committer
Hi,
I found this series of patches solves exact the problem I am trying to solve.
https://lore.kernel.org/lkml/20201202145837.48040-1-foxhlc...@gmail.com/
The problem is reported by Brice Goglin on thread:
Re: [PATCH 1/4] drivers core: Introduce CPU type sysfs interface
https://lore.kernel.org/lk
96-core AMD EPYC ROME server, I can observe 50% boost on
a open+read+close cycle when I call open+read+close one thread per
core concurrently 1000 times after applying the patch.
Signed-off-by: Fox Chen
---
fs/kernfs/inode.c | 19 +++
1 file changed, 11 insertions(+), 8 deleti
On Thu, Dec 3, 2020 at 2:46 AM Tejun Heo wrote:
>
> Hello,
>
> On Wed, Dec 02, 2020 at 10:58:37PM +0800, Fox Chen wrote:
> > There is a big mutex in kernfs_dop_revalidate which slows down the
> > concurrent performance of kernfs.
> >
> > Since kernfs_dop_revali
On Thu, Dec 3, 2020 at 2:28 AM Greg KH wrote:
>
> On Wed, Dec 02, 2020 at 10:58:35PM +0800, Fox Chen wrote:
> > Hello,
> >
> > kernfs is an important facillity to support pseudo file systems and cgroup.
> > Currently, with a global mutex, reading files concurrent
On Thu, Dec 3, 2020 at 2:26 AM Greg KH wrote:
>
> On Wed, Dec 02, 2020 at 10:58:37PM +0800, Fox Chen wrote:
> > There is a big mutex in kernfs_dop_revalidate which slows down the
> > concurrent performance of kernfs.
> >
> > Since kernfs_dop_revalidate only
Hi,
Thanks for your comments.
> On Wed, Dec 02, 2020 at 10:58:36PM +0800, Fox Chen wrote:
> > @@ -121,7 +121,7 @@ int kernfs_iop_setattr(struct dentry *dentry, struct
> > iattr *iattr)
> > if (!kn)
> > return -EINVAL;
> >
&
o that kernfs_iop_permission
can perform concurrently.
Signed-off-by: Fox Chen
---
fs/kernfs/inode.c | 16
include/linux/kernfs.h | 1 +
2 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/fs/kernfs/inode.c b/fs/kernfs/inode.c
index fc2469a20fed..c8c2ea669e6d 100644
--- a/fs/
Hello,
kernfs is an important facillity to support pseudo file systems and cgroup.
Currently, with a global mutex, reading files concurrently from kernfs (e.g.
/sys)
is very slow.
This problem is reported by Brice Goglin on thread:
Re: [PATCH 1/4] drivers core: Introduce CPU type sysfs interfa
/locking.html
locking is not in the protocal for d_revalidate operation.
This patch remove this mutex from
kernfs_dop_revalidate, so kernfs_dop_revalidate
can run concurrently.
Signed-off-by: Fox Chen
---
fs/kernfs/dir.c | 9 +++--
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/fs
On Fri, Nov 13, 2020 at 2:15 PM Brice Goglin wrote:
>
>
> Le 12/11/2020 à 11:49, Greg Kroah-Hartman a écrit :
>
> On Thu, Nov 12, 2020 at 10:10:57AM +0100, Brice Goglin wrote:
>
> Le 12/11/2020 à 07:42, Greg Kroah-Hartman a écrit :
>
> On Thu, Nov 12, 2020 at 07:19:48AM +0100, Brice Goglin wrote:
_table - msblk->id_table[0]
and check if index is larger than this.
While this provides some sort of check, it is
imperfect because id_table can be smaller than that.
Reported-by: syzbot+8e28bba73ed1772a6...@syzkaller.appspotmail.com
Signed-off-by: Fox Chen
---
fs/squashfs/id.c | 8 +++
orted-by: syzbot+ecbcf37464c627253...@syzkaller.appspotmail.com
Signed-off-by: Fox Chen
---
fs/ntfs/attrib.c | 10 ++
1 file changed, 10 insertions(+)
diff --git a/fs/ntfs/attrib.c b/fs/ntfs/attrib.c
index d563abc3e136..e7366f74ff62 100644
--- a/fs/ntfs/attrib.c
+++ b/fs/ntfs/att
Hi Andrew,
On Wed, Oct 14, 2020 at 9:04 PM Andrew Price wrote:
> Just a heads-up to avoid duplication of effort: Fox Chen (CCed) has
> attempted to fix this also[1], but I don't know if they plan to send
> another patch.
Oh, I thought it was solved by someone else as you'
Yes, it's the same bug,
https://lkml.org/lkml/2020/10/5/538 this may help
thanks,
Hi,
I found this bug was caused by either uid/gid info in superblocks or
id_index_table is corrupted. The uid/gid index is larger than the size
of msblk->id_table.
Should I add a sanity check to squashfs_get_id??
The complete solution is to record the size of msblk->id_table in msblk
and c
On Mon, Oct 5, 2020 at 9:23 PM Andrew Price wrote:
>
> On 03/10/2020 07:31, Fox Chen wrote:
> > for (x = 2;; x++) {
> > ...
> > gfs2_assert(sdp, x <= GFS2_MAX_META_HEIGHT); <--- after
> > ...
> >
ries to reach the out-of-bound
location, gfs2_assert won't help here.
This patch fixes this by moving gfs2_assert into the loop.
We will check x value each time to see if it exceeds GFS2_MAX_META_HEIGHT.
Signed-off-by: Fox Chen
---
fs/gfs2/ops_fstype.c | 2 +-
1 file changed, 1 insertion(+),
Commit 39323c6 smp_mb__{before,after}_atomic(): update Documentation
has a typo in CPU MEORY BARRIERS section:
"RMW functions that do not imply are memory barrier are ..." should be
"RMW functions that do not imply a memory barrier are ...".
This patch fixes this typo.
Sig
Dear all,
I have a question about
static void hci_phy_link_complete_evt(struct hci_dev *hdev,
struct sk_buff *skb)
-- HCI_EV_PHY_LINK_COMPLETE event packet handler in hci_even.c:4940
if (ev->status) {
hci_conn_del(hcon); <--
hci_dev_unlock(hdev);
This cleans up open brace issues reported by checkpatch.pl
Signed-off-by: Fox Chen
---
.../staging/rtl8723bs/include/HalPwrSeqCmd.h | 6 +--
drivers/staging/rtl8723bs/include/HalVerDef.h | 18 +++
drivers/staging/rtl8723bs/include/drv_types.h | 6 +--
.../rtl8723bs/include
66 matches
Mail list logo