Hi Helge, On 12/4/22 10:07, Helge Kreutzmann wrote:
Without further ado, the following was found: Issue: of 0 → of I<r0>? "Since the offset argument is 64 bits, and the first argument (I<fd>) is" "passed in I<r0>, the caller must manually split and align the 64-bit value" "so that it is passed in the I<r2>/I<r3> register pair. That means inserting" "a dummy value into I<r1> (the second argument of 0). Care also must be" "taken so that the split follows endian conventions (according to the C ABI" "for the platform)."
The report is invalid: syscall(SYS_readahead, fd, 0, (unsigned int) (offset & 0xFFFFFFFF), (unsigned int) (offset >> 32), count); Since the offset argument is 64 bits, and the first argu‐ ment (fd) is passed in r0, the caller must manually split and align the 64‐bit value so that it is passed in the r2/r3 register pair. That means inserting a dummy value into r1 (the second argument of 0). Care also must be taken so that the split follows endian conventions (ac‐ cording to the C ABI for the platform). It's saying that the second argument in the call above is the value 0. Cheers, Alex -- <http://www.alejandro-colomar.es/>
Attachment:
OpenPGP_signature
Description: OpenPGP digital signature