All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] kernfs: fix potential null-ptr-deref in kernfs_path_from_node_locked()
@ 2022-11-23  2:04 Zhen Lei
  2022-11-23 16:55 ` Tejun Heo
  0 siblings, 1 reply; 9+ messages in thread
From: Zhen Lei @ 2022-11-23  2:04 UTC (permalink / raw)
  To: Greg Kroah-Hartman, Tejun Heo, linux-kernel; +Cc: Zhen Lei

Ensure that the 'buf' is not empty before strlcpy() uses it.

Commit bbe70e4e4211 ("fs: kernfs: Fix possible null-pointer dereferences
in kernfs_path_from_node_locked()") first noticed this, but it didn't
fix it completely.

Fixes: 9f6df573a404 ("kernfs: Add API to generate relative kernfs path")
Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
---
 fs/kernfs/dir.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/fs/kernfs/dir.c b/fs/kernfs/dir.c
index f33b3baad07cb36..b2422265c86edf2 100644
--- a/fs/kernfs/dir.c
+++ b/fs/kernfs/dir.c
@@ -140,6 +140,9 @@ static int kernfs_path_from_node_locked(struct kernfs_node *kn_to,
 	size_t depth_from, depth_to, len = 0;
 	int i, j;
 
+	if (!buf)
+		return -EINVAL;
+
 	if (!kn_to)
 		return strlcpy(buf, "(null)", buflen);
 
@@ -149,9 +152,6 @@ static int kernfs_path_from_node_locked(struct kernfs_node *kn_to,
 	if (kn_from == kn_to)
 		return strlcpy(buf, "/", buflen);
 
-	if (!buf)
-		return -EINVAL;
-
 	common = kernfs_common_ancestor(kn_from, kn_to);
 	if (WARN_ON(!common))
 		return -EINVAL;
-- 
2.25.1


^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [PATCH] kernfs: fix potential null-ptr-deref in kernfs_path_from_node_locked()
  2022-11-23  2:04 [PATCH] kernfs: fix potential null-ptr-deref in kernfs_path_from_node_locked() Zhen Lei
@ 2022-11-23 16:55 ` Tejun Heo
  2022-11-24  2:24   ` Leizhen (ThunderTown)
  0 siblings, 1 reply; 9+ messages in thread
From: Tejun Heo @ 2022-11-23 16:55 UTC (permalink / raw)
  To: Zhen Lei; +Cc: Greg Kroah-Hartman, linux-kernel

On Wed, Nov 23, 2022 at 10:04:19AM +0800, Zhen Lei wrote:
> Ensure that the 'buf' is not empty before strlcpy() uses it.
> 
> Commit bbe70e4e4211 ("fs: kernfs: Fix possible null-pointer dereferences
> in kernfs_path_from_node_locked()") first noticed this, but it didn't
> fix it completely.
> 
> Fixes: 9f6df573a404 ("kernfs: Add API to generate relative kernfs path")
> Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>

I think the right thing to do is removing that if. It makes no sense to call
that function with NULL buf and the fact that nobody reported crashes on
NULL buf indicates that we in fact never do.

Thanks.

-- 
tejun

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] kernfs: fix potential null-ptr-deref in kernfs_path_from_node_locked()
  2022-11-23 16:55 ` Tejun Heo
@ 2022-11-24  2:24   ` Leizhen (ThunderTown)
  2022-11-24  2:28     ` Leizhen (ThunderTown)
  0 siblings, 1 reply; 9+ messages in thread
From: Leizhen (ThunderTown) @ 2022-11-24  2:24 UTC (permalink / raw)
  To: Tejun Heo; +Cc: Greg Kroah-Hartman, linux-kernel



