google / packetdrill

The official Google release of packetdrill
GNU General Public License v2.0
887 stars 220 forks source link

Fix 32bit builds #50

Open roxell opened 3 years ago

roxell commented 3 years ago

These patches solves the 32-bit builds that was reported a few days back and it fixes a bug.

nealcardwell commented 3 years ago

Thanks or the patches!

Regarding the patch: "net-test: packetdrill: run_system_call: splice expects a pointer to the offset" Scripts need to be able to pass NULL for the off_in and off_out parameters to the system call. How will they be able to do that after your patch?

Regarding the second patch, "net-test: packetdrill: run_system_call: fix 32 bit builds"; in the commit message:

(1) please document the compile error you received on this line, that motivated changing that one: event->data.ptr = (void *)epollev_expr->ptr->value.num;

(2) please document that you tested your change by also compiling the resulting code on a 64-bit x86 Linux machine as well, and verifying that this had no warnings or errors.

Thanks!

roxell commented 3 years ago

Thanks or the patches!

Regarding the patch: "net-test: packetdrill: run_system_call: splice expects a pointer to the offset" Scripts need to be able to pass NULL for the off_in and off_out parameters to the system call. How will they be able to do that after your patch?

I'm sorry but its not clear to me what the code should do. I saw that splice and ifc.splice didn't do the same. I assume I have to do something like: '(loff_t *)(uintptr_t)off_in' same for off_out in both splice and ifc.splice then or what do I miss?

Regarding the second patch, "net-test: packetdrill: run_system_call: fix 32 bit builds"; in the commit message:

(1) please document the compile error you received on this line, that motivated changing that one: event->data.ptr = (void *)epollev_expr->ptr->value.num;

(2) please document that you tested your change by also compiling the resulting code on a 64-bit x86 Linux machine as well, and verifying that this had no warnings or errors.

Will update "net-test: packetdrill: run_system_call: fix 32 bit builds" according to your suggestions.

Cheers