Re: [PATCH 3/5] zfs: Fix unaligned read of uint64

2024-05-08 Thread mwleeds
On Thursday, April 25th, 2024 at 4:57 AM, Caleb Connolly wrote: > > On 25/04/2024 06:02, mwle...@mailtundra.com wrote: > > > Hi Caleb, > > > > Thanks for this interesting feedback. I saw these patches were already > > merged > > since you sent this but I added a few thoughts below anyway. >

Re: [PATCH 3/5] zfs: Fix unaligned read of uint64

2024-04-24 Thread mwleeds
Hi Caleb, Thanks for this interesting feedback. I saw these patches were already merged since you sent this but I added a few thoughts below anyway. On Friday, April 12th, 2024 at 11:50 AM, Caleb Connolly wrote: > Hi Phaedrus, > > On 07/04/2024 03:47, mwle...@mailtundra.com wrote: > > >

Re: [PATCH 1/5] zfs: Fix malloc() success check

2024-04-12 Thread mwleeds
On Sunday, April 7th, 2024 at 4:22 AM, Igor Opaniuk wrote: > Hi Phaedrus, > > On Sun, Apr 7, 2024 at 4:00 AM mwle...@mailtundra.com wrote: > > > This code was hitting the error code path whenever malloc() succeeded > > rather than when it failed, so presumably this part of the code hasn't > >

[PATCH 5/5] zfs: Fix zfs_read() to actually work

2024-04-06 Thread mwleeds
Without this patch, the while loop being modified goes on infinitely, but with the patch I am able to boot linux on zfs on a jetson tx2 nx. It seems like this code was never tested because the logic is clearly wrong. The function do_div(a,b) does a division that modifies the first parameter to

[PATCH 4/5] zfs: Fix return value of fs_devread()

2024-04-06 Thread mwleeds
As evidenced by how other filesystems handle it, a return value of 0 from fs_devread() means failure; nonzero means success. The opposite assumption was being made in zfs.c for the use of zfs_devread() so fix the confusion by making zfs_devread() return 0 on success. It probably doesn't make

[PATCH 3/5] zfs: Fix unaligned read of uint64

2024-04-06 Thread mwleeds
Without this patch, when trying to boot zfs using U-Boot on a Jetson TX2 NX (which is aarch64), I get a CPU reset error like so: "Synchronous Abort" handler, esr 0x9621 elr: 800c9000 lr : 800c8ffc (reloc) elr: fff77000 lr : fff76ffc x0 : ffb40f04 x1 :

[PATCH 2/5] zfs: Add a comment to clarify nvlist memory layout

2024-04-06 Thread mwleeds
Signed-off-by: Phaedrus Leeds Tested-by: Phaedrus Leeds --- fs/zfs/zfs.c | 5 + 1 file changed, 5 insertions(+) diff --git a/fs/zfs/zfs.c b/fs/zfs/zfs.c index 14779dee32..61d58fce68 100644 --- a/fs/zfs/zfs.c +++ b/fs/zfs/zfs.c @@ -1610,20 +1610,25 @@ zfs_nvlist_lookup_nvlist(char *nvlist,

[PATCH 1/5] zfs: Fix malloc() success check

2024-04-06 Thread mwleeds
This code was hitting the error code path whenever malloc() succeeded rather than when it failed, so presumably this part of the code hasn't been tested. I had to apply this fix (and others) to get U-Boot to boot from ZFS on an Nvidia Jetson TX2 NX SoM (an aarch64 computer). Signed-off-by:

[PATCH 0/5] zfs: Fix zfs support on aarch64

2024-04-06 Thread mwleeds
This patch series is needed to get U-Boot to boot from a ZFS filesystem on an aarch64 computer. Some of the patches are not architecture specific and would be needed to boot ZFS on other platforms as well. The ZFS support in U-Boot hasn't been substantively touched in several years and to me it