lwext4.git
7 years agoSupport offsets with io_raw too. carl-attic
Carl Hetherington [Thu, 12 Jan 2017 13:50:46 +0000 (13:50 +0000)]
Support offsets with io_raw too.

7 years agoAdd call to set up the partition offset for filedev.
Carl Hetherington [Thu, 12 Jan 2017 13:45:04 +0000 (13:45 +0000)]
Add call to set up the partition offset for filedev.

7 years agoFix MBR creation.
Carl Hetherington [Thu, 12 Jan 2017 13:44:04 +0000 (13:44 +0000)]
Fix MBR creation.

Read parent->part_size after ext4_block_init() so that it has been
initialized, and write the partition size in sectors rather than bytes.

7 years agoext4_blockdev: don't make zero length block read/write operations
gkostka [Thu, 1 Dec 2016 15:37:23 +0000 (16:37 +0100)]
ext4_blockdev: don't make zero length block read/write operations

Patch submitted by g.tywanczuk@posnet.com.

7 years agoext4_journal: some reworks to stale metadata protection
Kaho Ng [Mon, 21 Nov 2016 21:24:18 +0000 (05:24 +0800)]
ext4_journal: some reworks to stale metadata protection

7 years agoext4_journal: modify the first 4 bytes of the logged block when needed
Kaho Ng [Thu, 22 Sep 2016 07:21:51 +0000 (15:21 +0800)]
ext4_journal: modify the first 4 bytes of the logged block when needed

7 years agoext4_journal: fix JBD_FLAG_ESCAPE handling
Kaho Ng [Thu, 22 Sep 2016 07:17:28 +0000 (15:17 +0800)]
ext4_journal: fix JBD_FLAG_ESCAPE handling

7 years agoMerge pull request #15 from exander77/master
Grzegorz Kostka [Tue, 6 Sep 2016 00:33:12 +0000 (02:33 +0200)]
Merge pull request #15 from exander77/master

fix: mingw build

7 years agofix: mingw build
Ing. Radomír Polách [Mon, 5 Sep 2016 21:29:39 +0000 (23:29 +0200)]
fix: mingw build

7 years agoUpdate README.md
Grzegorz Kostka [Fri, 26 Aug 2016 13:58:41 +0000 (15:58 +0200)]
Update README.md

7 years agoext4_journal: do not replay revoked block within the same transaction
Kaho Ng [Wed, 24 Aug 2016 07:18:09 +0000 (07:18 +0000)]
ext4_journal: do not replay revoked block within the same transaction

7 years agoext4_types: change "user" prefix to "ext4_user"
gkostka [Fri, 19 Aug 2016 11:03:21 +0000 (13:03 +0200)]
ext4_types: change "user" prefix to "ext4_user"

 Prefix ext4_user looks more appropriately.

7 years agoMerge pull request #13 from mmajewicz/malloc_substitution
Grzegorz Kostka [Fri, 19 Aug 2016 11:01:42 +0000 (13:01 +0200)]
Merge pull request #13 from mmajewicz/malloc_substitution

ext4: easy malloc/calloc/realloc/free substitution

7 years agoext4: malloc substitution - moved option definition and changed names
Michał Majewicz [Fri, 19 Aug 2016 10:31:13 +0000 (12:31 +0200)]
ext4: malloc substitution - moved option definition and changed names

7 years agoext4: easy malloc/calloc/realloc/free substitution
Michał Majewicz [Fri, 19 Aug 2016 08:41:47 +0000 (10:41 +0200)]
ext4: easy malloc/calloc/realloc/free substitution

7 years agoMerge pull request #12 from mmajewicz/extern_C_fix
Grzegorz Kostka [Fri, 19 Aug 2016 09:21:11 +0000 (11:21 +0200)]
Merge pull request #12 from mmajewicz/extern_C_fix

ext4_block_group.h: fix lack of extern "C" closing brace

