Accepting request 90070 from home:k0da:ppc
- The ppc64 kernel uses a page size of 64kB but mksquashfs only pads to a 4kB boundary. When we loopback mount a squashfs file that isn't 64kB aligned and access the last sector of the associated loopback device we see a stream of errors. Disk partitioning tools seem to like accessing the last 512 bytes of partitions. This should fix warnings seen during starting installation on ppc64 and IA64 OBS-URL: https://build.opensuse.org/request/show/90070 OBS-URL: https://build.opensuse.org/package/show/filesystems/squashfs?expand=0&rev=11
This commit is contained in:
parent
71d4c79576
commit
b5b0708f8b
24
squashfs-64k.patch
Normal file
24
squashfs-64k.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
--- squashfs-tools/mksquashfs.c.orig 2011-11-03 19:57:06.000000000 +0100
|
||||||
|
+++ squashfs-tools/mksquashfs.c 2011-11-03 19:58:50.000000000 +0100
|
||||||
|
@@ -4871,7 +4871,7 @@
|
||||||
|
ERROR("-force-uid uid\t\tset all file uids to uid\n");
|
||||||
|
ERROR("-force-gid gid\t\tset all file gids to gid\n");
|
||||||
|
ERROR("-nopad\t\t\tdo not pad filesystem to a multiple "
|
||||||
|
- "of 4K\n");
|
||||||
|
+ "of 64K\n");
|
||||||
|
ERROR("-keep-as-directory\tif one source directory is "
|
||||||
|
"specified, create a root\n");
|
||||||
|
ERROR("\t\t\tdirectory containing that directory, "
|
||||||
|
@@ -5339,9 +5339,9 @@
|
||||||
|
SQUASHFS_INSWAP_SUPER_BLOCK(&sBlk);
|
||||||
|
write_destination(fd, SQUASHFS_START, sizeof(sBlk), &sBlk);
|
||||||
|
|
||||||
|
- if(!nopad && (i = bytes & (4096 - 1))) {
|
||||||
|
- char temp[4096] = {0};
|
||||||
|
- write_destination(fd, bytes, 4096 - i, temp);
|
||||||
|
+ if(!nopad && (i = bytes & (65536 - 1))) {
|
||||||
|
+ char temp[65536] = {0};
|
||||||
|
+ write_destination(fd, bytes, 65536 - i, temp);
|
||||||
|
}
|
||||||
|
|
||||||
|
close(fd);
|
@ -1,3 +1,15 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Nov 3 19:00:03 UTC 2011 - dvaleev@suse.com
|
||||||
|
|
||||||
|
- The ppc64 kernel uses a page size of 64kB but mksquashfs only
|
||||||
|
pads to a 4kB boundary. When we loopback mount a squashfs file
|
||||||
|
that isn't 64kB aligned and access the last sector of the
|
||||||
|
associated loopback device we see a stream of errors.
|
||||||
|
Disk partitioning tools seem to like accessing the last 512
|
||||||
|
bytes of partitions.
|
||||||
|
|
||||||
|
This should fix warnings seen during starting installation on
|
||||||
|
ppc64 and IA64
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Tue May 24 16:41:14 CEST 2011 - dimstar@opensuse.org
|
Tue May 24 16:41:14 CEST 2011 - dimstar@opensuse.org
|
||||||
|
@ -26,6 +26,7 @@ Supplements: filesystem(squashfs)
|
|||||||
Version: 4.2
|
Version: 4.2
|
||||||
Release: 1
|
Release: 1
|
||||||
Source0: %{name}%{version}.tar.gz
|
Source0: %{name}%{version}.tar.gz
|
||||||
|
Patch0: squashfs-64k.patch
|
||||||
Url: http://squashfs.sourceforge.net/
|
Url: http://squashfs.sourceforge.net/
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
Summary: A Read-Only File System with Efficient Compression
|
Summary: A Read-Only File System with Efficient Compression
|
||||||
@ -36,6 +37,7 @@ squashfs images.
|
|||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -n squashfs%{version}
|
%setup -n squashfs%{version}
|
||||||
|
%patch0
|
||||||
|
|
||||||
%build
|
%build
|
||||||
sed -i -e "s,-O2,%{optflags}," squashfs-tools/Makefile
|
sed -i -e "s,-O2,%{optflags}," squashfs-tools/Makefile
|
||||||
|
Loading…
Reference in New Issue
Block a user