Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# SPDX-License-Identifier: GPL-2.0
VERSION = 5
PATCHLEVEL = 10
SUBLEVEL = 0
SUBLEVEL = 1
EXTRAVERSION =
NAME = Kleptomaniac Octopus

Expand Down
12 changes: 5 additions & 7 deletions drivers/md/dm-raid.c
Original file line number Diff line number Diff line change
Expand Up @@ -3730,14 +3730,12 @@ static void raid_io_hints(struct dm_target *ti, struct queue_limits *limits)
blk_limits_io_opt(limits, chunk_size_bytes * mddev_data_stripes(rs));

/*
* RAID10 personality requires bio splitting,
* RAID0/1/4/5/6 don't and process large discard bios properly.
* RAID1 and RAID10 personalities require bio splitting,
* RAID0/4/5/6 don't and process large discard bios properly.
*/
if (rs_is_raid10(rs)) {
limits->discard_granularity = max(chunk_size_bytes,
limits->discard_granularity);
limits->max_discard_sectors = min_not_zero(rs->md.chunk_sectors,
limits->max_discard_sectors);
if (rs_is_raid1(rs) || rs_is_raid10(rs)) {
limits->discard_granularity = chunk_size_bytes;
limits->max_discard_sectors = rs->md.chunk_sectors;
}
}

Expand Down
4 changes: 2 additions & 2 deletions drivers/md/md.h
Original file line number Diff line number Diff line change
Expand Up @@ -311,7 +311,7 @@ struct mddev {
int external; /* metadata is
* managed externally */
char metadata_type[17]; /* externally set*/
unsigned int chunk_sectors;
int chunk_sectors;
time64_t ctime, utime;
int level, layout;
char clevel[16];
Expand Down Expand Up @@ -339,7 +339,7 @@ struct mddev {
*/
sector_t reshape_position;
int delta_disks, new_level, new_layout;
unsigned int new_chunk_sectors;
int new_chunk_sectors;
int reshape_backwards;

struct md_thread *thread; /* management thread */
Expand Down
11 changes: 11 additions & 0 deletions galliumos/NOTES
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
## galliumos/NOTES

This directory borrows some debian organizational conventions.

The upstream kernel git config ignores "debian", "patches", and "series",
so we rename them to "galliumos", "diffs", and "sequence".

If we edited .gitignore instead, we'd risk incomplete commits if a new
upstream version was untarred on top and restored the original ignore
behaviour. So this is awkward, but safe.

42 changes: 42 additions & 0 deletions galliumos/bin/apply_patches
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
#!/bin/sh
#

BASENAME=$(basename $0)
INTERACTIVE=
SEQ_FILE="galliumos/diffs/sequence"
SEQ_DIR=$(dirname "$SEQ_FILE")
#DOIF=":"

[ "$1" = "-i" ] && INTERACTIVE=1

apply_patch() {
local _diff=$1

$DOIF patch -p1 < "$SEQ_DIR/$_diff"
}

if [ ! -f "$SEQ_FILE" ]; then
echo "$BASENAME: fatal: $SEQ_FILE not found. make sure cwd is repo root!"
exit 1
fi

for diff in $(cat "$SEQ_FILE" | grep -v "^#" ); do
if [ "$INTERACTIVE" ]; then
resp="incoherent"
while [ "$resp" = "incoherent" ]; do
echo "$BASENAME: apply $diff [Ynq]: \c"
read resp
case "$resp" in
[Yy]*|'') apply_patch "$diff"; echo ;;
[Nn]*) ;;
[Qq]*) exit 0 ;;
*) resp="incoherent" ;;
esac
done
else
echo
echo "$BASENAME: applying $diff"
apply_patch "$diff"
fi
done

Loading