|To:||Dave Chinner <david@xxxxxxxxxxxxx>|
|Subject:||Re: [PATCH v2] xfs_db: fix the setting of unaligned directory fields|
|From:||Mark Tinguely <tinguely@xxxxxxx>|
|Date:||Tue, 11 Feb 2014 08:18:41 -0600|
|User-agent:||Mozilla/5.0 (X11; FreeBSD amd64; rv:9.0) Gecko/20120122 Thunderbird/9.0|
On 02/10/14 19:31, Dave Chinner wrote:
On Mon, Feb 10, 2014 at 05:09:12PM -0600, Mark Tinguely wrote:
> + * Values larger than 64 bits are array of hex digits that > + * already in the desired ordering (example UUID). > */ > - *value = strtoll(arg, NULL, 0); > + if (bit_length > 64) > + return buf;I don't understand why you added this - how can we have input left that we need to parse after the above loop? @bytes will always be<= 0 at this point in time, which means we have no space in the bit field left to put values into....
The comment explains the return.If the input bit_length is bigger than 64 bit then it is an array of hex numbers (for example UUID can be entered this way).
buf is the beginning of the allocated array before rbuf pointer put nibbles into it. So this returns the beginning of the hex bytes.
If this return is not taken then it is 64 bits or less and is some kind of integer. The integer will get its fields fixed and converted to big endian....
|<Prev in Thread]||Current Thread||[Next in Thread>|
|Previous by Date:||Re: [PATCH v2] xfstests: btrfs/004: fix to make test really work, Josef Bacik|
|Next by Date:||Re: [PATCH v3 04/11] xfs: update inode allocation/free transaction reservations for finobt, Brian Foster|
|Previous by Thread:||Re: [PATCH v2] xfs_db: fix the setting of unaligned directory fields, Dave Chinner|
|Next by Thread:||Re: [PATCH v2] xfs_db: fix the setting of unaligned directory fields, Dave Chinner|
|Indexes:||[Date] [Thread] [Top] [All Lists]|