fsck_minix,mkfs_minix: fix "strict-aliasing" warnings
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
c4367d7227
commit
dce39c9894
@ -173,7 +173,10 @@ struct globals {
|
|||||||
|
|
||||||
/* Bigger stuff */
|
/* Bigger stuff */
|
||||||
struct termios sv_termios;
|
struct termios sv_termios;
|
||||||
char superblock_buffer[BLOCK_SIZE];
|
union {
|
||||||
|
char superblock_buffer[BLOCK_SIZE];
|
||||||
|
struct minix_superblock Super;
|
||||||
|
} u;
|
||||||
char add_zone_ind_blk[BLOCK_SIZE];
|
char add_zone_ind_blk[BLOCK_SIZE];
|
||||||
char add_zone_dind_blk[BLOCK_SIZE];
|
char add_zone_dind_blk[BLOCK_SIZE];
|
||||||
IF_FEATURE_MINIX2(char add_zone_tind_blk[BLOCK_SIZE];)
|
IF_FEATURE_MINIX2(char add_zone_tind_blk[BLOCK_SIZE];)
|
||||||
@ -207,7 +210,7 @@ struct globals {
|
|||||||
#define name_depth (G.name_depth )
|
#define name_depth (G.name_depth )
|
||||||
#define name_component (G.name_component )
|
#define name_component (G.name_component )
|
||||||
#define sv_termios (G.sv_termios )
|
#define sv_termios (G.sv_termios )
|
||||||
#define superblock_buffer (G.superblock_buffer )
|
#define superblock_buffer (G.u.superblock_buffer)
|
||||||
#define add_zone_ind_blk (G.add_zone_ind_blk )
|
#define add_zone_ind_blk (G.add_zone_ind_blk )
|
||||||
#define add_zone_dind_blk (G.add_zone_dind_blk )
|
#define add_zone_dind_blk (G.add_zone_dind_blk )
|
||||||
#define add_zone_tind_blk (G.add_zone_tind_blk )
|
#define add_zone_tind_blk (G.add_zone_tind_blk )
|
||||||
@ -247,7 +250,7 @@ enum {
|
|||||||
#define Inode1 (((struct minix1_inode *) inode_buffer)-1)
|
#define Inode1 (((struct minix1_inode *) inode_buffer)-1)
|
||||||
#define Inode2 (((struct minix2_inode *) inode_buffer)-1)
|
#define Inode2 (((struct minix2_inode *) inode_buffer)-1)
|
||||||
|
|
||||||
#define Super (*(struct minix_superblock *)(superblock_buffer))
|
#define Super (G.u.Super)
|
||||||
|
|
||||||
#if ENABLE_FEATURE_MINIX2
|
#if ENABLE_FEATURE_MINIX2
|
||||||
# define ZONES ((unsigned)(version2 ? Super.s_zones : Super.s_nzones))
|
# define ZONES ((unsigned)(version2 ? Super.s_zones : Super.s_nzones))
|
||||||
|
@ -142,7 +142,10 @@ struct globals {
|
|||||||
unsigned currently_testing;
|
unsigned currently_testing;
|
||||||
|
|
||||||
char root_block[BLOCK_SIZE];
|
char root_block[BLOCK_SIZE];
|
||||||
char superblock_buffer[BLOCK_SIZE];
|
union {
|
||||||
|
char superblock_buffer[BLOCK_SIZE];
|
||||||
|
struct minix_superblock SB;
|
||||||
|
} u;
|
||||||
char boot_block_buffer[512];
|
char boot_block_buffer[512];
|
||||||
unsigned short good_blocks_table[MAX_GOOD_BLOCKS];
|
unsigned short good_blocks_table[MAX_GOOD_BLOCKS];
|
||||||
/* check_blocks(): buffer[] was the biggest static in entire bbox */
|
/* check_blocks(): buffer[] was the biggest static in entire bbox */
|
||||||
@ -166,7 +169,7 @@ static ALWAYS_INLINE unsigned div_roundup(unsigned size, unsigned n)
|
|||||||
#define INODE_BUF1 (((struct minix1_inode*)G.inode_buffer) - 1)
|
#define INODE_BUF1 (((struct minix1_inode*)G.inode_buffer) - 1)
|
||||||
#define INODE_BUF2 (((struct minix2_inode*)G.inode_buffer) - 1)
|
#define INODE_BUF2 (((struct minix2_inode*)G.inode_buffer) - 1)
|
||||||
|
|
||||||
#define SB (*(struct minix_superblock*)G.superblock_buffer)
|
#define SB (G.u.SB)
|
||||||
|
|
||||||
#define SB_INODES (SB.s_ninodes)
|
#define SB_INODES (SB.s_ninodes)
|
||||||
#define SB_IMAPS (SB.s_imap_blocks)
|
#define SB_IMAPS (SB.s_imap_blocks)
|
||||||
@ -234,7 +237,7 @@ static void write_tables(void)
|
|||||||
xlseek(dev_fd, BLOCK_SIZE, SEEK_SET);
|
xlseek(dev_fd, BLOCK_SIZE, SEEK_SET);
|
||||||
|
|
||||||
msg_eol = "can't write superblock";
|
msg_eol = "can't write superblock";
|
||||||
xwrite(dev_fd, G.superblock_buffer, BLOCK_SIZE);
|
xwrite(dev_fd, G.u.superblock_buffer, BLOCK_SIZE);
|
||||||
|
|
||||||
msg_eol = "can't write inode map";
|
msg_eol = "can't write inode map";
|
||||||
xwrite(dev_fd, G.inode_map, SB_IMAPS * BLOCK_SIZE);
|
xwrite(dev_fd, G.inode_map, SB_IMAPS * BLOCK_SIZE);
|
||||||
@ -541,7 +544,7 @@ static void setup_tables(void)
|
|||||||
unsigned sb_zmaps;
|
unsigned sb_zmaps;
|
||||||
unsigned i;
|
unsigned i;
|
||||||
|
|
||||||
/* memset(G.superblock_buffer, 0, BLOCK_SIZE); */
|
/* memset(G.u.superblock_buffer, 0, BLOCK_SIZE); */
|
||||||
/* memset(G.boot_block_buffer, 0, 512); */
|
/* memset(G.boot_block_buffer, 0, 512); */
|
||||||
SB_MAGIC = G.magic;
|
SB_MAGIC = G.magic;
|
||||||
SB_ZONE_SIZE = 0;
|
SB_ZONE_SIZE = 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user