7 years agoext4_block_group.h: fix lack of extern "C" closing brace
Michał Majewicz [Fri, 19 Aug 2016 08:40:50 +0000 (10:40 +0200)]
ext4_block_group.h: fix lack of extern "C" closing brace

7 years agoext4_journal: tune the logic of block zeroing in write_commit_block()
Kaho Ng [Fri, 19 Aug 2016 02:36:57 +0000 (02:36 +0000)]
ext4_journal: tune the logic of block zeroing in write_commit_block()

7 years agoext4_mkfs: little function name refactoring
gkostka [Tue, 16 Aug 2016 18:43:27 +0000 (20:43 +0200)]
ext4_mkfs: little function name refactoring

7 years agoext4_mkfs: improve block group init performance
gkostka [Tue, 16 Aug 2016 18:26:57 +0000 (20:26 +0200)]
ext4_mkfs: improve block group init performance

7 years agoext4_mkfs: merge fill_bgroups and write_bgroups into one function
gkostka [Tue, 16 Aug 2016 16:38:45 +0000 (18:38 +0200)]
ext4_mkfs: merge fill_bgroups and write_bgroups into one function

Previous implementation might alloc a lot of memory to hold
block group descriptors. Now only one block group descriptor
is allocated. However, this might have some performance consequences.

7 years agoext4: add filetype checking to ext4_mknod
Kaho Ng [Wed, 29 Jun 2016 21:30:28 +0000 (05:30 +0800)]
ext4: add filetype checking to ext4_mknod

7 years agoext4: special inode creation support
Kaho Ng [Wed, 29 Jun 2016 21:17:33 +0000 (05:17 +0800)]
ext4: special inode creation support

7 years agoext4: fix possible access violation when copying name fields
Kaho Ng [Tue, 28 Jun 2016 15:02:16 +0000 (23:02 +0800)]
ext4: fix possible access violation when copying name fields

7 years agoext4_journal: fix memory leakage when revoking a block repeatedly
Kaho Ng [Tue, 28 Jun 2016 09:18:52 +0000 (17:18 +0800)]
ext4_journal: fix memory leakage when revoking a block repeatedly

7 years agoext4_journal: fix memory leakage when reallocating a revoked block
Kaho Ng [Tue, 28 Jun 2016 04:03:07 +0000 (12:03 +0800)]
ext4_journal: fix memory leakage when reallocating a revoked block

7 years agoext4: @replace in ext4_setxattr() is deprecated
Kaho Ng [Sun, 19 Jun 2016 18:06:04 +0000 (02:06 +0800)]
ext4: @replace in ext4_setxattr() is deprecated

7 years agoext4_xattr: rework the EA submodule
Kaho Ng [Thu, 9 Jun 2016 14:27:04 +0000 (22:27 +0800)]
ext4_xattr: rework the EA submodule

7 years agoext4_extent: add comments to truncate routines
Kaho Ng [Tue, 31 May 2016 16:06:46 +0000 (00:06 +0800)]
ext4_extent: add comments to truncate routines

7 years agoext4_extent: fix truncate freeing blocks at the wrong boundary
Kaho Ng [Tue, 31 May 2016 11:46:38 +0000 (19:46 +0800)]
ext4_extent: fix truncate freeing blocks at the wrong boundary

7 years agoext4_xattr: fix not considering iter()'s return value
Kaho Ng [Fri, 27 May 2016 01:54:54 +0000 (09:54 +0800)]
ext4_xattr: fix not considering iter()'s return value

7 years agoext4_journal: fix trans_id_diff return value
gkostka [Tue, 24 May 2016 07:27:05 +0000 (09:27 +0200)]
ext4_journal: fix trans_id_diff return value

7 years agoext4_journal: handle trans_id wrapping around cases
Kaho Ng [Tue, 24 May 2016 05:37:12 +0000 (13:37 +0800)]
ext4_journal: handle trans_id wrapping around cases

