if(rawflag) {
dlen = udata.u_count;
dptr = (uint16_t)udata.u_base;
- if (dptr & 0x1FF) {
+ if (((uint16_t)udata.u_offset|dptr) & BLKMASK) {
udata.u_error = EIO;
return -1;
}
if(rawflag) {
dlen = udata.u_count;
dptr = (uint16_t)udata.u_base;
- if (dptr & 0x1FF) {
+ if (((uint16_t)dptr | dlen) & BLKMASK) {
udata.u_error = EIO;
return -1;
}
int ct = 0;
int map;
- /* FIXME: raw is broken unless nicely aligned */
if(rawflag) {
dlen = udata.u_count;
dptr = (uint16_t)udata.u_base;
- if (dptr & 0x1FF) {
+ if (((uint16_t)dptr|dlen) & BLKMASK) {
udata.u_error = EIO;
return -1;
}
if(rawflag) {
dlen = udata.u_count;
dptr = (uint16_t)udata.u_base;
- if (dptr & 0x1FF) {
+ if (((uint16_t)dptr|dlen) & BLKMASK) {
udata.u_error = EIO;
return -1;
}
if(rawflag) {
dlen = udata.u_count;
dptr = (uint16_t)udata.u_base;
- if (dptr & 0x1FF) {
+ if (((uint16_t)dptr | dlen) & BLKMASK) {
udata.u_error = EIO;
return -1;
}
if(rawflag) {
dlen = udata.u_count;
dptr = (uint16_t)udata.u_base;
- if (dptr & 0x1FF) {
+ if (((uint16_t)dptr|dlen) & BLKMASK) {
udata.u_error = EIO;
return -1;
}
if(rawflag) {
dlen = udata.u_count;
dptr = (uint16_t)udata.u_base;
- if (dptr & 0x1FF) {
+ if (((uint16_t)dptr | dlen) & BLKMASK) {
udata.u_error = EIO;
return -1;
}
if(rawflag) {
dlen = udata.u_count;
dptr = (uint16_t)udata.u_base;
- if (dptr & 0x1FF) {
+ if (((uint16_t)dptr | dlen) & BLKMASK) {
udata.u_error = EIO;
return -1;
}
if(rawflag) {
dlen = udata.u_count;
dptr = (uint16_t)udata.u_base;
- if ((dlen|udata.u_offset) & 0x1FF) {
+ if ((dlen|udata.u_offset) & BLKMASK) {
udata.u_error = EIO;
return -1;
}
ramd_uaddr = (uint16_t)udata.u_base;
ramd_off = udata.u_offset << 1;
/* Should check this higher up ? */
- if ((ramd_size & 0x1FF) || (ramd_off & 0x1FF))
+ if (((uint16_t)ramd_size | ramd_off) & BLKMASK)
return -EIO;
} else if (rawflag == 2) { /* Swap device special */
ramd_size = swapcnt << 9;
dlen = udata.u_count;
dptr = (uint16_t)udata.u_base;
/* Must be block aligned but otherwise we are happy */
- if ((udata.u_offset|dlen) & 0x1FF) {
+ if (((uint16_t)udata.u_offset|dlen) & BLKMASK) {
udata.u_error = EIO;
return -1;
}
block = udata.u_buf->bf_blk;
nblock = 2;
} else {
- if ((udata.u_offset|udata.u_count) & 0x1FF)
+ if (((uint16_t)udata.u_offset|udata.u_count) & BLKMASK)
goto bad2;
dptr = (uint16_t)udata.u_base;
block = udata.u_offset >> 9;
nblock = 2;
hd_page = 0; /* Kernel */
} else if (rawflag == 1) {
- if ((udata.u_offset|udata.u_count) & 0x1FF)
+ if (((uint16_t)udata.u_offset|udata.u_count) & BLKMASK)
goto bad2;
dptr = (uint16_t)udata.u_base;
nblock = udata.u_count >> 9;
block = udata.u_buf->bf_blk;
betacount = 2;
} else {
- if ((udata.u_offset|udata.u_count) & 0x1FF)
+ if (((uint16_t)udata.u_offset|udata.u_count) & BLKMASK)
goto bad2;
betaaddr = (uint16_t)udata.u_base;
block = udata.u_offset >> 9;
block = udata.u_buf->bf_blk;
nblock = 1;
} else {
- if ((udata.u_offset|udata.u_count) & 0x1FF)
+ if (((uint16_t)udata.u_offset|udata.u_count) & BLKMASK)
goto bad2;
dptr = (uint16_t)udata.u_base;
block = udata.u_offset >> 9;
mdv_page = 0;
} else {
/* Direct to user */
- if ((udata.u_offset|udata.u_count) & 0x1FF)
+ if (((uint16_t)udata.u_offset|udata.u_count) & BLKMASK)
goto bad;
mdv_buf = (uint8_t *)udata.u_buf->bf_blk;
nblock = udata.u_count >> 9;