On 2022/11/24 0:55, Tejun Heo wrote:
> On Wed, Nov 23, 2022 at 10:04:19AM +0800, Zhen Lei wrote:
>> Ensure that the 'buf' is not empty before strlcpy() uses it.
>>
>> Commit bbe70e4e4211 ("fs: kernfs: Fix possible null-pointer dereferences
>> in kernfs_path_from_node_locked()") first noticed this, but it didn't
>> fix it completely.
>>
>> Fixes: 9f6df573a404 ("kernfs: Add API to generate relative kernfs path")
>> Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
> 
> I think the right thing to do is removing that if. It makes no sense to call
> that function with NULL buf and the fact that nobody reported crashes on
> NULL buf indicates that we in fact never do.

OK.

How about I remove "buf[0] = '\0';" too? It seems to be a useless operation.
When 'kn_from' and 'kn_to' have a common ancestor, there must be a path from
'kn_from' to 'kn_to', and strlcpy() always fills in the terminator correctly,
even if the buf is too small to save the first path node.

static void test(void)
{
        char buf[4];
        int i, n, buflen;

        buflen = 1;
        n = strlcpy(buf, "string", buflen);
        for (i = 0; i < buflen; i++)
                printk("%d: %02x\n", i, buf[i]);
        printk("n=%d\n\n", n);

        buflen = sizeof(buf);
        n = strlcpy(buf, "string", buflen);
        for (i = 0; i < buflen; i++)
                printk("%d: %02x\n", i, buf[i]);
        printk("n=%d\n", n);
}

Output:
[   33.691497] 0: 00
[   33.691569] n=6

[   33.691595] 0: 73
[   33.691622] 1: 74
[   33.691630] 2: 72
[   33.691637] 3: 00
[   33.691650] n=6

> 
> Thanks.
> 

-- 
Regards,
  Zhen Lei

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] kernfs: fix potential null-ptr-deref in kernfs_path_from_node_locked()
  2022-11-24  2:24   ` Leizhen (ThunderTown)
@ 2022-11-24  2:28     ` Leizhen (ThunderTown)
  2022-11-24  2:52       ` Leizhen (ThunderTown)
  0 siblings, 1 reply; 9+ messages in thread
From: Leizhen (ThunderTown) @ 2022-11-24  2:28 UTC (permalink / raw)
  To: Tejun Heo; +Cc: Greg Kroah-Hartman, linux-kernel



On 2022/11/24 10:24, Leizhen (ThunderTown) wrote:
> 
> 
> On 2022/11/24 0:55, Tejun Heo wrote:
>> On Wed, Nov 23, 2022 at 10:04:19AM +0800, Zhen Lei wrote:
>>> Ensure that the 'buf' is not empty before strlcpy() uses it.
>>>
>>> Commit bbe70e4e4211 ("fs: kernfs: Fix possible null-pointer dereferences
>>> in kernfs_path_from_node_locked()") first noticed this, but it didn't
>>> fix it completely.
>>>
>>> Fixes: 9f6df573a404 ("kernfs: Add API to generate relative kernfs path")
>>> Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
>>
>> I think the right thing to do is removing that if. It makes no sense to call
>> that function with NULL buf and the fact that nobody reported crashes on
>> NULL buf indicates that we in fact never do.
> 
> OK.
> 
> How about I remove "buf[0] = '\0';" too? It seems to be a useless operation.
> When 'kn_from' and 'kn_to' have a common ancestor, there must be a path from
> 'kn_from' to 'kn_to', and strlcpy() always fills in the terminator correctly,
> even if the buf is too small to save the first path node.

Sorry, I misanalyzed. The length used by "len < buflen ? buflen - len : 0" may
be zero.

> 
> static void test(void)
> {
>         char buf[4];
>         int i, n, buflen;
> 
>         buflen = 1;
>         n = strlcpy(buf, "string", buflen);
>         for (i = 0; i < buflen; i++)
>                 printk("%d: %02x\n", i, buf[i]);
>         printk("n=%d\n\n", n);
> 
>         buflen = sizeof(buf);
>         n = strlcpy(buf, "string", buflen);
>         for (i = 0; i < buflen; i++)
>                 printk("%d: %02x\n", i, buf[i]);
>         printk("n=%d\n", n);
> }
> 
> Output:
> [   33.691497] 0: 00
> [   33.691569] n=6
> 
> [   33.691595] 0: 73
> [   33.691622] 1: 74
> [   33.691630] 2: 72
> [   33.691637] 3: 00
> [   33.691650] n=6
> 
>>
>> Thanks.
>>
> 

-- 
Regards,
  Zhen Lei

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] kernfs: fix potential null-ptr-deref in kernfs_path_from_node_locked()
  2022-11-24  2:28     ` Leizhen (ThunderTown)
