[Drbd-dev] [PATCH] check head in page_chain_del for every loop
Ming Li
tolimit1019 at gmail.com
Thu Apr 15 08:36:46 CEST 2021
From: Ming Li <tolimit1019 at gmail.com>
there will be crash when we get a NULL head in loop.
Signed-off-by: Ming Li <tolimit1019 at gmail.com>
---
drbd/drbd_receiver.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drbd/drbd_receiver.c b/drbd/drbd_receiver.c
index f127a235..28fb2e06 100644
--- a/drbd/drbd_receiver.c
+++ b/drbd/drbd_receiver.c
@@ -280,12 +280,12 @@ static struct page *page_chain_del(struct page **head, int count)
BUG_ON(!head);
page = READ_ONCE(*head);
- if (!page)
- return NULL;
do {
n = count;
rv_head = page;
+ if (!page)
+ return NULL;
while (true) {
tmp = page_chain_next(page);
if (--n == 0)
--
2.24.3 (Apple Git-128)
More information about the drbd-dev
mailing list