patches.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	patches@lists.linux.dev, Ditang Chen <ditang.c@gmail.com>,
	"Seth Forshee (Digital Ocean)" <sforshee@kernel.org>,
	"Christian Brauner (Microsoft)" <brauner@kernel.org>
Subject: [PATCH 4.14 268/338] pnode: terminate at peers of source
Date: Mon, 16 Jan 2023 16:52:21 +0100	[thread overview]
Message-ID: <20230116154832.781950485@linuxfoundation.org> (raw)
In-Reply-To: <20230116154820.689115727@linuxfoundation.org>

From: Christian Brauner <brauner@kernel.org>

commit 11933cf1d91d57da9e5c53822a540bbdc2656c16 upstream.

The propagate_mnt() function handles mount propagation when creating
mounts and propagates the source mount tree @source_mnt to all
applicable nodes of the destination propagation mount tree headed by
@dest_mnt.

Unfortunately it contains a bug where it fails to terminate at peers of
@source_mnt when looking up copies of the source mount that become
masters for copies of the source mount tree mounted on top of slaves in
the destination propagation tree causing a NULL dereference.

Once the mechanics of the bug are understood it's easy to trigger.
Because of unprivileged user namespaces it is available to unprivileged
users.

While fixing this bug we've gotten confused multiple times due to
unclear terminology or missing concepts. So let's start this with some
clarifications:

* The terms "master" or "peer" denote a shared mount. A shared mount
  belongs to a peer group.

* A peer group is a set of shared mounts that propagate to each other.
  They are identified by a peer group id. The peer group id is available
  in @shared_mnt->mnt_group_id.
  Shared mounts within the same peer group have the same peer group id.
  The peers in a peer group can be reached via @shared_mnt->mnt_share.

* The terms "slave mount" or "dependent mount" denote a mount that
  receives propagation from a peer in a peer group. IOW, shared mounts
  may have slave mounts and slave mounts have shared mounts as their
  master. Slave mounts of a given peer in a peer group are listed on
  that peers slave list available at @shared_mnt->mnt_slave_list.

* The term "master mount" denotes a mount in a peer group. IOW, it
  denotes a shared mount or a peer mount in a peer group. The term
  "master mount" - or "master" for short - is mostly used when talking
  in the context of slave mounts that receive propagation from a master
  mount. A master mount of a slave identifies the closest peer group a
  slave mount receives propagation from. The master mount of a slave can
  be identified via @slave_mount->mnt_master. Different slaves may point
  to different masters in the same peer group.

* Multiple peers in a peer group can have non-empty ->mnt_slave_lists.
  Non-empty ->mnt_slave_lists of peers don't intersect. Consequently, to
  ensure all slave mounts of a peer group are visited the
  ->mnt_slave_lists of all peers in a peer group have to be walked.

* Slave mounts point to a peer in the closest peer group they receive
  propagation from via @slave_mnt->mnt_master (see above). Together with
  these peers they form a propagation group (see below). The closest
  peer group can thus be identified through the peer group id
  @slave_mnt->mnt_master->mnt_group_id of the peer/master that a slave
  mount receives propagation from.

* A shared-slave mount is a slave mount to a peer group pg1 while also
  a peer in another peer group pg2. IOW, a peer group may receive
  propagation from another peer group.

  If a peer group pg1 is a slave to another peer group pg2 then all
  peers in peer group pg1 point to the same peer in peer group pg2 via
  ->mnt_master. IOW, all peers in peer group pg1 appear on the same
  ->mnt_slave_list. IOW, they cannot be slaves to different peer groups.

* A pure slave mount is a slave mount that is a slave to a peer group
  but is not a peer in another peer group.

* A propagation group denotes the set of mounts consisting of a single
  peer group pg1 and all slave mounts and shared-slave mounts that point
  to a peer in that peer group via ->mnt_master. IOW, all slave mounts
  such that @slave_mnt->mnt_master->mnt_group_id is equal to
  @shared_mnt->mnt_group_id.

  The concept of a propagation group makes it easier to talk about a
  single propagation level in a propagation tree.

  For example, in propagate_mnt() the immediate peers of @dest_mnt and
  all slaves of @dest_mnt's peer group form a propagation group propg1.
  So a shared-slave mount that is a slave in propg1 and that is a peer
  in another peer group pg2 forms another propagation group propg2
  together with all slaves that point to that shared-slave mount in
  their ->mnt_master.

* A propagation tree refers to all mounts that receive propagation
  starting from a specific shared mount.

  For example, for propagate_mnt() @dest_mnt is the start of a
  propagation tree. The propagation tree ecompasses all mounts that
  receive propagation from @dest_mnt's peer group down to the leafs.

With that out of the way let's get to the actual algorithm.

We know that @dest_mnt is guaranteed to be a pure shared mount or a
shared-slave mount. This is guaranteed by a check in
attach_recursive_mnt(). So propagate_mnt() will first propagate the
source mount tree to all peers in @dest_mnt's peer group:

for (n = next_peer(dest_mnt); n != dest_mnt; n = next_peer(n)) {
        ret = propagate_one(n);
        if (ret)
               goto out;
}

Notice, that the peer propagation loop of propagate_mnt() doesn't
propagate @dest_mnt itself. @dest_mnt is mounted directly in
attach_recursive_mnt() after we propagated to the destination
propagation tree.

The mount that will be mounted on top of @dest_mnt is @source_mnt. This
copy was created earlier even before we entered attach_recursive_mnt()
and doesn't concern us a lot here.

It's just important to notice that when propagate_mnt() is called
@source_mnt will not yet have been mounted on top of @dest_mnt. Thus,
@source_mnt->mnt_parent will either still point to @source_mnt or - in
the case @source_mnt is moved and thus already attached - still to its
former parent.

For each peer @m in @dest_mnt's peer group propagate_one() will create a
new copy of the source mount tree and mount that copy @child on @m such
that @child->mnt_parent points to @m after propagate_one() returns.

propagate_one() will stash the last destination propagation node @m in
@last_dest and the last copy it created for the source mount tree in
@last_source.

Hence, if we call into propagate_one() again for the next destination
propagation node @m, @last_dest will point to the previous destination
propagation node and @last_source will point to the previous copy of the
source mount tree and mounted on @last_dest.

Each new copy of the source mount tree is created from the previous copy
of the source mount tree. This will become important later.

The peer loop in propagate_mnt() is straightforward. We iterate through
the peers copying and updating @last_source and @last_dest as we go
through them and mount each copy of the source mount tree @child on a
peer @m in @dest_mnt's peer group.

After propagate_mnt() handled the peers in @dest_mnt's peer group
propagate_mnt() will propagate the source mount tree down the
propagation tree that @dest_mnt's peer group propagates to:

for (m = next_group(dest_mnt, dest_mnt); m;
                m = next_group(m, dest_mnt)) {
        /* everything in that slave group */
        n = m;
        do {
                ret = propagate_one(n);
                if (ret)
                        goto out;
                n = next_peer(n);
        } while (n != m);
}

The next_group() helper will recursively walk the destination
propagation tree, descending into each propagation group of the
propagation tree.