@ 2022-11-24  2:52       ` Leizhen (ThunderTown)
  2022-11-26  9:49         ` Leizhen (ThunderTown)
  0 siblings, 1 reply; 9+ messages in thread
From: Leizhen (ThunderTown) @ 2022-11-24  2:52 UTC (permalink / raw)
  To: Tejun Heo; +Cc: Greg Kroah-Hartman, linux-kernel



On 2022/11/24 10:28, Leizhen (ThunderTown) wrote:
> 
> 
> On 2022/11/24 10:24, Leizhen (ThunderTown) wrote:
>>
>>
>> On 2022/11/24 0:55, Tejun Heo wrote:
>>> On Wed, Nov 23, 2022 at 10:04:19AM +0800, Zhen Lei wrote:
>>>> Ensure that the 'buf' is not empty before strlcpy() uses it.
>>>>
>>>> Commit bbe70e4e4211 ("fs: kernfs: Fix possible null-pointer dereferences
>>>> in kernfs_path_from_node_locked()") first noticed this, but it didn't
>>>> fix it completely.
>>>>
>>>> Fixes: 9f6df573a404 ("kernfs: Add API to generate relative kernfs path")
>>>> Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
>>>
>>> I think the right thing to do is removing that if. It makes no sense to call
>>> that function with NULL buf and the fact that nobody reported crashes on
>>> NULL buf indicates that we in fact never do.
>>
>> OK.
>>
>> How about I remove "buf[0] = '\0';" too? It seems to be a useless operation.
>> When 'kn_from' and 'kn_to' have a common ancestor, there must be a path from
>> 'kn_from' to 'kn_to', and strlcpy() always fills in the terminator correctly,
>> even if the buf is too small to save the first path node.
> 
> Sorry, I misanalyzed. The length used by "len < buflen ? buflen - len : 0" may
> be zero.

Ah, my brain is unstable today. The initial value of len is 0. So "buf[0] = '\0';"
can still be safely removed.

> 
>>
>> static void test(void)
>> {
>>         char buf[4];
>>         int i, n, buflen;
>>
>>         buflen = 1;
>>         n = strlcpy(buf, "string", buflen);
>>         for (i = 0; i < buflen; i++)
>>                 printk("%d: %02x\n", i, buf[i]);
>>         printk("n=%d\n\n", n);
>>
>>         buflen = sizeof(buf);
>>         n = strlcpy(buf, "string", buflen);
>>         for (i = 0; i < buflen; i++)
>>                 printk("%d: %02x\n", i, buf[i]);
>>         printk("n=%d\n", n);
>> }
>>
>> Output:
>> [   33.691497] 0: 00
>> [   33.691569] n=6
>>
>> [   33.691595] 0: 73
>> [   33.691622] 1: 74
>> [   33.691630] 2: 72
>> [   33.691637] 3: 00
>> [   33.691650] n=6
>>
>>>
>>> Thanks.
>>>
>>
> 

-- 
Regards,
  Zhen Lei

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] kernfs: fix potential null-ptr-deref in kernfs_path_from_node_locked()
  2022-11-24  2:52       ` Leizhen (ThunderTown)
@ 2022-11-26  9:49         ` Leizhen (ThunderTown)
  2022-11-26 10:25           ` Greg Kroah-Hartman
  2022-11-26 10:46           ` Leizhen (ThunderTown)
  0 siblings, 2 replies; 9+ messages in thread
From: Leizhen (ThunderTown) @ 2022-11-26  9:49 UTC (permalink / raw)
  To: Tejun Heo; +Cc: Greg Kroah-Hartman, linux-kernel



On 2022/11/24 10:52, Leizhen (ThunderTown) wrote:
> 
> 
> On 2022/11/24 10:28, Leizhen (ThunderTown) wrote:
>>
>>
>> On 2022/11/24 10:24, Leizhen (ThunderTown) wrote:
>>>
>>>
>>> On 2022/11/24 0:55, Tejun Heo wrote:
>>>> On Wed, Nov 23, 2022 at 10:04:19AM +0800, Zhen Lei wrote:
>>>>> Ensure that the 'buf' is not empty before strlcpy() uses it.
>>>>>
>>>>> Commit bbe70e4e4211 ("fs: kernfs: Fix possible null-pointer dereferences
>>>>> in kernfs_path_from_node_locked()") first noticed this, but it didn't
>>>>> fix it completely.
>>>>>
>>>>> Fixes: 9f6df573a404 ("kernfs: Add API to generate relative kernfs path")
>>>>> Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
>>>>
>>>> I think the right thing to do is removing that if. It makes no sense to call
>>>> that function with NULL buf and the fact that nobody reported crashes on
>>>> NULL buf indicates that we in fact never do.

kernfs_path_from_node
    -->kernfs_path_from_node_locked

EXPORT_SYMBOL_GPL(kernfs_path_from_node)

I've rethought it. The export APIs need to do null pointer check, right?

>>>
>>> OK.
>>>
>>> How about I remove "buf[0] = '\0';" too? It seems to be a useless operation.
>>> When 'kn_from' and 'kn_to' have a common ancestor, there must be a path from
>>> 'kn_from' to 'kn_to', and strlcpy() always fills in the terminator correctly,
>>> even if the buf is too small to save the first path node.
>>
>> Sorry, I misanalyzed. The length used by "len < buflen ? buflen - len : 0" may
>> be zero.
> 
> Ah, my brain is unstable today. The initial value of len is 0. So "buf[0] = '\0';"
> can still be safely removed.
> 
>>
>>>
>>> static void test(void)
>>> {
>>>         char buf[4];
>>>         int i, n, buflen;
>>>
>>>         buflen = 1;
>>>         n = strlcpy(buf, "string", buflen);
>>>         for (i = 0; i < buflen; i++)
>>>                 printk("%d: %02x\n", i, buf[i]);
>>>         printk("n=%d\n\n", n);
>>>
>>>         buflen = sizeof(buf);
>>>         n = strlcpy(buf, "string", buflen);
>>>         for (i = 0; i < buflen; i++)
>>>                 printk("%d: %02x\n", i, buf[i]);
>>>         printk("n=%d\n", n);
>>> }
>>>
>>> Output:
>>> [   33.691497] 0: 00
>>> [   33.691569] n=6
>>>
>>> [   33.691595] 0: 73
>>> [   33.691622] 1: 74
>>> [   33.691630] 2: 72
>>> [   33.691637] 3: 00
>>> [   33.691650] n=6
>>>
>>>>
>>>> Thanks.
>>>>
>>>
>>
> 

-- 
Regards,
  Zhen Lei

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] kernfs: fix potential null-ptr-deref in kernfs_path_from_node_locked()
  2022-11-26  9:49         ` Leizhen (ThunderTown)
@ 2022-11-26 10:25           ` Greg Kroah-Hartman
  2022-11-28  1:15             ` Leizhen (ThunderTown)
  2022-11-26 10:46           ` Leizhen (ThunderTown)
  1 sibling, 1 reply; 9+ messages in thread
From: Greg Kroah-Hartman @ 2022-11-26 10:25 UTC (permalink / raw)
  To: Leizhen (ThunderTown); +Cc: Tejun Heo, linux-kernel

On Sat, Nov 26, 2022 at 05:49:50PM +0800, Leizhen (ThunderTown) wrote:
> 
> 
> On 2022/11/24 10:52, Leizhen (ThunderTown) wrote:
> > 
> > 
> > On 2022/11/24 10:28, Leizhen (ThunderTown) wrote:
> >>
> >>
> >> On 2022/11/24 10:24, Leizhen (ThunderTown) wrote:
> >>>
> >>>
> >>> On 2022/11/24 0:55, Tejun Heo wrote:
> >>>> On Wed, Nov 23, 2022 at 10:04:19AM +0800, Zhen Lei wrote:
> >>>>> Ensure that the 'buf' is not empty before strlcpy() uses it.
> >>>>>
> >>>>> Commit bbe70e4e4211 ("fs: kernfs: Fix possible null-pointer dereferences
> >>>>> in kernfs_path_from_node_locked()") first noticed this, but it didn't
> >>>>> fix it completely.
> >>>>>
> >>>>> Fixes: 9f6df573a404 ("kernfs: Add API to generate relative kernfs path")
> >>>>> Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
> >>>>
> >>>> I think the right thing to do is removing that if. It makes no sense to call
> >>>> that function with NULL buf and the fact that nobody reported crashes on
> >>>> NULL buf indicates that we in fact never do.
> 
> kernfs_path_from_node
>     -->kernfs_path_from_node_locked
> 
> EXPORT_SYMBOL_GPL(kernfs_path_from_node)
> 
> I've rethought it. The export APIs need to do null pointer check, right?

No, callers should get this right.  Are there any in-tree ones that do
not?

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] kernfs: fix potential null-ptr-deref in kernfs_path_from_node_locked()
  2022-11-26  9:49         ` Leizhen (ThunderTown)
  2022-11-26 10:25           ` Greg Kroah-Hartman
@ 2022-11-26 10:46           ` Leizhen (ThunderTown)
  1 sibling, 0 replies; 9+ messages in thread
From: Leizhen (ThunderTown) @ 2022-11-26 10:46 UTC (permalink / raw)
  To: Tejun Heo; +Cc: Greg Kroah-Hartman, linux-kernel



On 2022/11/26 17:49, Leizhen (ThunderTown) wrote:
> 
> 
> On 2022/11/24 10:52, Leizhen (ThunderTown) wrote:
>>
>>
>> On 2022/11/24 10:28, Leizhen (ThunderTown) wrote:
>>>
>>>
>>> On 2022/11/24 10:24, Leizhen (ThunderTown) wrote:
>>>>
>>>>
>>>> On 2022/11/24 0:55, Tejun Heo wrote:
>>>>> On Wed, Nov 23, 2022 at 10:04:19AM +0800, Zhen Lei wrote:
>>>>>> Ensure that the 'buf' is not empty before strlcpy() uses it.
>>>>>>
>>>>>> Commit bbe70e4e4211 ("fs: kernfs: Fix possible null-pointer dereferences
>>>>>> in kernfs_path_from_node_locked()") first noticed this, but it didn't
>>>>>> fix it completely.
>>>>>>
>>>>>> Fixes: 9f6df573a404 ("kernfs: Add API to generate relative kernfs path")
>>>>>> Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
>>>>>
>>>>> I think the right thing to do is removing that if. It makes no sense to call
>>>>> that function with NULL buf and the fact that nobody reported crashes on
>>>>> NULL buf indicates that we in fact never do.
> 
> kernfs_path_from_node
>     -->kernfs_path_from_node_locked
> 
> EXPORT_SYMBOL_GPL(kernfs_path_from_node)
> 
> I've rethought it. The export APIs need to do null pointer check, right?

Sorry,I looked at some of the other functions and they didn't check either.

> 
>>>>
>>>> OK.
>>>>
>>>> How about I remove "buf[0] = '\0';" too? It seems to be a useless operation.
>>>> When 'kn_from' and 'kn_to' have a common ancestor, there must be a path from
>>>> 'kn_from' to 'kn_to', and strlcpy() always fills in the terminator correctly,
>>>> even if the buf is too small to save the first path node.
>>>
>>> Sorry, I misanalyzed. The length used by "len < buflen ? buflen - len : 0" may
>>> be zero.
>>
>> Ah, my brain is unstable today. The initial value of len is 0. So "buf[0] = '\0';"
>> can still be safely removed.
>>
>>>
>>>>
>>>> static void test(void)
>>>> {
>>>>         char buf[4];
>>>>         int i, n, buflen;
>>>>
>>>>         buflen = 1;
>>>>         n = strlcpy(buf, "string", buflen);
>>>>         for (i = 0; i < buflen; i++)
>>>>                 printk("%d: %02x\n", i, buf[i]);
>>>>         printk("n=%d\n\n", n);
>>>>
>>>>         buflen = sizeof(buf);
>>>>         n = strlcpy(buf, "string", buflen);
>>>>         for (i = 0; i < buflen; i++)
>>>>                 printk("%d: %02x\n", i, buf[i]);
>>>>         printk("n=%d\n", n);
>>>> }
>>>>
>>>> Output:
>>>> [   33.691497] 0: 00
>>>> [   33.691569] n=6
>>>>
>>>> [   33.691595] 0: 73
>>>> [   33.691622] 1: 74
>>>> [   33.691630] 2: 72
>>>> [   33.691637] 3: 00
>>>> [   33.691650] n=6
>>>>
>>>>>
>>>>> Thanks.
>>>>>
>>>>
>>>
>>
> 

-- 
Regards,
  Zhen Lei

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] kernfs: fix potential null-ptr-deref in kernfs_path_from_node_locked()
  2022-11-26 10:25           ` Greg Kroah-Hartman
