Commit Graph

  • 8bcaaebb89 Move trans_buffers_max from volume to container Ernesto A. Fernández 2024-05-21 18:26:18 -03:00
  • 781e0024d2 Stop attempting to undo aborted transactions Ernesto A. Fernández 2024-05-20 19:21:53 -03:00
  • 5d41bd7e64 Initialize transaction fields on first mount Ernesto A. Fernández 2024-05-20 15:07:48 -03:00
  • 4e9984c815 Rename the transaction limit constants Ernesto A. Fernández 2024-05-16 20:48:48 -03:00
  • f1c9ab6c38 Adjust TRANSACTION_MAIN_QUEUE_MAX Ernesto A. Fernández 2024-05-16 20:22:45 -03:00
  • d533b6be3a 0.3.9 v0.3.9 Ernesto A. Fernández 2024-05-07 22:13:48 -03:00
  • 02cb8bb8d9 Suuport volumes with the 0x80 incompatible feature Ernesto A. Fernández 2024-05-03 21:08:11 -03:00
  • 6e7371ae02 Sync apfs_raw.h with the fsck again Ernesto A. Fernández 2024-05-03 20:33:30 -03:00
  • 2a10ca61e6 Update the volume superblock with latest fields Ernesto A. Fernández 2024-04-23 19:39:22 -03:00
  • 48f6df6262 Improve error reporting for orphan cleanups Ernesto A. Fernández 2024-04-17 20:40:12 -03:00
  • 33c9a99e96 Always update apfs_modified_by on unmount Ernesto A. Fernández 2024-04-16 21:03:28 -03:00
  • ca493f9586 Don't give up when a free queue gets full Ernesto A. Fernández 2024-04-12 15:28:30 -03:00
  • 212cc6ef63 Make apfs_query_found_extent() check ids as well Ernesto A. Fernández 2024-04-11 16:36:13 -03:00
  • fa6d1d3986 Check if fq root is empty before reading first key Ernesto A. Fernández 2024-04-05 19:09:24 -03:00
  • 076e715042 Preserve only one transaction in the ip free queue Ernesto A. Fernández 2024-04-05 16:10:31 -03:00
  • 38f9100760 Get rid of kmap_atomic() Ernesto A. Fernández 2024-03-27 20:57:02 -03:00
  • cc320ed9ea Provide an explanation for forced read-only mounts Ernesto A. Fernández 2024-03-26 20:21:40 -03:00
  • f50c8f2084 Open block devices as files with Linux 6.9 Ernesto A. Fernández 2024-03-26 13:49:24 -03:00
  • 21983fb418 Define SLAB_MEM_SPREAD flag for Linux 6.9 Ernesto A. Fernández 2024-03-26 13:45:09 -03:00
  • 514a2164d8 Split orphan cleanup among multiple transactions Ernesto A. Fernández 2024-03-08 16:25:41 -03:00
  • b8fe780c71 Don't leave stale record data on failed queries Ernesto A. Fernández 2024-03-18 18:18:49 -03:00
  • 3f9d529bcb 0.3.8 v0.3.8 Ernesto A. Fernández 2024-03-11 00:32:25 -03:00
  • 60ef1e9991 Building on kernel 6.8 Woody Suwalski 2024-01-17 16:41:37 -05:00
  • 0313a0fee1 Rework handling of ephemeral objects Ernesto A. Fernández 2024-02-22 20:28:20 -03:00
  • 784dd43146 Fix typo in previous commit Ernesto A. Fernández 2024-02-22 15:53:09 -03:00
  • 7df84d2173 Mention fusion drives in the README Ernesto A. Fernández 2024-02-20 20:04:21 -03:00
  • fbf052e1e9 Check container features as soon as possible Ernesto A. Fernández 2024-02-20 19:46:42 -03:00
  • 41af006115 0.3.7 v0.3.7 Ernesto A. Fernández 2024-01-18 20:07:43 -03:00
  • cba2045422 Report dkms version when git is not available Ernesto A. Fernández 2024-01-18 19:30:14 -03:00
  • 5e133a2ca5 Fix version header generation for dkms Ernesto A. Fernández 2024-01-17 22:30:49 -03:00
  • 9ae07db606 Don't refuse to mount a bad backup superblock Ernesto A. Fernández 2024-01-08 18:40:53 -03:00
  • 10557edf23 0.3.6 v0.3.6 Ernesto A. Fernández 2024-01-07 17:36:13 -03:00
  • bcedfe1752 Read error before setting error pointer to null Ernesto A. Fernández 2024-01-07 19:10:40 -03:00
  • 8b2287d91f Don't free error pointers in apfs_node_split() Ernesto A. Fernández 2024-01-07 18:59:55 -03:00
  • 5dc836ad96 Support for kernel 6.7 Woody Suwalski 2023-11-11 10:51:36 -05:00
  • fe13bc9636 Don't refresh queries pointing to deleted nodes Ernesto A. Fernández 2024-01-06 01:34:22 -03:00
  • af1491622d Avoid filename normalizations issues on refresh Ernesto A. Fernández 2024-01-04 22:33:04 -03:00
  • e7983cb3fe Restart btree modifications after a node split Ernesto A. Fernández 2023-12-29 23:51:19 -03:00
  • 2de7f65d5b Implement a helper to extract root node from query Ernesto A. Fernández 2023-12-30 00:13:08 -03:00
  • e872d3971a Allow NULL to be passed to apfs_node_free() Ernesto A. Fernández 2023-12-29 23:48:30 -03:00
  • eb6dd65019 Don't let node insert/replace fail with ENOSPC Ernesto A. Fernández 2023-12-29 22:54:46 -03:00
  • 0c8beaa186 Also defragment freed space in apfs_node_replace() Ernesto A. Fernández 2023-12-29 21:39:38 -03:00
  • 2adf86cba9 Defragment the node in apfs_node_replace() Ernesto A. Fernández 2023-12-29 19:56:01 -03:00
  • f883518a96 Move toc entry update into new function Ernesto A. Fernández 2023-12-29 19:40:24 -03:00
  • 4eb83167a9 Document some node functions that may throw ENOSPC Ernesto A. Fernández 2023-12-29 19:35:22 -03:00
  • e053f3b2b5 Call apfs_delete_node() with a node, not a query Ernesto A. Fernández 2023-12-29 18:28:01 -03:00
  • 196ac31122 Don't allow a stale offset for ghost records Ernesto A. Fernández 2023-12-20 19:40:18 -03:00
  • f1775ed0ef Turn the search key into a query field Ernesto A. Fernández 2023-12-20 20:14:49 -03:00
  • a33f06d8da Do use anon devices, but in a different way Ernesto A. Fernández 2023-12-08 21:46:38 -03:00
  • 9c0d396e20 Don't use anon devices Ernesto A. Fernández 2023-12-07 18:50:52 -03:00
  • 760cf779ef Add snapshot name to apfs_show_options() Ernesto A. Fernández 2023-12-07 21:52:06 -03:00
  • 0d274c7b48 Fix ->statfs() block count for snapshot mounts Ernesto A. Fernández 2023-12-07 21:22:32 -03:00
  • 53a9145401 Support multiblock internal pool bitmaps Ernesto A. Fernández 2023-12-01 15:52:23 -03:00
  • 1e8251a458 Report driver version for modinfo Ernesto A. Fernández 2023-11-14 20:54:54 -03:00
  • e0b1eeb29d Include release info in apfs_modified_by field Ernesto A. Fernández 2023-11-03 21:20:45 -03:00
  • 3c36f372be Get rid of apfs_end_buffer_write_sync() Ernesto A. Fernández 2023-11-03 19:23:01 -03:00
  • 620d6257f8 0.3.5 v0.3.5 Ernesto A. Fernández 2023-10-30 13:42:21 -03:00
  • 225a17aa77 Set splice read/write methods explicitly Ernesto A. Fernández 2023-10-27 22:13:05 -03:00
  • 6813d7e614 Ignore return value for generic_update_time() Ernesto A. Fernández 2023-10-27 19:24:13 -03:00
  • 4dab24ef6b Stop triggering kernel panics for silly reasons Ernesto A. Fernández 2023-10-26 22:21:27 -03:00
  • 1d9630b194 Get rid of zero-length arrays Ernesto A. Fernández 2023-10-26 21:56:56 -03:00
  • 2d6cdba8f6 Fix trivial style issues Ernesto A. Fernández 2023-10-26 20:57:37 -03:00
  • 1bca725a63 Fix for the kernel 6.6 build errors Woody Suwalski 2023-09-27 15:49:22 -04:00
  • 12f526f2de Perform locking for compressed reads Ernesto A. Fernández 2023-10-24 21:30:08 -03:00
  • 2ec72ff747 Simplify gotos in apfs_compress_file_open() Ernesto A. Fernández 2023-10-24 20:42:15 -03:00
  • 133ed4fbf3 Don't swallow errors in compressed ->readpage() Ernesto A. Fernández 2023-10-18 22:40:45 -03:00
  • 71b11b377b Unify read of attr and rsrc compressed files Ernesto A. Fernández 2023-10-18 20:35:23 -03:00
  • e6370242fa Try to preread the dstream for compressed files Ernesto A. Fernández 2023-10-13 19:28:20 -03:00
  • 040358bd4a Check for failure in buffer head array allocation Ernesto A. Fernández 2023-10-11 20:28:54 -03:00
  • e537eccc88 Fix apfs_compress_file_read_block() return code Ernesto A. Fernández 2023-10-10 19:04:34 -03:00
  • c6de394653 Make all compressed reads use the page cache Ernesto A. Fernández 2023-10-06 21:21:14 -03:00
  • e99d7b4d51 Get rid of apfs_compress_file_mmap() Ernesto A. Fernández 2023-10-06 20:14:44 -03:00
  • a55f0effc7 Ban the opening of compressed files for writing Ernesto A. Fernández 2023-10-06 19:08:10 -03:00
  • f9ca9061bb Implement mmap for compressed files Ernesto A. Fernández 2023-10-05 21:18:45 -03:00
  • 131953ffd8 Always lock pages before making them clean Ernesto A. Fernández 2023-09-29 20:12:06 -03:00
  • 12dde7a08f Only commit in apfs_sync_fs() if wait == 1 Gilgamesh 2023-09-26 22:08:43 -03:00
  • 19430cbdb2 Improve error messages in apfs_xattr_get_dstream() Ernesto A. Fernández 2023-09-25 20:03:05 -03:00
  • 1756ff18d3 Limit transaction size on systems without much ram Ernesto A. Fernández 2023-09-22 16:28:05 -03:00
  • 31df49c6d8 Ban writes to compressed files explicitly Ernesto A. Fernández 2023-09-21 19:50:09 -03:00
  • e4bb06ecef Avoid reading whole compressed files into memory Ernesto A. Fernández 2022-03-16 16:44:14 -03:00
  • a68325ef9e Spin xattr dstream reads into a new function Ernesto A. Fernández 2023-09-18 20:06:51 -03:00
  • af0671f58f 0.3.4 v0.3.4 Ernesto A. Fernández 2023-08-14 23:50:19 -03:00
  • 740d7db44b Fix mmap for kernels 5.14 and above Ernesto A. Fernández 2023-08-14 18:52:56 -03:00
  • bc2be91bb4 Update FMODE_* stuff for the 6.5 kernel Ernesto A. Fernández 2023-08-08 20:41:57 -03:00
  • 5c4773c036 Convert all strcpy() to strscpy() Ernesto A. Fernández 2023-08-07 20:56:39 -03:00
  • 1e3fa28c4f Increase limit for compressed size of files Ernesto A. Fernández 2023-06-07 20:20:56 -03:00
  • d4799475db 0.3.3 v0.3.3 Ernesto A. Fernández 2023-05-24 23:05:25 -03:00
  • c54e3a7423 Silence b_blocknr width warnings on old kernels Ernesto A. Fernández 2023-05-19 18:49:38 -03:00
  • b185ce13bd Fix builds before generic_copy_file_range() Ernesto A. Fernández 2023-05-19 18:22:35 -03:00
  • 42d70a8997 Fix build for kernels with separate clone/dedupe Ernesto A. Fernández 2023-05-19 17:36:23 -03:00
  • 97ba9b0dc8 0.3.2 v0.3.2 Ernesto A. Fernández 2023-05-16 17:24:34 -03:00
  • 8b99af84d1 Try to avoid failing insertion on fragmented nodes Ernesto A. Fernández 2023-04-17 20:05:26 -03:00
  • 3a605ec8ff Don't ignore error code in apfs_flush_fq_rec() Ernesto A. Fernández 2023-04-12 17:41:50 -03:00
  • ccefdd13d8 Don't allow free queues to exceed their node limit Ernesto A. Fernández 2023-04-12 16:47:55 -03:00
  • 5beaaae75c Fix out-of-bounds read on snapshot ioctl Ernesto A. Fernández 2023-04-05 22:56:19 -03:00
  • 0f47fc762a Fix memory leak on xattr length overflow Ernesto A. Fernández 2023-04-05 22:21:53 -03:00
  • d4797823ea Improve error reporting Ernesto A. Fernández 2023-03-24 22:07:47 -03:00
  • 24daddc890 Changes needed to build on kernel 6.3 Woody Suwalski 2023-03-23 20:15:30 -04:00
  • 72e8873a6a 0.3.1 v0.3.1 Ernesto A. Fernández 2023-03-23 21:15:51 -03:00
  • 8bb6d325ea Try to make longer free queue records Ernesto A. Fernández 2023-03-22 23:41:39 -03:00