The important part is that it takes care to propagate the source mount
tree to all peers in the peer group of a propagation group before it
propagates to the slaves to those peers in the propagation group. IOW,
it creates and mounts copies of the source mount tree that become
masters before it creates and mounts copies of the source mount tree
that become slaves to these masters.

It is important to remember that propagating the source mount tree to
each mount @m in the destination propagation tree simply means that we
create and mount new copies @child of the source mount tree on @m such
that @child->mnt_parent points to @m.

Since we know that each node @m in the destination propagation tree
headed by @dest_mnt's peer group will be overmounted with a copy of the
source mount tree and since we know that the propagation properties of
each copy of the source mount tree we create and mount at @m will mostly
mirror the propagation properties of @m. We can use that information to
create and mount the copies of the source mount tree that become masters
before their slaves.

The easy case is always when @m and @last_dest are peers in a peer group
of a given propagation group. In that case we know that we can simply
copy @last_source without having to figure out what the master for the
new copy @child of the source mount tree needs to be as we've done that
in a previous call to propagate_one().

The hard case is when we're dealing with a slave mount or a shared-slave
mount @m in a destination propagation group that we need to create and
mount a copy of the source mount tree on.

For each propagation group in the destination propagation tree we
propagate the source mount tree to we want to make sure that the copies
@child of the source mount tree we create and mount on slaves @m pick an
ealier copy of the source mount tree that we mounted on a master @m of
the destination propagation group as their master. This is a mouthful
but as far as we can tell that's the core of it all.

But, if we keep track of the masters in the destination propagation tree
@m we can use the information to find the correct master for each copy
of the source mount tree we create and mount at the slaves in the
destination propagation tree @m.

Let's walk through the base case as that's still fairly easy to grasp.

If we're dealing with the first slave in the propagation group that
@dest_mnt is in then we don't yet have marked any masters in the
destination propagation tree.

We know the master for the first slave to @dest_mnt's peer group is
simple @dest_mnt. So we expect this algorithm to yield a copy of the
source mount tree that was mounted on a peer in @dest_mnt's peer group
as the master for the copy of the source mount tree we want to mount at
the first slave @m:

for (n = m; ; n = p) {
        p = n->mnt_master;
        if (p == dest_master || IS_MNT_MARKED(p))
                break;
}

For the first slave we walk the destination propagation tree all the way
up to a peer in @dest_mnt's peer group. IOW, the propagation hierarchy
can be walked by walking up the @mnt->mnt_master hierarchy of the
destination propagation tree @m. We will ultimately find a peer in
@dest_mnt's peer group and thus ultimately @dest_mnt->mnt_master.

Btw, here the assumption we listed at the beginning becomes important.
Namely, that peers in a peer group pg1 that are slaves in another peer
group pg2 appear on the same ->mnt_slave_list. IOW, all slaves who are
peers in peer group pg1 point to the same peer in peer group pg2 via
their ->mnt_master. Otherwise the termination condition in the code
above would be wrong and next_group() would be broken too.

So the first iteration sets:

n = m;
p = n->mnt_master;

such that @p now points to a peer or @dest_mnt itself. We walk up one
more level since we don't have any marked mounts. So we end up with:

n = dest_mnt;
p = dest_mnt->mnt_master;

If @dest_mnt's peer group is not slave to another peer group then @p is
now NULL. If @dest_mnt's peer group is a slave to another peer group
then @p now points to @dest_mnt->mnt_master points which is a master
outside the propagation tree we're dealing with.

Now we need to figure out the master for the copy of the source mount
tree we're about to create and mount on the first slave of @dest_mnt's
peer group:

do {
        struct mount *parent = last_source->mnt_parent;
        if (last_source == first_source)
                break;
        done = parent->mnt_master == p;
        if (done && peers(n, parent))
                break;
        last_source = last_source->mnt_master;
} while (!done);

We know that @last_source->mnt_parent points to @last_dest and
@last_dest is the last peer in @dest_mnt's peer group we propagated to
in the peer loop in propagate_mnt().

Consequently, @last_source is the last copy we created and mount on that
last peer in @dest_mnt's peer group. So @last_source is the master we
want to pick.

We know that @last_source->mnt_parent->mnt_master points to
@last_dest->mnt_master. We also know that @last_dest->mnt_master is
either NULL or points to a master outside of the destination propagation
tree and so does @p. Hence:

done = parent->mnt_master == p;

is trivially true in the base condition.

We also know that for the first slave mount of @dest_mnt's peer group
that @last_dest either points @dest_mnt itself because it was
initialized to:

last_dest = dest_mnt;

