Age | Commit message (Collapse) | Author | Files |
|
Create the inode and save the native inode number when we meet the hard
link (st_nlink > 1) at the first time, use ext2fs_link() to link the
name to the target inode number when we meet the same native inode
number again.
This algorithm is referred from the genext2fs.
[YOCTO #4083]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Reviewed-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This option is used for adding the files from a given directory (the
root-directory) to the filesystem, it is similiar to genext2fs, but
genext2fs doesn't fully support ext4.
[YOCTO #4083]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Reviewed-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Set the uid, gid, mode and time for inode.
[YOCTO #4083]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Reviewed-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The do_mkdir_internal() is used for making dir on the target fs, most of
the code are from debugfs/debugfs.c, the debugfs/debugfs.c will be
modified to use this function.
[YOCTO #4083]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Reviewed-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The do_write_internal() is used for copying file from native fs to
target, most of the code are from debugfs/debugfs.c, the
debugfs/debugfs.c will be modified to use this function.
[YOCTO #4083]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Reviewed-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The do_symlink_internal() is used for creating symlinks, most of the
code are from debugfs/debugfs.c, the debugfs/debugfs.c will be modified
to use this function.
[YOCTO #4083]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Reviewed-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The do_mknod_internal() is used for creating special file which is
block, character and fifo, most of the code are from debugfs/debugfs.c,
the debugfs/debugfs.c will be modified to use this function.
[YOCTO #4083]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Reviewed-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Use opendir() and readdir() to read the native directory, then use
lstat() to identify the file type and call the corresponding function to
add the file to the filesystem, call the populate_fs() recursively if it
is a directory.
NOTE: the libext2fs can't create the socket file.
[YOCTO #4083]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Reviewed-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
We will add a -d option which will be used for adding the files from a
given directory to the filesystem, it is similiar to genext2fs, but
genext2fs doesn't fully support ext4.
* We already have the basic operations in debugfs:
- Copy regular file
- Create directory
- Create symlink
- Create special file
We will move these operations into create_inode.h and create_inode.c,
then let both mke2fs and debugfs use them.
* What we need to do are:
- Copy the given directory recursively, this will be done by the
populate_fs()
- Set the owner, mode and other informations
- Handle the hard links
TODO:
- The libext2fs can't create the socket file (S_IFSOCK), do we have a
plan to support it ?
[YOCTO #4083]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Reviewed-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
e2fsprogs requires pkgconfig to build native package
Signed-off-by: Baogen Shang <baogen.shang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
This reverts commit 22f90c5aec4f0b0360d1d960226f9965d83d589b.
This causes build failures with:
| dirname: missing operand
| Try 'dirname --help' for more information.
under some circumstances.
|
|
The dash can't handle the or [[ in parameter expansion, for example:
A=/usr/bin/[[
B=[[
C="${A%$B}"
The C should be "/usr/bin" in common, but it will be /usr/bin/[[ on
dash, use dirname to fix it.
NOTE:
There are 3 lines about parameter expansion, only fix the
DIR="${DIR%$TGT}" since the other 2 works will and are very useful in
this case.
[YOCTO #5712]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
* Upgrade to 1.42.9
* Remove the following patches since they have been merged/fixed by
upstream:
- debugfs-extent-header.patch
- debugfs-sparse-copy.patch
- debugfs-too-short.patch
- e2fsprogs-fix-tests-f_extent_oobounds.patch
- fallocate.patch
* The populate-extfs.sh had been merged by the upstream, but I'd like to
go on using the previous one which is from our meta layer, they are a
little different, and the script would be dropped when we use the mke2fs
to populate the rootfs.
* Sumitted the patch for populate-extfs.sh (from Søren Holm) to upstream.
* Submitted fix-icache.patch to upstream, I wrongly thought it was not
applicable to the upstream, but it does.
* Join the do_install() and do_install_append() together.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
debugfs echos the commands when it is executing a script, but as the scripts
used at rootfs time are long this massively inflates the do_rootfs log.
Comment out the echo so that the rootfs isn't 20K lines longer than it needs to
be.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
tests/f_extent_oobounds runs debugfs from the system, not from the
source tree, and if the system's debugfs doesn't have the extent_open
command it fails silently.
Use $DEBUGFS and $MKE2FS to get the in-tree executables for this test,
just like other test scripts do.
(Build machines which run make check shouldn't need to have e2fsprogs
installed, and we should be testing just-built versions of the tools
anyway)
This patch is from:
http://www.spinics.net/lists/linux-ext4/msg38880.html
Eric Sandeen had sent it to the linux-ext4 mailing list, but haven't
been merge by now.
[YOCTO #5511]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Without this patch filenames containing spaces do not get into the final
ext2/3/4 filsystem.
[YOCTO #5401]
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
This script is originally from Darren Hart, it will be used for creating
the ext* filesystem from a given directory, which will replace the
genext2fs in image_types.bbclass at the moment, we may use the mke2fs to
replace this script again when it has the initial directory support.
Changes of the script:
* Rename it from mkdebugfs.sh to populate-extfs.sh
* Add a simple usage
* Add checking for the number of the parameters
* Add the "regular empty file" and "fifo" file type
* Set mode, uid and gid for the file
* Save the command lines to a file and batch run them
* Change the error message
* Improve the performance
* Add the support for hardlink
[YOCTO #3848]
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
do_write doesn't fully set up the first extent header on a new
inode, so if we write a 0-length file, and don't write any data
to the new file, we end up creating something that looks corrupt
to kernelspace:
EXT4-fs error (device loop0): ext4_ext_check_inode:464: inode #12: comm
ls: bad header/extent: invalid magic - magic 0, entries 0, max 0(0),
depth 0(0)
Do something similar to ext4_ext_tree_init() here, and
fill out the first extent header upon creation to avoid this.
[YOCTO #3848]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
We only read the cache when:
bufsize == sizeof(struct ext2_inode)
then we should only update the cache in the same condition, otherwise
there would be errors, for example:
cache[0]: cached ino 14 when bufsize = 128 by ext2fs_write_inode_full()
cache[1]: cached ino 14 when bufsize = 156 by ext2fs_read_inode_full()
Then update the cache:
cache[0]: cached ino 15 when bufsize = 156 by ext2fs_read_inode_full()
Then the ino 14 would hit the cache[1] when bufsize = 128 (but it was
cached by bufsize = 156), so there would be errors.
[YOCTO #3848]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
Let debugfs do sparse copy when src is a sparse file, just like
"cp --sparse=auto"
This patch has been reviewed by the linux-ext4 mailing list, but isn't
merged atm.
[YOCTO #3848]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
The max length of debugfs argument is 256 which is too short, the
arguments are two paths, the PATH_MAX is 4096 according to
/usr/include/linux/limits.h, so use BUFSIZ (which is 8192 on Linux
systems), that's also what the ss library uses.
This patch has been reviewed by the linux-ext4 mailing list, but isn't
merged atm.
[YOCTO #3848]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
There were darwin8/darwin9 overrides spinkled in the code from times gone
by. Lets settle on the darwin override and remove the others since its pointless
duplication. We always inject darwin into OVERRIDES if needed in the darwin8/9
cases.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
upgrade from 1.42.7 -> 1.42.8
Signed-off-by: Andrei Dinu <andrei.adrianx.dinu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
Fix out of tree builds by placing built objects in the correct
location.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Signed-off-by: Andrei Dinu <andrei.adrianx.dinu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
- removed the usage of the patches already contained in the new version
- adapted patch remove.ldconfig.call.patch so that it applies on new version
Signed-off-by: Andrei Dinu <andrei.adrianx.dinu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This binary is provided by util-linux nowadays. Fixes:
WARNING: The recipe is trying to install files into a shared area when those files already exist. Those files are:
/fast/jenkins/workspace/.../tmp-eglibc/sysroots/x86_64-linux/sbin/findfs
Signed-off-by: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
There are conflicts in the native sysroot over the fsck binary. Whilst
providing people with alternatives is good to a point, the source in util-linux
is clearly the copy which is now being maintained and moved forwards which the copy
in e2fsprogs being older and with less features.
The simplest solution is simply to no longer offer this and used the maintained
version from util-linux.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
We've removed libblkid from e2fsprogs as it was being provided by util-linux. The blkid
binary is also provided there and providing it within e2fsprogs too, linked against
a different and potentially incompatible library we're likely asking for trouble.
It also leads to inconsistencies in the native sysroot since we don't consistently
get one given provider of blkid (but always the liblibid from util-linux).
To clean this up, fully remove/disable the blkid binary and package.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
* libext2fs is located in base_libdir, not libdir
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Includes minor tweaks to the formatting of some patch headers and the
addition of a SOB line where needed.
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
|
|
${libdir} and ${base_libdir} may be the same. If they are don't try and
move files onto themselves.
Signed-off-by: Mike Crowe <mac@mcrowe.com>
|
|
FILES_libext2fs
The new install path of e2initrd_helper is %{libdir}. FILES_libext2fs modified accordigly to
avoid QA warnings.
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
|
|
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Koen Kooi suggested that the quotefix patch was not needed,
and the build of the recipe should now be multithread-safe.
My testing has confirmed this.
Signed-off-by: Scott Garman <sgarman@zenlinux.com>
|
|
e2fsprogs 1.42 onwards uses fallocate() which uclibc
does not implement(yet). In most of places its use
is controlled and it only used when configure detects
fallocate being present but in this one case it missed
to check for fallocate being available so here we
add the check
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
Refactored quotefix.patch to apply cleanly.
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
|
|
The e2fsprogs utilities are installed into base_sbindir (/sbin)
and should not link to libraries under exec_prefix (/usr). So move
these libraries from libdir (/usr/lib) to base_libdir (/lib).
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Add patch remove setting CC, LD and LDFLAGS on commandline
since they are passed correctly via configure. Those setting
also caused the configure information about -std=gnu99 from
being passed correctly.
Removed patch that was fixed upstream
Added scanf configuration, since this is a cross-compile target check
libuuid removed an API that e2fsprogs uuidd used (uuid__generate_*),
thus we disable it in this patch and will now provide uuidd from
util-linux.
See http://sourceforge.net/projects/e2fsprogs/forums/forum/7053/topic/4639484
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
mke2fs.conf, which contains defaults for filesystem formatting options,
ought to be shipped along with mke2fs itself.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
|
|
Some scripts are necessary to develop programs with libcom_err and
libss. Include those into e2fsprogs-dev package.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Some place pnum=1 is used which is removed as well since
striplevel=1 is default
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
add libcomerr libss libe2p libext2fs packages
helps in reducing the root file system size
[RP: Added PR bump]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
Signed-off-by: Mei Lei <lei.mei@intel.com>
|
|
directly
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This ensures package runtime dependencies are up-to-date after splitting
out libuuid and libblkid in util-linux recipe
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Qing He <qing.he@intel.com>
|
|
For these recipes the dependencies listed in RDEPENDS and RRECOMMENDS only apply to ${PN}
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
|
|
Add Summary information and update Descripts as necessary.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
|