Re: [PATCH v8 01/13] exfat: add in-memory and on-disk structures and headers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



2020-01-02 20:06 GMT+09:00, Pali Rohár <pali.rohar@xxxxxxxxx>:
> Hello, just remainder for question below, so it would not be lost.
>
> I guess that if comment for structure says that it needs to have exact
> size then structure should be marked as packed to prevent any unexpected
> paddings added by compiler (as IIRC compiler is free to add any padding
> between any structure members).
Okay, I will fix it on next version.

Thanks!
>
> On Sunday 29 December 2019 15:11:08 Pali Rohár wrote:
>> On Friday 20 December 2019 01:24:07 Namjae Jeon wrote:
>> > +
>> > +#define JUMP_BOOT_LEN			3
>> > +#define OEM_NAME_LEN			8
>> > +#define MUST_BE_ZERO_LEN		53
>> > +#define EXFAT_FILE_NAME_LEN		15
>> > +
>> > +/* EXFAT BIOS parameter block (64 bytes) */
>> > +struct bpb64 {
>> > +	__u8 jmp_boot[JUMP_BOOT_LEN];
>> > +	__u8 oem_name[OEM_NAME_LEN];
>> > +	__u8 res_zero[MUST_BE_ZERO_LEN];
>> > +};
>> > +
>> > +/* EXFAT EXTEND BIOS parameter block (56 bytes) */
>> > +struct bsx64 {
>> > +	__le64 vol_offset;
>> > +	__le64 vol_length;
>> > +	__le32 fat_offset;
>> > +	__le32 fat_length;
>> > +	__le32 clu_offset;
>> > +	__le32 clu_count;
>> > +	__le32 root_cluster;
>> > +	__le32 vol_serial;
>> > +	__u8 fs_version[2];
>> > +	__le16 vol_flags;
>> > +	__u8 sect_size_bits;
>> > +	__u8 sect_per_clus_bits;
>> > +	__u8 num_fats;
>> > +	__u8 phy_drv_no;
>> > +	__u8 perc_in_use;
>> > +	__u8 reserved2[7];
>> > +};
>>
>> Should not be this structure marked as packed? Also those two below.
>>
>> > +/* EXFAT PBR[BPB+BSX] (120 bytes) */
>> > +struct pbr64 {
>> > +	struct bpb64 bpb;
>> > +	struct bsx64 bsx;
>> > +};
>> > +
>> > +/* Common PBR[Partition Boot Record] (512 bytes) */
>> > +struct pbr {
>> > +	union {
>> > +		__u8 raw[64];
>> > +		struct bpb64 f64;
>> > +	} bpb;
>> > +	union {
>> > +		__u8 raw[56];
>> > +		struct bsx64 f64;
>> > +	} bsx;
>> > +	__u8 boot_code[390];
>> > +	__le16 signature;
>> > +};
>>
>
> --
> Pali Rohár
> pali.rohar@xxxxxxxxx
>




[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux