hc
2023-12-09 b22da3d8526a935aa31e086e63f60ff3246cb61c
kernel/lib/sg_split.c
....@@ -1,10 +1,8 @@
1
+// SPDX-License-Identifier: GPL-2.0-only
12 /*
23 * Copyright (C) 2015 Robert Jarzmik <robert.jarzmik@free.fr>
34 *
45 * Scatterlist splitting helpers.
5
- *
6
- * This source code is licensed under the GNU General Public License,
7
- * Version 2. See the file COPYING for more details.
86 */
97
108 #include <linux/scatterlist.h>
....@@ -178,11 +176,13 @@
178176 * The order of these 3 calls is important and should be kept.
179177 */
180178 sg_split_phys(splitters, nb_splits);
181
- ret = sg_calculate_split(in, in_mapped_nents, nb_splits, skip,
182
- split_sizes, splitters, true);
183
- if (ret < 0)
184
- goto err;
185
- sg_split_mapped(splitters, nb_splits);
179
+ if (in_mapped_nents) {
180
+ ret = sg_calculate_split(in, in_mapped_nents, nb_splits, skip,
181
+ split_sizes, splitters, true);
182
+ if (ret < 0)
183
+ goto err;
184
+ sg_split_mapped(splitters, nb_splits);
185
+ }
186186
187187 for (i = 0; i < nb_splits; i++) {
188188 out[i] = splitters[i].out_sg;