Re: [PATCH] fs: inline step_into() and walk_component()

From: Mateusz Guzik

Date: Wed Nov 19 2025 - 15:41:47 EST


> On Wed, Nov 19, 2025 at 9:24 PM Al Viro <viro@xxxxxxxxxxxxxxxxxx> wrote:
> >
> > On Wed, Nov 19, 2025 at 08:49:36PM +0100, Mateusz Guzik wrote:
> > > btw, is there a way to combine DCACHE_MANAGED_DENTRY + symlink check
> > > into one branch? The compiler refuses at the moment due to type being
> > > a bitfield. Given how few free flags are remaining this is quite a
> > > bummer.
> >
> > Is that really worth bothering with? Condition is "bits 15..17 are 000
> > and bits 19..21 are _not_ 110" and I don't see any clean way to change
> > the encoding so that it could be done in one test. In theory we could
> > do something like swapping the "type" and "managed" bits and use the
> > fact that 6 (symlink) is the maximal type we might run into, turning
> > that into flags & ((7<<15)|(7<<19))) < (6<<15), but... *ewww*
> >

Forgot to respond to this bit.

I was looking for something *trivial* and hoped I merely missed it.

I completely agree anything complicated/fancy is not warranted.