Commit Graph

  • f279e25de4 Provide vm_fault_t for older kernels Ernesto A. Fernández 2021-09-13 13:02:18 -03:00
  • c340dfdee2 Fix SETFLAGS/GETFLAGS ioctls for newer kernels Ernesto A. Fernández 2021-09-10 15:12:38 -03:00
  • fd5deb160b Don't nest queries when deleting dstream xattrs Ernesto A. Fernández 2021-09-08 20:05:51 -03:00
  • 502af4a66f Don't print empty lines on orphan deletion failure Ernesto A. Fernández 2021-09-07 16:50:00 -03:00
  • 4819db04c8 Keep query valid on apfs_node_insert() failure Ernesto A. Fernández 2021-09-07 16:19:33 -03:00
  • 21fa24c7e5 Set query parent to null on node defragmentation Ernesto A. Fernández 2021-09-04 01:09:17 -03:00
  • 088db933fb Deal with huge records that block new insertions Ernesto A. Fernández 2021-09-03 20:52:59 -03:00
  • 601d625e8a Don't abort inside apfs_transaction_commit() Ernesto A. Fernández 2021-09-02 22:47:32 -03:00
  • 96de48094c Implement creation and deletion of dstream xattrs Ernesto A. Fernández 2021-09-02 01:53:55 -03:00
  • 9b71ea9b0f Use the common dstream code to read dstream xattrs Ernesto A. Fernández 2021-09-01 20:23:54 -03:00
  • c550a8529c Move inode dstream data into its own struct Ernesto A. Fernández 2021-08-31 19:26:28 -03:00
  • 2c485b7ca6 Always create dstream xfields for dstream records Ernesto A. Fernández 2021-08-27 23:47:46 -03:00
  • f62948f5a9 Implement FS_IOC_SETFLAGS/FS_IOC_GETFLAGS ioctls Ernesto A. Fernández 2021-08-27 00:51:44 -03:00
  • f14d0c4b02 Put a limit on file sizes Ernesto A. Fernández 2021-08-25 19:07:58 -03:00
  • cf708f835b Implement a simple ->remount_fs() Ernesto A. Fernández 2021-08-24 18:38:03 -03:00
  • 1ee197b6f4 Advance readdir context position after each emit Ernesto A. Fernández 2021-08-20 20:02:10 -03:00
  • f6b838bcb6 Never commit right after making a page writable Ernesto A. Fernández 2021-08-19 20:09:15 -03:00
  • 412723dba9 Don't append holes until flushing the extent cache Ernesto A. Fernández 2021-08-18 22:03:00 -03:00
  • f10e87d93c Make transaction commit actually effective Ernesto A. Fernández 2021-08-17 23:03:23 -03:00
  • b9920bb77d Support the sync family of syscalls Ernesto A. Fernández 2021-08-16 22:59:18 -03:00
  • 711eeafc7f Don't modify blocks on truncation Ernesto A. Fernández 2021-08-14 00:46:14 -03:00
  • 52dcd83486 Attempt to support mmap() Ernesto A. Fernández 2021-08-10 20:19:15 -03:00
  • 960bc4035b Don't change the inode's sparse flag until commit Ernesto A. Fernández 2021-08-12 18:28:30 -03:00
  • 85ee7e2e21 Defer inode metadata writes Ernesto A. Fernández 2021-08-05 22:06:44 -03:00
  • d3c6dc090a Avoid block_invalidatepage() on inode eviction Ernesto A. Fernández 2021-08-04 21:41:16 -03:00
  • b5aa52a3d1 Revert "Write extent content to disk right away" Ernesto A. Fernández 2021-08-03 00:34:15 -03:00
  • 0ddf6ab8d9 Provide more sb flags for older kernels Ernesto A. Fernández 2021-08-01 17:12:02 -03:00
  • 9ab0738aa5 Fix apfs_getattr() version checks Ernesto A. Fernández 2021-08-01 15:40:34 -03:00
  • 79e77af7e4 Don't provide kvfree for older kernels Ernesto A. Fernández 2021-08-01 01:32:08 -03:00
  • 031396de9e Provide kvmalloc for older kernels BrainSlayer 2021-07-31 20:11:18 -03:00
  • 3d45d06688 Continue fixing build problems on older kernels Ernesto A. Fernández 2021-07-31 18:10:47 -03:00
  • e35bc34cae Fix SB_RDONLY definition for older kernels Ernesto A. Fernández 2021-07-30 17:35:54 -03:00
  • 470af0bbd1 Provide a discard_new_inode() for old kernels Ernesto A. Fernández 2021-07-30 17:28:43 -03:00
  • 2f9afd03a5 Bring back support for older kernel versions Ernesto A. Fernández 2021-07-30 17:04:16 -03:00
  • 4fd5f84556 Don't unlink nonempty directories on rename Ernesto A. Fernández 2021-07-29 22:52:51 -03:00
  • 7db4539565 Print a warning when the internal pool is full Ernesto A. Fernández 2021-07-29 19:22:32 -03:00
  • 074f7acc39 Update root node height when btree is emptied Ernesto A. Fernández 2021-07-29 00:00:07 -03:00
  • d2af0b3a6f Don't attempt CoW on nonexistent extent blocks Ernesto A. Fernández 2021-07-28 18:48:19 -03:00
  • 4530b08a41 Refresh queries on multiple record replacements Ernesto A. Fernández 2021-07-28 00:22:18 -03:00
  • 3168b84877 Include rdev xfield in device inodes with null id Ernesto A. Fernández 2021-07-27 22:59:26 -03:00
  • 5b577d247c Fix npd on multiple node split Ernesto A. Fernández 2021-07-26 21:32:18 -03:00
  • 0f42b1ef15 Fix allocation from big entries in node free lists Ernesto A. Fernández 2021-07-23 16:48:12 -03:00
  • ff6e5be159 Avoid splitting nodes with a single record Ernesto A. Fernández 2021-07-22 19:18:49 -03:00
  • 94580b6905 Delete xattrs along with their inode Ernesto A. Fernández 2021-07-21 20:46:34 -03:00
  • 4b1a8815c4 Implement deletion of inline xattrs Ernesto A. Fernández 2021-07-21 19:11:26 -03:00
  • 57a2ef1fb1 Implement ->update_time() Ernesto A. Fernández 2021-07-21 17:02:18 -03:00
  • 9a40a290f4 Support node deletion in the extent reference tree Ernesto A. Fernández 2021-07-20 21:22:50 -03:00
  • 9c2a26021a Create free queue entries with multiple blocks Ernesto A. Fernández 2021-07-16 22:26:16 -03:00
  • 5ef1c5c241 Support writes to sparse files Ernesto A. Fernández 2021-07-16 18:19:00 -03:00
  • 5fe8a9810e Implement truncation Ernesto A. Fernández 2021-07-10 00:17:38 -03:00
  • de449f4787 Mark truly new extent buffers as such Ernesto A. Fernández 2021-07-09 21:11:22 -03:00
  • 695f04aa3d Support writes to the middle of files Ernesto A. Fernández 2021-06-28 23:15:15 -03:00
  • 430040e4a7 Never try to delete root nodes Ernesto A. Fernández 2021-07-09 20:11:10 -03:00
  • c0d3d515b9 Get rid of macros for unsupported kernel versions Ernesto A. Fernández 2021-06-25 22:38:58 -03:00
  • 6c0bd2e2e4 Set all volumes to read-only on transaction abort Ernesto A. Fernández 2021-06-25 22:23:36 -03:00
  • 2ce6d06dc7 Raise minimum supported kernel version to 4.19 Ernesto A. Fernández 2021-06-25 15:31:34 -03:00
  • 98728d7a7f fix failed compilation due to lookup_in v5.11 Su Yue 2021-06-23 13:34:21 +08:00
  • 93c53f6b83 Add install target to Makefile Luflosi 2021-06-19 21:29:02 +02:00
  • 278c42350c Use variable in Makefile for PWD instead of calling "shell pwd" directly Luflosi 2021-06-17 16:05:40 +02:00
  • 62300aa2a4 Remove volume from vol_list in unmap_main_super() Ernesto A. Fernández 2021-06-18 22:37:23 -03:00
  • b20cb467c0 Plug memory leak on multiple mount of same volume Ernesto A. Fernández 2021-06-18 21:35:10 -03:00
  • 3a2e3369d2 Take exclusive ownership of block device on mount Ernesto A. Fernández 2021-06-17 19:31:17 -03:00
  • 0b5ba5e5a9 Silence compiler warnings in apfs_create_node() Ernesto A. Fernández 2021-06-15 17:13:21 -03:00
  • 08c4b0b03c Switch the readme to rst format Ernesto A. Fernández 2021-06-14 23:30:11 -03:00
  • c138e7a34b Allow changing KERNEL_DIR Luflosi 2021-06-08 12:41:00 +02:00
  • a005d61213 Fix module name in dkms.conf Melvyn Depeyrot 2021-06-06 14:49:38 -07:00
  • 58104ba8c4 apfs: fix failed compilation due to idmap mount changes in v5.12 Su Yue 2021-05-10 14:38:24 +08:00
  • 4e440581a8 Release the spaceman bh when a transaction ends Ernesto A. Fernández 2021-05-11 23:04:17 -03:00
  • 3b2b7fd01a Get rid of query cache Ernesto A. Fernández 2021-05-11 22:24:23 -03:00
  • ee1eb9773b Remove volume from container list on mount failure Ernesto A. Fernández 2021-05-11 20:27:33 -03:00
  • 22140d2788 Do proper cleanup of superblock on mount failure Ernesto A. Fernández 2021-05-11 19:07:16 -03:00
  • ea003cd5f8 Don't abort uninitialized transactions Ernesto A. Fernández 2021-05-10 23:49:28 -03:00
  • 53d720ab6f Set oldest xid in free queues correctly Ernesto A. Fernández 2021-05-10 22:53:33 -03:00
  • a52b73ed97 Check free space before starting a transaction Ernesto A. Fernández 2021-05-08 01:44:09 -03:00
  • 9b15614ad5 Don't reuse negative dentries on file creation Ernesto A. Fernández 2021-04-30 22:39:36 -03:00
  • f426a13582 Try to keep extent and metadata blocks separate Ernesto A. Fernández 2021-04-30 00:27:27 -03:00
  • 18c6d00845 Adjust the checks that decide if commit is needed Ernesto A. Fernández 2021-04-28 22:11:00 -03:00
  • c0c7e7cded Allow tail extents to be enlarged on append Ernesto A. Fernández 2021-04-29 18:39:31 -03:00
  • 34f5431b44 Remove debugging prints Ernesto A. Fernández 2021-04-26 19:31:32 -03:00
  • a78c62f645 Write extent content to disk right away Ernesto A. Fernández 2021-04-26 19:23:36 -03:00
  • 4fe85b5366 Allow multiple operations per transaction Stan Skowronek 2021-04-21 18:52:08 -03:00
  • 7b3ef1e683 Add support for per-file keys Stan Skowronek 2021-04-20 15:35:52 -03:00
  • 54674882fc Support insertion to the first position of a btree Ernesto A. Fernández 2021-04-19 19:48:25 -03:00
  • b0f0579c80 Avoid npd on dentry hash collisions Stan Skowronek 2021-04-17 05:29:10 -03:00
  • 39b2be28c2 Free old records from the main free queue Stan Skowronek 2021-04-16 22:55:11 -03:00
  • 8be44b4f89 Don't initialize extent cache in init_once() Stan Skowronek 2021-04-16 22:48:50 -03:00
  • 799e5454ee Remove assertion that bans symlinks Stan Skowronek 2021-04-16 22:47:08 -03:00
  • 2d05444c72 Write the inodes immediately on ->setattr() Stan Skowronek 2021-04-16 22:40:40 -03:00
  • 5893c0208c Preallocate toc for nodes with fixed record sizes Ernesto A. Fernández 2021-04-15 03:41:56 -03:00
  • 919a4bf0fb Don't leak a node's freed record space Ernesto A. Fernández 2021-04-14 18:30:53 -03:00
  • 071ed07be5 Silence unused warnings in assert_in_transaction() Ernesto A. Fernández 2021-04-14 18:26:53 -03:00
  • db87e70892 On inode resize, update xfields in current node Stan Skowronek 2021-04-12 16:36:46 -03:00
  • 777191438f Implement deletion of ephemeral blocks Ernesto A. Fernández 2021-04-10 01:21:51 -03:00
  • 59a9be369b Ignore the volume super in ephemeral node deletion Ernesto A. Fernández 2021-04-09 20:25:47 -03:00
  • 90c8e2b56f Silence unused var warning for transaction asserts Ernesto A. Fernández 2021-04-09 20:18:10 -03:00
  • 66a0cc71d7 Turn apfs_assert_in_transaction() into a macro Ernesto A. Fernández 2021-04-09 20:11:26 -03:00
  • 92a35bd43e Regularly free old blocks from the internal pool Ernesto A. Fernández 2021-04-09 02:40:39 -03:00
  • a8bbe53eae Release the ip bitmap on transaction end Ernesto A. Fernández 2021-04-08 21:39:29 -03:00
  • d00aa6fce5 Support creation of symbolic links Ernesto A. Fernández 2021-04-08 03:29:59 -03:00
  • a78d8bc9ba Support creation of inline xattrs Ernesto A. Fernández 2021-04-08 00:56:36 -03:00