at the beginning of propagate_mnt() or it will point to a peer of
@dest_mnt in its peer group. In both cases it is guaranteed that on the
first iteration @n and @parent are peers (Please note the check for
peers here as that's important.):

if (done && peers(n, parent))
        break;

So, as we expected, we select @last_source, which referes to the last
copy of the source mount tree we mounted on the last peer in @dest_mnt's
peer group, as the master of the first slave in @dest_mnt's peer group.
The rest is taken care of by clone_mnt(last_source, ...). We'll skip
over that part otherwise this becomes a blogpost.

At the end of propagate_mnt() we now mark @m->mnt_master as the first
master in the destination propagation tree that is distinct from
@dest_mnt->mnt_master. IOW, we mark @dest_mnt itself as a master.

By marking @dest_mnt or one of it's peers we are able to easily find it
again when we later lookup masters for other copies of the source mount
tree we mount copies of the source mount tree on slaves @m to
@dest_mnt's peer group. This, in turn allows us to find the master we
selected for the copies of the source mount tree we mounted on master in
the destination propagation tree again.

The important part is to realize that the code makes use of the fact
that the last copy of the source mount tree stashed in @last_source was
mounted on top of the previous destination propagation node @last_dest.
What this means is that @last_source allows us to walk the destination
propagation hierarchy the same way each destination propagation node @m
does.

If we take @last_source, which is the copy of @source_mnt we have
mounted on @last_dest in the previous iteration of propagate_one(), then
we know @last_source->mnt_parent points to @last_dest but we also know
that as we walk through the destination propagation tree that
@last_source->mnt_master will point to an earlier copy of the source
mount tree we mounted one an earlier destination propagation node @m.

IOW, @last_source->mnt_parent will be our hook into the destination
propagation tree and each consecutive @last_source->mnt_master will lead
us to an earlier propagation node @m via
@last_source->mnt_master->mnt_parent.

Hence, by walking up @last_source->mnt_master, each of which is mounted
on a node that is a master @m in the destination propagation tree we can
also walk up the destination propagation hierarchy.

So, for each new destination propagation node @m we use the previous
copy of @last_source and the fact it's mounted on the previous
propagation node @last_dest via @last_source->mnt_master->mnt_parent to
determine what the master of the new copy of @last_source needs to be.

The goal is to find the _closest_ master that the new copy of the source
mount tree we are about to create and mount on a slave @m in the
destination propagation tree needs to pick. IOW, we want to find a
suitable master in the propagation group.

As the propagation structure of the source mount propagation tree we
create mirrors the propagation structure of the destination propagation
tree we can find @m's closest master - i.e., a marked master - which is
a peer in the closest peer group that @m receives propagation from. We
store that closest master of @m in @p as before and record the slave to
that master in @n

We then search for this master @p via @last_source by walking up the
master hierarchy starting from the last copy of the source mount tree
stored in @last_source that we created and mounted on the previous
destination propagation node @m.

We will try to find the master by walking @last_source->mnt_master and
by comparing @last_source->mnt_master->mnt_parent->mnt_master to @p. If
we find @p then we can figure out what earlier copy of the source mount
tree needs to be the master for the new copy of the source mount tree
we're about to create and mount at the current destination propagation
node @m.

If @last_source->mnt_master->mnt_parent and @n are peers then we know
that the closest master they receive propagation from is
@last_source->mnt_master->mnt_parent->mnt_master. If not then the
closest immediate peer group that they receive propagation from must be
one level higher up.

This builds on the earlier clarification at the beginning that all peers
in a peer group which are slaves of other peer groups all point to the
same ->mnt_master, i.e., appear on the same ->mnt_slave_list, of the
closest peer group that they receive propagation from.

However, terminating the walk has corner cases.

If the closest marked master for a given destination node @m cannot be
found by walking up the master hierarchy via @last_source->mnt_master
then we need to terminate the walk when we encounter @source_mnt again.

This isn't an arbitrary termination. It simply means that the new copy
of the source mount tree we're about to create has a copy of the source
mount tree we created and mounted on a peer in @dest_mnt's peer group as
its master. IOW, @source_mnt is the peer in the closest peer group that
the new copy of the source mount tree receives propagation from.

We absolutely have to stop @source_mnt because @last_source->mnt_master
either points outside the propagation hierarchy we're dealing with or it
is NULL because @source_mnt isn't a shared-slave.

So continuing the walk past @source_mnt would cause a NULL dereference
via @last_source->mnt_master->mnt_parent. And so we have to stop the
walk when we encounter @source_mnt again.

One scenario where this can happen is when we first handled a series of
slaves of @dest_mnt's peer group and then encounter peers in a new peer
group that is a slave to @dest_mnt's peer group. We handle them and then
we encounter another slave mount to @dest_mnt that is a pure slave to
@dest_mnt's peer group. That pure slave will have a peer in @dest_mnt's
peer group as its master. Consequently, the new copy of the source mount
tree will need to have @source_mnt as it's master. So we walk the
propagation hierarchy all the way up to @source_mnt based on
@last_source->mnt_master.

So terminate on @source_mnt, easy peasy. Except, that the check misses
something that the rest of the algorithm already handles.

If @dest_mnt has peers in it's peer group the peer loop in
propagate_mnt():

for (n = next_peer(dest_mnt); n != dest_mnt; n = next_peer(n)) {
        ret = propagate_one(n);
        if (ret)
                goto out;
}

will consecutively update @last_source with each previous copy of the
source mount tree we created and mounted at the previous peer in
@dest_mnt's peer group. So after that loop terminates @last_source will
point to whatever copy of the source mount tree was created and mounted
on the last peer in @dest_mnt's peer group.

Furthermore, if there is even a single additional peer in @dest_mnt's
peer group then @last_source will __not__ point to @source_mnt anymore.
Because, as we mentioned above, @dest_mnt isn't even handled in this
loop but directly in attach_recursive_mnt(). So it can't even accidently
come last in that peer loop.

So the first time we handle a slave mount @m of @dest_mnt's peer group
the copy of the source mount tree we create will make the __last copy of
the source mount tree we created and mounted on the last peer in
@dest_mnt's peer group the master of the new copy of the source mount
tree we create and mount on the first slave of @dest_mnt's peer group__.

But this means that the termination condition that checks for
@source_mnt is wrong. The @source_mnt cannot be found anymore by
propagate_one(). Instead it will find the last copy of the source mount
tree we created and mounted for the last peer of @dest_mnt's peer group
again. And that is a peer of @source_mnt not @source_mnt itself.

IOW, we fail to terminate the loop correctly and ultimately dereference
@last_source->mnt_master->mnt_parent. When @source_mnt's peer group
isn't slave to another peer group then @last_source->mnt_master is NULL
causing the splat below.

For example, assume @dest_mnt is a pure shared mount and has three peers
in its peer group:

===================================================================================
                                         mount-id   mount-parent-id   peer-group-id
===================================================================================
(@dest_mnt) mnt_master[216]              309        297               shared:216
    \
     (@source_mnt) mnt_master[218]:      609        609               shared:218

(1) mnt_master[216]:                     607        605               shared:216
    \
     (P1) mnt_master[218]:               624        607               shared:218

(2) mnt_master[216]:                     576        574               shared:216
    \
     (P2) mnt_master[218]:               625        576               shared:218

(3) mnt_master[216]:                     545        543               shared:216
    \
     (P3) mnt_master[218]:               626        545               shared:218

After this sequence has been processed @last_source will point to (P3),
the copy generated for the third peer in @dest_mnt's peer group we
handled. So the copy of the source mount tree (P4) we create and mount
on the first slave of @dest_mnt's peer group:

===================================================================================
                                         mount-id   mount-parent-id   peer-group-id
===================================================================================
    mnt_master[216]                      309        297               shared:216
   /
  /
(S0) mnt_slave                           483        481               master:216
  \
   \    (P3) mnt_master[218]             626        545               shared:218
    \  /
     \/
    (P4) mnt_slave                       627        483               master:218

will pick the last copy of the source mount tree (P3) as master, not (S0).

When walking the propagation hierarchy via @last_source's master
hierarchy we encounter (P3) but not (S0), i.e., @source_mnt.

We can fix this in multiple ways:

(1) By setting @last_source to @source_mnt after we processed the peers
    in @dest_mnt's peer group right after the peer loop in
    propagate_mnt().

(2) By changing the termination condition that relies on finding exactly
    @source_mnt to finding a peer of @source_mnt.

(3) By only moving @last_source when we actually venture into a new peer
    group or some clever variant thereof.

The first two options are minimally invasive and what we want as a fix.
The third option is more intrusive but something we'd like to explore in
the near future.

This passes all LTP tests and specifically the mount propagation
testsuite part of it. It also holds up against all known reproducers of
this issues.

Final words.
First, this is a clever but __worringly__ underdocumented algorithm.
There isn't a single detailed comment to be found in next_group(),
propagate_one() or anywhere else in that file for that matter. This has
been a giant pain to understand and work through and a bug like this is
insanely difficult to fix without a detailed understanding of what's
happening. Let's not talk about the amount of time that was sunk into
fixing this.

Second, all the cool kids with access to
unshare --mount --user --map-root --propagation=unchanged
are going to have a lot of fun. IOW, triggerable by unprivileged users
while namespace_lock() lock is held.

[  115.848393] BUG: kernel NULL pointer dereference, address: 0000000000000010
[  115.848967] #PF: supervisor read access in kernel mode
[  115.849386] #PF: error_code(0x0000) - not-present page
[  115.849803] PGD 0 P4D 0
[  115.850012] Oops: 0000 [#1] PREEMPT SMP PTI
[  115.850354] CPU: 0 PID: 15591 Comm: mount Not tainted 6.1.0-rc7 #3
[  115.850851] Hardware name: innotek GmbH VirtualBox/VirtualBox, BIOS
VirtualBox 12/01/2006
[  115.851510] RIP: 0010:propagate_one.part.0+0x7f/0x1a0
[  115.851924] Code: 75 eb 4c 8b 05 c2 25 37 02 4c 89 ca 48 8b 4a 10
49 39 d0 74 1e 48 3b 81 e0 00 00 00 74 26 48 8b 92 e0 00 00 00 be 01
00 00 00 <48> 8b 4a 10 49 39 d0 75 e2 40 84 f6 74 38 4c 89 05 84 25 37
02 4d
[  115.853441] RSP: 0018:ffffb8d5443d7d50 EFLAGS: 00010282
[  115.853865] RAX: ffff8e4d87c41c80 RBX: ffff8e4d88ded780 RCX: ffff8e4da4333a00
[  115.854458] RDX: 0000000000000000 RSI: 0000000000000001 RDI: ffff8e4d88ded780
[  115.855044] RBP: ffff8e4d88ded780 R08: ffff8e4da4338000 R09: ffff8e4da43388c0
[  115.855693] R10: 0000000000000002 R11: ffffb8d540158000 R12: ffffb8d5443d7da8
[  115.856304] R13: ffff8e4d88ded780 R14: 0000000000000000 R15: 0000000000000000
[  115.856859] FS:  00007f92c90c9800(0000) GS:ffff8e4dfdc00000(0000)
knlGS:0000000000000000
[  115.857531] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  115.858006] CR2: 0000000000000010 CR3: 0000000022f4c002 CR4: 00000000000706f0
[  115.858598] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[  115.859393] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
[  115.860099] Call Trace:
[  115.860358]  <TASK>
[  115.860535]  propagate_mnt+0x14d/0x190
[  115.860848]  attach_recursive_mnt+0x274/0x3e0
[  115.861212]  path_mount+0x8c8/0xa60
[  115.861503]  __x64_sys_mount+0xf6/0x140
[  115.861819]  do_syscall_64+0x5b/0x80
[  115.862117]  ? do_faccessat+0x123/0x250
[  115.862435]  ? syscall_exit_to_user_mode+0x17/0x40
[  115.862826]  ? do_syscall_64+0x67/0x80
[  115.863133]  ? syscall_exit_to_user_mode+0x17/0x40
[  115.863527]  ? do_syscall_64+0x67/0x80
[  115.863835]  ? do_syscall_64+0x67/0x80
[  115.864144]  ? do_syscall_64+0x67/0x80
[  115.864452]  ? exc_page_fault+0x70/0x170
[  115.864775]  entry_SYSCALL_64_after_hwframe+0x63/0xcd
[  115.865187] RIP: 0033:0x7f92c92b0ebe
[  115.865480] Code: 48 8b 0d 75 4f 0c 00 f7 d8 64 89 01 48 83 c8 ff
c3 66 2e 0f 1f 84 00 00 00 00 00 90 f3 0f 1e fa 49 89 ca b8 a5 00 00
00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 42 4f 0c 00 f7 d8 64 89
01 48
[  115.866984] RSP: 002b:00007fff000aa728 EFLAGS: 00000246 ORIG_RAX:
00000000000000a5
[  115.867607] RAX: ffffffffffffffda RBX: 000055a77888d6b0 RCX: 00007f92c92b0ebe
[  115.868240] RDX: 000055a77888d8e0 RSI: 000055a77888e6e0 RDI: 000055a77888e620
[  115.868823] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000001
[  115.869403] R10: 0000000000001000 R11: 0000000000000246 R12: 000055a77888e620
[  115.869994] R13: 000055a77888d8e0 R14: 00000000ffffffff R15: 00007f92c93e4076
[  115.870581]  </TASK>
[  115.870763] Modules linked in: nft_fib_inet nft_fib_ipv4
nft_fib_ipv6 nft_fib nft_reject_inet nf_reject_ipv4 nf_reject_ipv6
nft_reject nft_ct nft_chain_nat nf_nat nf_conntrack nf_defrag_ipv6
nf_defrag_ipv4 ip_set rfkill nf_tables nfnetlink qrtr snd_intel8x0
sunrpc snd_ac97_codec ac97_bus snd_pcm snd_timer intel_rapl_msr
intel_rapl_common snd vboxguest intel_powerclamp video rapl joydev
soundcore i2c_piix4 wmi fuse zram xfs vmwgfx crct10dif_pclmul
crc32_pclmul crc32c_intel polyval_clmulni polyval_generic
drm_ttm_helper ttm e1000 ghash_clmulni_intel serio_raw ata_generic
pata_acpi scsi_dh_rdac scsi_dh_emc scsi_dh_alua dm_multipath
[  115.875288] CR2: 0000000000000010
[  115.875641] ---[ end trace 0000000000000000 ]---
[  115.876135] RIP: 0010:propagate_one.part.0+0x7f/0x1a0
[  115.876551] Code: 75 eb 4c 8b 05 c2 25 37 02 4c 89 ca 48 8b 4a 10
49 39 d0 74 1e 48 3b 81 e0 00 00 00 74 26 48 8b 92 e0 00 00 00 be 01
00 00 00 <48> 8b 4a 10 49 39 d0 75 e2 40 84 f6 74 38 4c 89 05 84 25 37
02 4d
[  115.878086] RSP: 0018:ffffb8d5443d7d50 EFLAGS: 00010282
[  115.878511] RAX: ffff8e4d87c41c80 RBX: ffff8e4d88ded780 RCX: ffff8e4da4333a00
[  115.879128] RDX: 0000000000000000 RSI: 0000000000000001 RDI: ffff8e4d88ded780
[  115.879715] RBP: ffff8e4d88ded780 R08: ffff8e4da4338000 R09: ffff8e4da43388c0
[  115.880359] R10: 0000000000000002 R11: ffffb8d540158000 R12: ffffb8d5443d7da8
[  115.880962] R13: ffff8e4d88ded780 R14: 0000000000000000 R15: 0000000000000000
[  115.881548] FS:  00007f92c90c9800(0000) GS:ffff8e4dfdc00000(0000)
knlGS:0000000000000000
[  115.882234] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[  115.882713] CR2: 0000000000000010 CR3: 0000000022f4c002 CR4: 00000000000706f0
[  115.883314] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
[  115.883966] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400

Fixes: f2ebb3a921c1 ("smarter propagate_mnt()")
Fixes: 5ec0811d3037 ("propogate_mnt: Handle the first propogated copy being a slave")
Cc: <stable@vger.kernel.org>
Reported-by: Ditang Chen <ditang.c@gmail.com>
Signed-off-by: Seth Forshee (Digital Ocean) <sforshee@kernel.org>
Signed-off-by: Christian Brauner (Microsoft) <brauner@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
If there are no big objections I'll get this to Linus rather sooner than later.
---
 fs/pnode.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/fs/pnode.c
+++ b/fs/pnode.c
@@ -245,7 +245,7 @@ static int propagate_one(struct mount *m
 		}
 		do {
 			struct mount *parent = last_source->mnt_parent;
-			if (last_source == first_source)
+			if (peers(last_source, first_source))
 				break;
 			done = parent->mnt_master == p;
 			if (done && peers(n, parent))



  parent reply	other threads:[~2023-01-16 17:12 UTC|newest]

Thread overview: 346+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-16 15:47 [PATCH 4.14 000/338] 4.14.303-rc1 review Greg Kroah-Hartman
2023-01-16 15:47 ` [PATCH 4.14 001/338] libtraceevent: Fix build with binutils 2.35 Greg Kroah-Hartman
2023-01-16 15:47 ` [PATCH 4.14 002/338] once: add DO_ONCE_SLOW() for sleepable contexts Greg Kroah-Hartman
2023-01-16 15:47 ` [PATCH 4.14 003/338] mm/khugepaged: fix GUP-fast interaction by sending IPI Greg Kroah-Hartman
2023-01-16 15:47 ` [PATCH 4.14 004/338] mm/khugepaged: invoke MMU notifiers in shmem/file collapse paths Greg Kroah-Hartman
2023-01-16 15:47 ` [PATCH 4.14 005/338] block: unhash blkdev part inode when the part is deleted Greg Kroah-Hartman
2023-01-16 15:47 ` [PATCH 4.14 006/338] nfp: fix use-after-free in area_cache_get() Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 007/338] ASoC: ops: Check bounds for second channel in snd_soc_put_volsw_sx() Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 008/338] can: sja1000: fix size of OCR_MODE_MASK define Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 009/338] can: mcba_usb: Fix termination command argument Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 010/338] ASoC: ops: Correct bounds check for second channel on SX controls Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 011/338] perf script python: Remove explicit shebang from tests/attr.c Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 012/338] udf: Discard preallocation before extending file with a hole Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 013/338] udf: Drop unused arguments of udf_delete_aext() Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 014/338] udf: Fix preallocation discarding at indirect extent boundary Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 015/338] udf: Do not bother looking for prealloc extents if i_lenExtents matches i_size Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 016/338] udf: Fix extending file within last block Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 017/338] usb: gadget: uvc: Prevent buffer overflow in setup handler Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 018/338] USB: serial: option: add Quectel EM05-G modem Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 019/338] USB: serial: cp210x: add Kamstrup RF sniffer PIDs Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 020/338] igb: Initialize mailbox message for VF reset Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 021/338] Bluetooth: L2CAP: Fix u8 overflow Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 022/338] net: loopback: use NET_NAME_PREDICTABLE for name_assign_type Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 023/338] usb: musb: remove extra check in musb_gadget_vbus_draw Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 024/338] ARM: dts: qcom: apq8064: fix coresight compatible Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 025/338] drivers: soc: ti: knav_qmss_queue: Mark knav_acc_firmwares as static Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 026/338] arm: dts: spear600: Fix clcd interrupt Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 027/338] soc: ti: smartreflex: Fix PM disable depth imbalance in omap_sr_probe Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 028/338] arm64: dts: mediatek: mt6797: Fix 26M oscillator unit name Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 029/338] ARM: dts: dove: Fix assigned-addresses for every PCIe Root Port Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 030/338] ARM: dts: armada-370: " Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 031/338] ARM: dts: armada-xp: " Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 032/338] ARM: dts: armada-375: " Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 033/338] ARM: dts: armada-38x: " Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 034/338] ARM: dts: armada-39x: " Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 035/338] ARM: dts: turris-omnia: Add ethernet aliases Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 036/338] ARM: dts: turris-omnia: Add switch port 6 node Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 037/338] pstore/ram: Fix error return code in ramoops_probe() Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 038/338] ARM: mmp: fix timer_read delay Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 039/338] pstore: Avoid kcore oops by vmap()ing with VM_IOREMAP Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 040/338] tpm/tpm_crb: Fix error message in __crb_relinquish_locality() Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 041/338] cpuidle: dt: Return the correct numbers of parsed idle states Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 042/338] alpha: fix syscall entry in !AUDUT_SYSCALL case Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 043/338] PM: hibernate: Fix mistake in kerneldoc comment Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 044/338] fs: dont audit the capability check in simple_xattr_list() Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 045/338] perf: Fix possible memleak in pmu_dev_alloc() Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 046/338] timerqueue: Use rb_entry_safe() in timerqueue_getnext() Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 047/338] ocfs2: fix memory leak in ocfs2_stack_glue_init() Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 048/338] MIPS: vpe-mt: fix possible memory leak while module exiting Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 049/338] MIPS: vpe-cmp: " Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 050/338] PNP: fix name memory leak in pnp_alloc_dev() Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 051/338] irqchip: gic-pm: Use pm_runtime_resume_and_get() in gic_probe() Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 052/338] libfs: add DEFINE_SIMPLE_ATTRIBUTE_SIGNED for signed value Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 053/338] lib/notifier-error-inject: fix error when writing -errno to debugfs file Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 054/338] rapidio: fix possible name leaks when rio_add_device() fails Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 055/338] rapidio: rio: fix possible name leak in rio_register_mport() Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 056/338] ACPICA: Fix use-after-free in acpi_ut_copy_ipackage_to_ipackage() Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 057/338] uprobes/x86: Allow to probe a NOP instruction with 0x66 prefix Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 058/338] x86/xen: Fix memory leak in xen_init_lock_cpu() Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 059/338] platform/x86: mxm-wmi: fix memleak in mxm_wmi_call_mx[ds|mx]() Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 060/338] MIPS: BCM63xx: Add check for NULL for clk in clk_enable Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 061/338] fs: sysv: Fix sysv_nblocks() returns wrong value Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 062/338] rapidio: fix possible UAF when kfifo_alloc() fails Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 063/338] eventfd: change int to __u64 in eventfd_signal() ifndef CONFIG_EVENTFD Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 064/338] hfs: Fix OOB Write in hfs_asc2mac Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 065/338] rapidio: devices: fix missing put_device in mport_cdev_open Greg Kroah-Hartman
2023-01-16 15:48 ` [PATCH 4.14 066/338] wifi: ath9k: hif_usb: fix memory leak of urbs in ath9k_hif_usb_dealloc_tx_urbs() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 067/338] wifi: ath9k: hif_usb: Fix use-after-free in ath9k_hif_usb_reg_in_cb() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 068/338] media: i2c: ad5820: Fix error path Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 069/338] spi: Update reference to struct spi_controller Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 070/338] media: vivid: fix compose size exceed boundary Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 071/338] mtd: Fix device name leak when register device failed in add_mtd_device() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 072/338] media: camss: Clean up received buffers on failed start of streaming Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 073/338] drm/radeon: Add the missed acpi_put_table() to fix memory leak Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 074/338] ASoC: pxa: fix null-pointer dereference in filter() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 075/338] regulator: core: fix unbalanced of node refcount in regulator_dev_lookup() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 076/338] ima: Fix misuse of dereference of pointer in template_desc_init_fields() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 077/338] wifi: ath10k: Fix return value in ath10k_pci_init() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 078/338] mtd: lpddr2_nvm: Fix possible null-ptr-deref Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 079/338] Input: elants_i2c - properly handle the reset GPIO when power is off Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 080/338] media: solo6x10: fix possible memory leak in solo_sysfs_init() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 081/338] media: platform: exynos4-is: Fix error handling in fimc_md_init() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 082/338] HID: hid-sensor-custom: set fixed size for custom attributes Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 083/338] ALSA: seq: fix undefined behavior in bit shift for SNDRV_SEQ_FILTER_USE_EVENT Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 084/338] clk: rockchip: Fix memory leak in rockchip_clk_register_pll() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 085/338] mtd: maps: pxa2xx-flash: fix memory leak in probe Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 086/338] media: imon: fix a race condition in send_packet() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 087/338] pinctrl: pinconf-generic: add missing of_node_put() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 088/338] media: dvb-usb: az6027: fix null-ptr-deref in az6027_i2c_xfer() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 089/338] media: s5p-mfc: Add variant data for MFC v7 hardware for Exynos 3250 SoC Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 090/338] NFSv4.2: Fix a memory stomp in decode_attr_security_label Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 091/338] NFSv4: Fix a deadlock between nfs4_open_recover_helper() and delegreturn Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 092/338] ALSA: asihpi: fix missing pci_disable_device() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 093/338] drm/radeon: Fix PCI device refcount leak in radeon_atrm_get_bios() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 094/338] drm/amdgpu: Fix PCI device refcount leak in amdgpu_atrm_get_bios() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 095/338] ASoC: pcm512x: Fix PM disable depth imbalance in pcm512x_probe Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 096/338] bonding: uninitialized variable in bond_miimon_inspect() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 097/338] wifi: mac80211: fix memory leak in ieee80211_if_add() Greg Kroah-Hartman
2023-01-16 17:14   ` Johannes Berg
2023-01-17  8:40     ` Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 098/338] regulator: core: fix module refcount leak in set_supply() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 099/338] media: saa7164: fix missing pci_disable_device() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 100/338] ALSA: mts64: fix possible null-ptr-defer in snd_mts64_interrupt Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 101/338] SUNRPC: Fix missing release socket in rpc_sockname() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 102/338] NFSv4.x: Fail client initialisation if state manager thread cant run Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 103/338] mmc: moxart: fix return value check of mmc_add_host() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 104/338] mmc: mxcmmc: " Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 105/338] mmc: rtsx_usb_sdmmc: " Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 106/338] mmc: toshsd: " Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 107/338] mmc: vub300: " Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 108/338] mmc: wmt-sdmmc: " Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 109/338] mmc: via-sdmmc: " Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 110/338] mmc: wbsd: " Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 111/338] mmc: mmci: " Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 112/338] media: c8sectpfe: Add of_node_put() when breaking out of loop Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 113/338] media: coda: Add check for dcoda_iram_alloc Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 114/338] media: coda: Add check for kmalloc Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 115/338] clk: samsung: Fix memory leak in _samsung_clk_register_pll() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 116/338] wifi: rtl8xxxu: Add __packed to struct rtl8723bu_c2h Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 117/338] wifi: brcmfmac: Fix error return code in brcmf_sdio_download_firmware() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 118/338] blktrace: Fix output non-blktrace event when blk_classic option enabled Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 119/338] net: vmw_vsock: vmci: Check memcpy_from_msg() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 120/338] net: defxx: Fix missing err handling in dfx_init() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 121/338] drivers: net: qlcnic: Fix potential memory leak in qlcnic_sriov_init() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 122/338] ethernet: s2io: dont call dev_kfree_skb() under spin_lock_irqsave() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 123/338] net: farsync: Fix kmemleak when rmmods farsync Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 124/338] net/tunnel: wait until all sk_user_data reader finish before releasing the sock Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 125/338] net: apple: mace: dont call dev_kfree_skb() under spin_lock_irqsave() Greg Kroah-Hartman
2023-01-16 15:49 ` [PATCH 4.14 126/338] net: apple: bmac: " Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 127/338] net: emaclite: " Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 128/338] net: ethernet: dnet: " Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 129/338] hamradio: " Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 130/338] net: amd: lance: " Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 131/338] net: amd-xgbe: Check only the minimum speed for active/passive cables Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 132/338] net: lan9303: Fix read error execution path Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 133/338] ntb_netdev: Use dev_kfree_skb_any() in interrupt context Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 134/338] Bluetooth: btusb: dont call kfree_skb() under spin_lock_irqsave() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 135/338] Bluetooth: hci_qca: " Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 136/338] Bluetooth: hci_h5: " Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 137/338] Bluetooth: hci_bcsp: " Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 138/338] Bluetooth: hci_core: " Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 139/338] Bluetooth: RFCOMM: " Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 140/338] stmmac: fix potential division by 0 Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 141/338] apparmor: fix a memleak in multi_transaction_new() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 142/338] PCI: Check for alloc failure in pci_request_irq() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 143/338] RDMA/hfi: Decrease PCI device reference count in error path Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 144/338] RDMA/rxe: Fix NULL-ptr-deref in rxe_qp_do_cleanup() when socket create failed Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 145/338] scsi: hpsa: Fix error handling in hpsa_add_sas_host() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 146/338] scsi: hpsa: Fix possible memory leak in hpsa_add_sas_device() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 147/338] scsi: fcoe: Fix possible name leak when device_register() fails Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 148/338] scsi: ipr: Fix WARNING in ipr_init() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 149/338] scsi: fcoe: Fix transport not deattached when fcoe_if_init() fails Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 150/338] scsi: snic: Fix possible UAF in snic_tgt_create() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 151/338] RDMA/hfi1: Fix error return code in parse_platform_config() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 152/338] orangefs: Fix sysfs not cleanup when dev init failed Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 153/338] crypto: img-hash - Fix variable dereferenced before check hdev->req Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 154/338] hwrng: amd - Fix PCI device refcount leak Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 155/338] hwrng: geode " Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 156/338] IB/IPoIB: Fix queue count inconsistency for PKEY child interfaces Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 157/338] drivers: dio: fix possible memory leak in dio_init() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 158/338] class: fix possible memory leak in __class_register() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 159/338] vfio: platform: Do not pass return buffer to ACPI _RST method Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 160/338] uio: uio_dmem_genirq: Fix missing unlock in irq configuration Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 161/338] uio: uio_dmem_genirq: Fix deadlock between irq config and handling Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 162/338] usb: fotg210-udc: Fix ages old endianness issues Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 163/338] staging: vme_user: Fix possible UAF in tsi148_dma_list_add Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 164/338] serial: amba-pl011: avoid SBSA UART accessing DMACR register Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 165/338] serial: pch: Fix PCI device refcount leak in pch_request_dma() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 166/338] serial: sunsab: Fix error handling in sunsab_init() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 167/338] test_firmware: fix memory leak in test_firmware_init() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 168/338] misc: tifm: fix possible memory leak in tifm_7xx1_switch_media() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 169/338] misc: sgi-gru: fix use-after-free error in gru_set_context_option, gru_fault and gru_handle_user_call_os Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 170/338] cxl: fix possible null-ptr-deref in cxl_guest_init_afu|adapter() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 171/338] cxl: fix possible null-ptr-deref in cxl_pci_init_afu|adapter() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 172/338] drivers: mcb: fix resource leak in mcb_probe() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 173/338] mcb: mcb-parse: fix error handing in chameleon_parse_gdd() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 174/338] chardev: fix error handling in cdev_device_add() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 175/338] i2c: pxa-pci: fix missing pci_disable_device() on error in ce4100_i2c_probe Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 176/338] staging: rtl8192u: Fix use after free in ieee80211_rx() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 177/338] staging: rtl8192e: Fix potential use-after-free in rtllib_rx_Monitor() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 178/338] vme: Fix error not catched in fake_init() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 179/338] i2c: ismt: Fix an out-of-bounds bug in ismt_access() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 180/338] usb: storage: Add check for kcalloc Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 181/338] fbdev: ssd1307fb: Drop optional dependency Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 182/338] fbdev: pm2fb: fix missing pci_disable_device() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 183/338] fbdev: via: Fix error in via_core_init() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 184/338] fbdev: vermilion: decrease reference count in error path Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 185/338] fbdev: uvesafb: Fixes an error handling path in uvesafb_probe() Greg Kroah-Hartman
2023-01-16 15:50 ` [PATCH 4.14 186/338] HSI: omap_ssi_core: fix unbalanced pm_runtime_disable() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 187/338] HSI: omap_ssi_core: fix possible memory leak in ssi_probe() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 188/338] power: supply: fix residue sysfs file in error handle route of __power_supply_register() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 189/338] HSI: omap_ssi_core: Fix error handling in ssi_init() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 190/338] include/uapi/linux/swab: Fix potentially missing __always_inline Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 191/338] rtc: snvs: Allow a time difference on clock register read Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 192/338] iommu/amd: Fix pci device refcount leak in ppr_notifier() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 193/338] iommu/fsl_pamu: Fix resource leak in fsl_pamu_probe() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 194/338] macintosh: fix possible memory leak in macio_add_one_device() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 195/338] macintosh/macio-adb: check the return value of ioremap() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 196/338] powerpc/52xx: Fix a resource leak in an error handling path Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 197/338] cxl: Fix refcount leak in cxl_calc_capp_routing Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 198/338] powerpc/xive: add missing iounmap() in error path in xive_spapr_populate_irq_data() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 199/338] powerpc/perf: callchain validate kernel stack pointer bounds Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 200/338] powerpc/83xx/mpc832x_rdb: call platform_device_put() in error case in of_fsl_spi_probe() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 201/338] powerpc/hv-gpci: Fix hv_gpci event list Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 202/338] selftests/powerpc: Fix resource leaks Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 203/338] rtc: st-lpc: Add missing clk_disable_unprepare in st_rtc_probe() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 204/338] nfsd: under NFSv4.1, fix double svc_xprt_put on rpc_create failure Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 205/338] mISDN: hfcsusb: dont call dev_kfree_skb/kfree_skb() under spin_lock_irqsave() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 206/338] mISDN: hfcpci: " Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 207/338] mISDN: hfcmulti: " Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 208/338] nfc: pn533: Clear nfc_target before being used Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 209/338] r6040: Fix kmemleak in probe and remove Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 210/338] openvswitch: Fix flow lookup to use unmasked key Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 211/338] skbuff: Account for tail adjustment during pull operations Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 212/338] net_sched: reject TCF_EM_SIMPLE case for complex ematch module Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 213/338] myri10ge: Fix an error handling path in myri10ge_probe() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 214/338] net: stream: purge sk_error_queue in sk_stream_kill_queues() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 215/338] binfmt_misc: fix shift-out-of-bounds in check_special_flags Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 216/338] fs: jfs: fix shift-out-of-bounds in dbAllocAG Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 217/338] udf: Avoid double brelse() in udf_rename() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 218/338] fs: jfs: fix shift-out-of-bounds in dbDiscardAG Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 219/338] ACPICA: Fix error code path in acpi_ds_call_control_method() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 220/338] nilfs2: fix shift-out-of-bounds/overflow in nilfs_sb2_bad_offset() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 221/338] acct: fix potential integer overflow in encode_comp_t() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 222/338] hfs: fix OOB Read in __hfs_brec_find Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 223/338] wifi: ath9k: verify the expected usb_endpoints are present Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 224/338] wifi: ar5523: Fix use-after-free on ar5523_cmd() timed out Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 225/338] ASoC: codecs: rt298: Add quirk for KBL-R RVP platform Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 226/338] ipmi: fix memleak when unload ipmi driver Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 227/338] bpf: make sure skb->len != 0 when redirecting to a tunneling device Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 228/338] net: ethernet: ti: Fix return type of netcp_ndo_start_xmit() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 229/338] hamradio: baycom_epp: Fix return type of baycom_send_packet() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 230/338] wifi: brcmfmac: Fix potential shift-out-of-bounds in brcmf_fw_alloc_request() Greg Kroah-Hartman
2023-01-18 16:21   ` Nathan Chancellor
2023-01-22 15:07     ` Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 231/338] igb: Do not free q_vector unless new one was allocated Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 232/338] s390/ctcm: Fix return type of ctc{mp,}m_tx() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 233/338] s390/netiucv: Fix return type of netiucv_tx() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 234/338] s390/lcs: Fix return type of lcs_start_xmit() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 235/338] drm/sti: Use drm_mode_copy() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 236/338] md/raid1: stop mdx_raid1 thread when raid1 array run failed Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 237/338] mrp: introduce active flags to prevent UAF when applicant uninit Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 238/338] ppp: associate skb with a device at tx Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 239/338] media: dvb-frontends: fix leak of memory fw Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 240/338] media: dvbdev: adopts refcnt to avoid UAF Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 241/338] media: dvb-usb: fix memory leak in dvb_usb_adapter_init() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 242/338] blk-mq: fix possible memleak when register hctx failed Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 243/338] mmc: f-sdh30: Add quirks for broken timeout clock capability Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 244/338] media: si470x: Fix use-after-free in si470x_int_in_callback() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 245/338] clk: st: Fix memory leak in st_of_quadfs_setup() Greg Kroah-Hartman
2023-01-16 15:51 ` [PATCH 4.14 246/338] drm/fsl-dcu: Fix return type of fsl_dcu_drm_connector_mode_valid() Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 247/338] drm/sti: Fix return type of sti_{dvo,hda,hdmi}_connector_mode_valid() Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 248/338] orangefs: Fix kmemleak in orangefs_prepare_debugfs_help_string() Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 249/338] ASoC: mediatek: mt8173-rt5650-rt5514: fix refcount leak in mt8173_rt5650_rt5514_dev_probe() Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 250/338] ASoC: rockchip: pdm: Add missing clk_disable_unprepare() in rockchip_pdm_runtime_resume() Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 251/338] ASoC: wm8994: Fix potential deadlock Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 252/338] ASoC: rockchip: spdif: Add missing clk_disable_unprepare() in rk_spdif_runtime_resume() Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 253/338] ASoC: rt5670: Remove unbalanced pm_runtime_put() Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 254/338] pstore: Switch pmsg_lock to an rt_mutex to avoid priority inversion Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 255/338] pstore: Make sure CONFIG_PSTORE_PMSG selects CONFIG_RT_MUTEXES Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 256/338] usb: dwc3: core: defer probe on ulpi_read_id timeout Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 257/338] HID: wacom: Ensure bootloader PID is usable in hidraw mode Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 258/338] reiserfs: Add missing calls to reiserfs_security_free() Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 259/338] iio: adc: ad_sigma_delta: do not use internal iio_dev lock Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 260/338] gcov: add support for checksum field Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 261/338] media: dvbdev: fix refcnt bug Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 262/338] powerpc/rtas: avoid device tree lookups in rtas_os_term() Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 263/338] powerpc/rtas: avoid scheduling " Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 264/338] HID: plantronics: Additional PIDs for double volume key presses quirk Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 265/338] hfsplus: fix bug causing custom uid and gid being unable to be assigned with mount Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 266/338] ALSA: line6: correct midi status byte when receiving data from podxt Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 267/338] ALSA: line6: fix stack overflow in line6_midi_transmit Greg Kroah-Hartman
2023-01-16 15:52 ` Greg Kroah-Hartman [this message]
2023-01-16 15:52 ` [PATCH 4.14 269/338] md: fix a crash in mempool_free Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 270/338] mmc: vub300: fix warning - do not call blocking ops when !TASK_RUNNING Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 271/338] tpm: tpm_crb: Add the missed acpi_put_table() to fix memory leak Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 272/338] tpm: tpm_tis: " Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 273/338] media: stv0288: use explicitly signed char Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 274/338] ktest.pl minconfig: Unset configs instead of just removing them Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 275/338] ARM: ux500: do not directly dereference __iomem Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 276/338] selftests: Use optional USERCFLAGS and USERLDFLAGS Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 277/338] dm cache: Fix ABBA deadlock between shrink_slab and dm_cache_metadata_abort Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 278/338] dm thin: Use last transactions pmd->root when commit failed Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 279/338] dm thin: Fix UAF in run_timer_softirq() Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 280/338] dm cache: Fix UAF in destroy() Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 281/338] dm cache: set needs_check flag after aborting metadata Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 282/338] x86/microcode/intel: Do not retry microcode reloading on the APs Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 283/338] tracing: Fix infinite loop in tracing_read_pipe on overflowed print_trace_line Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 284/338] ARM: 9256/1: NWFPE: avoid compiler-generated __aeabi_uldivmod Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 285/338] media: dvb-core: Fix double free in dvb_register_device() Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 286/338] media: dvb-core: Fix UAF due to refcount races at releasing Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 287/338] cifs: fix confusing debug message Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 288/338] ima: Fix a potential NULL pointer access in ima_restore_measurement_list Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 289/338] PCI: Fix pci_device_is_present() for VFs by checking PF Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 290/338] PCI/sysfs: Fix double free in error path Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 291/338] crypto: n2 - add missing hash statesize Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 292/338] iommu/amd: Fix ivrs_acpihid cmdline parsing code Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 293/338] parisc: led: Fix potential null-ptr-deref in start_task() Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 294/338] device_cgroup: Roll back to original exceptions after copy failure Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 295/338] drm/connector: send hotplug uevent on connector cleanup Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 296/338] drm/vmwgfx: Validate the box size for the snooped cursor Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 297/338] ext4: add inode table check in __ext4_get_inode_loc to aovid possible infinite loop Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 298/338] ext4: fix undefined behavior in bit shift for ext4_check_flag_values Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 299/338] ext4: fix bug_on in __es_tree_search caused by bad boot loader inode Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 300/338] ext4: init quota for old.inode in ext4_rename Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 301/338] ext4: fix error code return to user-space in ext4_get_branch() Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 302/338] ext4: avoid BUG_ON when creating xattrs Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 303/338] ext4: fix inode leak in ext4_xattr_inode_create() on an error path Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 304/338] ext4: initialize quota before expanding inode in setproject ioctl Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 305/338] ext4: avoid unaccounted block allocation when expanding inode Greg Kroah-Hartman
2023-01-16 15:52 ` [PATCH 4.14 306/338] ext4: allocate extended attribute value in vmalloc area Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 307/338] SUNRPC: ensure the matching upcall is in-flight upon downcall Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 308/338] bpf: pull before calling skb_postpull_rcsum() Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 309/338] qlcnic: prevent ->dcb use-after-free on qlcnic_dcb_enable() failure Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 310/338] nfc: Fix potential resource leaks Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 311/338] net: amd-xgbe: add missed tasklet_kill Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 312/338] net: phy: xgmiitorgmii: Fix refcount leak in xgmiitorgmii_probe Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 313/338] net: sched: atm: dont intepret cls results when asked to drop Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 314/338] usb: rndis_host: Secure rndis_query check against int overflow Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 315/338] caif: fix memory leak in cfctrl_linkup_request() Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 316/338] udf: Fix extension of the last extent in the file Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 317/338] x86/bugs: Flush IBP in ib_prctl_set() Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 318/338] nfsd: fix handling of readdir in v4root vs. mount upcall timeout Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 319/338] hfs/hfsplus: use WARN_ON for sanity check Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 320/338] hfs/hfsplus: avoid WARN_ON() for sanity check, use proper error handling Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 321/338] parisc: Align parisc MADV_XXX constants with all other architectures Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 322/338] driver core: Fix bus_type.match() error handling in __driver_attach() Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 323/338] ravb: Fix "failed to switch device to config mode" message during unbind Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 324/338] net: sched: disallow noqueue for qdisc classes Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 325/338] docs: Fix the docs build with Sphinx 6.0 Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 326/338] perf auxtrace: Fix address filter duplicate symbol selection Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 327/338] s390/percpu: add READ_ONCE() to arch_this_cpu_to_op_simple() Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 328/338] net/ulp: prevent ULP without clone op from entering the LISTEN status Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 329/338] ALSA: pcm: Move rwsem lock inside snd_ctl_elem_read to prevent UAF Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 330/338] platform/x86: sony-laptop: Dont turn off 0x153 keyboard backlight during probe Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 331/338] ipv6: raw: Deduct extension header length in rawv6_push_pending_frames Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 332/338] netfilter: ipset: Fix overflow before widen in the bitmap_ip_create() function Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 333/338] x86/boot: Avoid using Intel mnemonics in AT&T syntax asm Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 334/338] EDAC/device: Fix period calculation in edac_device_reset_delay_period() Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 335/338] regulator: da9211: Use irq handler when ready Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 336/338] hvc/xen: lock console list traversal Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 337/338] nfc: pn533: Wait for out_urbs completion in pn533_usb_send_frame() Greg Kroah-Hartman
2023-01-16 15:53 ` [PATCH 4.14 338/338] Revert "usb: ulpi: defer ulpi_register on ulpi_read_id timeout" Greg Kroah-Hartman
2023-01-17 11:11 ` [PATCH 4.14 000/338] 4.14.303-rc1 review Jon Hunter
2023-01-17 11:36 ` Naresh Kamboju
2023-01-18  1:37 ` Guenter Roeck

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=20230116154832.781950485@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=brauner@kernel.org \
    --cc=ditang.c@gmail.com \
    --cc=patches@lists.linux.dev \
    --cc=sforshee@kernel.org \
    --cc=stable@vger.kernel.org \
    /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).