7 years agoext4_xattr: fix missing a type conversion from int32_t to size_t
Kaho Ng [Mon, 16 May 2016 15:38:07 +0000 (23:38 +0800)]
ext4_xattr: fix missing a type conversion from int32_t to size_t

7 years agoext4_fs: zero the inode when allocated
ngkaho1234 [Mon, 16 May 2016 11:59:46 +0000 (11:59 +0000)]
ext4_fs: zero the inode when allocated

7 years agoext4_xattr: allow more entries to be inserted when space is small
ngkaho1234 [Mon, 16 May 2016 10:19:41 +0000 (10:19 +0000)]
ext4_xattr: allow more entries to be inserted when space is small

7 years agoext4_xattr: fix not computing hash of on-block entries
ngkaho1234 [Mon, 16 May 2016 10:08:14 +0000 (10:08 +0000)]
ext4_xattr: fix not computing hash of on-block entries

I forget to do that, sorry. :-(

7 years agoext4_xattr: type changes
ngkaho1234 [Mon, 16 May 2016 09:12:34 +0000 (09:12 +0000)]
ext4_xattr: type changes

 - struct ext4_xattr_ref::inode_size_rem's type is changed from int32_t to size_t
 - struct ext4_xattr_ref::block_size_rem's type is changed from int32_t to size_t

7 years agoext4_mbr: introduce ext4_mbr_write procedure
gkostka [Mon, 16 May 2016 07:36:07 +0000 (09:36 +0200)]
ext4_mbr: introduce ext4_mbr_write procedure

7 years agoext4_xattr: ext4_xattr_insert_item now returns error code
Kaho Ng [Mon, 16 May 2016 04:27:12 +0000 (12:27 +0800)]
ext4_xattr: ext4_xattr_insert_item now returns error code

7 years agoext4_xattr: invalidate the block buffer when writing fails
Kaho Ng [Sun, 15 May 2016 17:49:26 +0000 (01:49 +0800)]
ext4_xattr: invalidate the block buffer when writing fails

7 years agoext4_xattr: clear the content of acl block buffer before writing
Kaho Ng [Sun, 15 May 2016 17:48:02 +0000 (01:48 +0800)]
ext4_xattr: clear the content of acl block buffer before writing

7 years agoext4_xattr: better handling on some corner error case
Kaho Ng [Sun, 15 May 2016 16:16:37 +0000 (00:16 +0800)]
ext4_xattr: better handling on some corner error case

7 years agoext4_xattr: Changes to EA metadata handling macros
Kaho Ng [Thu, 12 May 2016 14:38:59 +0000 (22:38 +0800)]
ext4_xattr: Changes to EA metadata handling macros

 - Move them from include/ext4_types.h to include/ext4_xattr.h
 - Use ext4_inode_get_extra_isize to better handle extra_isize field
   of inodes.

7 years agoRefine extra_isize field handling
ngkaho1234 [Thu, 12 May 2016 13:59:44 +0000 (13:59 +0000)]
Refine extra_isize field handling

7 years agoext4_xattr: endianness fix.
Kaho Ng [Wed, 11 May 2016 16:24:02 +0000 (00:24 +0800)]
ext4_xattr: endianness fix.

7 years agoext4_xattr: fix freeing inode_ref's buffer when failed to initialize.
Kaho Ng [Wed, 11 May 2016 16:22:22 +0000 (00:22 +0800)]
ext4_xattr: fix freeing inode_ref's buffer when failed to initialize.

7 years agoext4: count on free blocks and inodes number after journal recovery.
ngkaho1234 [Sat, 7 May 2016 08:55:20 +0000 (08:55 +0000)]
ext4: count on free blocks and inodes number after journal recovery.

8 years agoUpdate README.md file
gkostka [Sat, 30 Apr 2016 09:20:58 +0000 (11:20 +0200)]
Update README.md file

8 years agoAdd separate LICENSE file
gkostka [Sat, 30 Apr 2016 09:17:54 +0000 (11:17 +0200)]
Add separate LICENSE file

8 years agoAdd Gitter badge
The Gitter Badger [Sat, 30 Apr 2016 08:53:47 +0000 (08:53 +0000)]
Add Gitter badge

8 years agoext4_journal: numorous changes.
Kaho Ng [Wed, 27 Apr 2016 11:11:31 +0000 (19:11 +0800)]
ext4_journal: numorous changes.

 - Do not utilize jbd_block_rec::buf because it can be unreliable that
   jbd_block_rec::buf may be freed.
 - Do not need to flush buffers before a new transaction is going to reference
   them.
 - add some comments to the changes.

8 years agoext4_journal: fix not wrapping blocks when recovering.
ngkaho1234 [Thu, 28 Apr 2016 17:31:33 +0000 (17:31 +0000)]
ext4_journal: fix not wrapping blocks when recovering.

8 years agoext4_journal: cosmetic fix for jbd_trans_set_block_dirty.
ngkaho1234 [Wed, 27 Apr 2016 06:01:38 +0000 (06:01 +0000)]
ext4_journal: cosmetic fix for jbd_trans_set_block_dirty.

8 years agoext4_journal: add once parameter to loops.
Kaho Ng [Sun, 24 Apr 2016 13:12:43 +0000 (21:12 +0800)]
ext4_journal: add once parameter to loops.

8 years agoext4_balloc: fix not revoking any blocks when freeing blocks.
ngkaho1234 [Sun, 24 Apr 2016 01:05:26 +0000 (01:05 +0000)]
ext4_balloc: fix not revoking any blocks when freeing blocks.

8 years agoext4_fs: fix possible overflow
gkostka [Tue, 12 Apr 2016 15:43:13 +0000 (17:43 +0200)]
ext4_fs: fix possible overflow

8 years agoext4_blockdev: change ERANGE to ENXIO error status
gkostka [Tue, 12 Apr 2016 15:42:09 +0000 (17:42 +0200)]
ext4_blockdev: change ERANGE to ENXIO error status

8 years agoext4_config: set CONFIG_UNALIGNED_ACCESS to 0 as default
gkostka [Fri, 1 Apr 2016 14:00:18 +0000 (16:00 +0200)]
ext4_config: set CONFIG_UNALIGNED_ACCESS to 0 as default

8 years agoext4_config: add CONFIG_UNALIGNED_ACCESS configuration switch
gkostka [Fri, 1 Apr 2016 13:05:29 +0000 (15:05 +0200)]
ext4_config: add CONFIG_UNALIGNED_ACCESS configuration switch

On some targets unaligned 32/16 bit access will raise exeption.

8 years agoext4: add rename/move directory procedure to main API
gkostka [Thu, 31 Mar 2016 18:47:43 +0000 (20:47 +0200)]
ext4: add rename/move directory procedure to main API

8 years agoCMake: add library & headers to make install target
gkostka [Thu, 31 Mar 2016 18:43:31 +0000 (20:43 +0200)]
CMake: add library & headers to make install target

8 years agoext4_mkfs: fix compilation warnings
gkostka [Mon, 21 Mar 2016 22:04:17 +0000 (23:04 +0100)]
ext4_mkfs: fix compilation warnings

8 years agoext4_journal: fix compilation warnings (may be used uninitialized)
gkostka [Mon, 21 Mar 2016 22:01:22 +0000 (23:01 +0100)]
ext4_journal: fix compilation warnings (may be used uninitialized)

8 years agotravis: change toolchain in travis file & add new builds
gkostka [Mon, 21 Mar 2016 21:33:15 +0000 (22:33 +0100)]
travis: change toolchain in travis file & add new builds

8 years agoRemove depreciated blackfin build
gkostka [Mon, 21 Mar 2016 19:39:02 +0000 (20:39 +0100)]
Remove depreciated blackfin build

Blackfin toolchain is too old to build lwext4 correctly

8 years agoext4_xattr: fix xattr functions not recognizing acl attribute name.
ngkaho1234 [Thu, 17 Mar 2016 04:27:53 +0000 (04:27 +0000)]
ext4_xattr: fix xattr functions not recognizing acl attribute name.

8 years agoFix travis build
gkostka [Thu, 18 Feb 2016 21:01:28 +0000 (22:01 +0100)]
Fix travis build

8 years agoFix assertion fault when disk space is full.
ngkaho1234 [Thu, 18 Feb 2016 15:20:25 +0000 (15:20 +0000)]
Fix assertion fault when disk space is full.

8 years agoext4_extent: compiler warning fix
gkostka [Sun, 14 Feb 2016 17:08:27 +0000 (18:08 +0100)]
ext4_extent: compiler warning fix

8 years agoext4_extent: cosmetic fix on code indentation.
ngkaho1234 [Sun, 14 Feb 2016 14:57:11 +0000 (14:57 +0000)]
ext4_extent: cosmetic fix on code indentation.

8 years agoext4_extent: cosmetic fixes on error code handling. Part 2.
ngkaho1234 [Sun, 14 Feb 2016 14:53:58 +0000 (14:53 +0000)]
ext4_extent: cosmetic fixes on error code handling. Part 2.

8 years agoext4_extent: introduce need_split boolean to invoke splitting.
ngkaho1234 [Sun, 14 Feb 2016 14:49:52 +0000 (14:49 +0000)]
ext4_extent: introduce need_split boolean to invoke splitting.

8 years agoext4_extent: cosmetic fixes on error code handling.
ngkaho1234 [Sat, 13 Feb 2016 17:25:25 +0000 (17:25 +0000)]
ext4_extent: cosmetic fixes on error code handling.

Do not detect flaws by seeing whether routines return non-zero value, instead
this should be done by seeing whether return value is not being EOK.

8 years agoext4_extent: Rework extent insertion.
ngkaho1234 [Fri, 12 Feb 2016 05:09:52 +0000 (05:09 +0000)]
ext4_extent: Rework extent insertion.

8 years agoUpdate README.md v1.0.0
gkostka [Tue, 9 Feb 2016 21:30:21 +0000 (22:30 +0100)]
Update README.md

8 years agoBump lwext4 version to 1.0.0 & changelog update
gkostka [Tue, 9 Feb 2016 21:06:05 +0000 (22:06 +0100)]
Bump lwext4 version to 1.0.0 & changelog update

8 years agoUpdate README.md
gkostka [Tue, 9 Feb 2016 20:34:33 +0000 (21:34 +0100)]
Update README.md

8 years agoext4_extent: return immediately when ext4_ext_correct_indexes fails.
ngkaho1234 [Thu, 4 Feb 2016 15:39:00 +0000 (15:39 +0000)]
ext4_extent: return immediately when ext4_ext_correct_indexes fails.

8 years agoext4_extent: fix passing wrong size to memmove.
ngkaho1234 [Thu, 4 Feb 2016 15:28:05 +0000 (15:28 +0000)]
ext4_extent: fix passing wrong size to memmove.

8 years agoFix prefix_patch toolkit.
ngkaho1234 [Wed, 3 Feb 2016 16:40:39 +0000 (16:40 +0000)]
Fix prefix_patch toolkit.

8 years agoFix type mismatch.
ngkaho1234 [Wed, 3 Feb 2016 14:17:47 +0000 (22:17 +0800)]
Fix type mismatch.

8 years agoRemove unnecessary stdio.h .
ngkaho1234 [Wed, 3 Feb 2016 10:29:28 +0000 (10:29 +0000)]
Remove unnecessary stdio.h .

8 years agoAdd toolkit that helps adding prefix to flags and errno V2.
ngkaho1234 [Sat, 30 Jan 2016 14:33:21 +0000 (22:33 +0800)]
Add toolkit that helps adding prefix to flags and errno V2.

8 years agoAdd toolkit that helps adding prefix to flags and errno.
ngkaho1234 [Thu, 28 Jan 2016 14:49:38 +0000 (22:49 +0800)]
Add toolkit that helps adding prefix to flags and errno.

8 years agoext4_mkfs: move roundup and align macros to misc header
gkostka [Mon, 1 Feb 2016 18:50:03 +0000 (19:50 +0100)]
ext4_mkfs: move roundup and align macros to misc header

8 years agoFix travis build
gkostka [Mon, 1 Feb 2016 18:35:50 +0000 (19:35 +0100)]
Fix travis build

Use never version of gcc 4.8

8 years agoRelocate other in-memory data structures from ext4_types.h
ngkaho1234 [Mon, 1 Feb 2016 03:18:15 +0000 (03:18 +0000)]
Relocate other in-memory data structures from ext4_types.h

These include ext4_inode_ref, ext4_dir_iter, ext4_dir_search_result
and ext4_dir_idx_block.

8 years agoRefactor header files dependencies.
ngkaho1234 [Sun, 31 Jan 2016 14:31:05 +0000 (22:31 +0800)]
Refactor header files dependencies.

8 years agoext4_mkfs: field 'len' of ext4_mkfs_info should be unsigned.
ngkaho1234 [Sun, 31 Jan 2016 09:40:09 +0000 (09:40 +0000)]
ext4_mkfs: field 'len' of ext4_mkfs_info should be unsigned.

8 years agoext4_fs: fix read_only not being set on ext4_fs structure.
ngkaho1234 [Sat, 30 Jan 2016 18:28:04 +0000 (18:28 +0000)]
ext4_fs: fix read_only not being set on ext4_fs structure.

8 years agoext4: fix ext4_fread failing when fs on read-only mode.
ngkaho1234 [Sat, 30 Jan 2016 17:25:51 +0000 (17:25 +0000)]
ext4: fix ext4_fread failing when fs on read-only mode.

8 years agoext4: add read_only parameter to ext4_mount routine.
ngkaho1234 [Sat, 30 Jan 2016 15:26:22 +0000 (23:26 +0800)]
ext4: add read_only parameter to ext4_mount routine.

Now users can mount a filesystem as read-only mode explicitly.

8 years agoCMake: now ext4_config.h will be automatically generated.
ngkaho1234 [Thu, 28 Jan 2016 16:18:58 +0000 (00:18 +0800)]
CMake: now ext4_config.h will be automatically generated.

8 years agoReconstruct source directory tree.
ngkaho1234 [Thu, 28 Jan 2016 14:46:36 +0000 (22:46 +0800)]
Reconstruct source directory tree.

8 years agobfin-elf.cmake: set -std=gnu99 for blackfin targets (unsupported gnu11)
gkostka [Wed, 27 Jan 2016 22:50:38 +0000 (23:50 +0100)]
bfin-elf.cmake: set -std=gnu99 for blackfin targets (unsupported gnu11)

8 years agoext4: ext4_chmod now only allows modifying the lowest 12bit of i_mode.
ngkaho1234 [Tue, 26 Jan 2016 06:15:35 +0000 (06:15 +0000)]
ext4: ext4_chmod now only allows modifying the lowest 12bit of i_mode.

8 years agoMove file opening & seeking flags to a separate header file.
ngkaho1234 [Mon, 25 Jan 2016 09:03:44 +0000 (09:03 +0000)]
Move file opening & seeking flags to a separate header file.

8 years agoReduce the number of errno definitions in ext4_errno.h.
root [Sun, 24 Jan 2016 05:53:46 +0000 (05:53 +0000)]
Reduce the number of errno definitions in ext4_errno.h.

8 years agoAdd type cast to eliminate compiler warning messages.
ngkaho1234 [Sun, 24 Jan 2016 04:24:03 +0000 (04:24 +0000)]
Add type cast to eliminate compiler warning messages.