@ 2022-11-28  1:15             ` Leizhen (ThunderTown)
  0 siblings, 0 replies; 9+ messages in thread
From: Leizhen (ThunderTown) @ 2022-11-28  1:15 UTC (permalink / raw)
  To: Greg Kroah-Hartman; +Cc: Tejun Heo, linux-kernel



On 2022/11/26 18:25, Greg Kroah-Hartman wrote:
> On Sat, Nov 26, 2022 at 05:49:50PM +0800, Leizhen (ThunderTown) wrote:
>>
>>
>> On 2022/11/24 10:52, Leizhen (ThunderTown) wrote:
>>>
>>>
>>> On 2022/11/24 10:28, Leizhen (ThunderTown) wrote:
>>>>
>>>>
>>>> On 2022/11/24 10:24, Leizhen (ThunderTown) wrote:
>>>>>
>>>>>
>>>>> On 2022/11/24 0:55, Tejun Heo wrote:
>>>>>> On Wed, Nov 23, 2022 at 10:04:19AM +0800, Zhen Lei wrote:
>>>>>>> Ensure that the 'buf' is not empty before strlcpy() uses it.
>>>>>>>
>>>>>>> Commit bbe70e4e4211 ("fs: kernfs: Fix possible null-pointer dereferences
>>>>>>> in kernfs_path_from_node_locked()") first noticed this, but it didn't
>>>>>>> fix it completely.
>>>>>>>
>>>>>>> Fixes: 9f6df573a404 ("kernfs: Add API to generate relative kernfs path")
>>>>>>> Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com>
>>>>>>
>>>>>> I think the right thing to do is removing that if. It makes no sense to call
>>>>>> that function with NULL buf and the fact that nobody reported crashes on
>>>>>> NULL buf indicates that we in fact never do.
>>
>> kernfs_path_from_node
>>     -->kernfs_path_from_node_locked
>>
>> EXPORT_SYMBOL_GPL(kernfs_path_from_node)
>>
>> I've rethought it. The export APIs need to do null pointer check, right?
> 
> No, callers should get this right.  Are there any in-tree ones that do
> not?

Thanks. I got it.

> 
> thanks,
> 
> greg k-h
> .
> 

-- 
Regards,
  Zhen Lei

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2022-11-28  1:15 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-23  2:04 [PATCH] kernfs: fix potential null-ptr-deref in kernfs_path_from_node_locked() Zhen Lei
2022-11-23 16:55 ` Tejun Heo
2022-11-24  2:24   ` Leizhen (ThunderTown)
2022-11-24  2:28     ` Leizhen (ThunderTown)
2022-11-24  2:52       ` Leizhen (ThunderTown)
2022-11-26  9:49         ` Leizhen (ThunderTown)
2022-11-26 10:25           ` Greg Kroah-Hartman
2022-11-28  1:15             ` Leizhen (ThunderTown)
2022-11-26 10:46           ` Leizhen (ThunderTown)

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.