xad
int xad)
return regs->mdio_100base_t1 | (phy << 7) | (op << 5) | (xad << 0);
xad_t xad;
XADoffset(&xad, lblock64);
XADlength(&xad, xlen);
XADaddress(&xad, xaddr);
rc = extRecord(ip, &xad);
if ((rc = extHint(ip, lblock64 << ip->i_sb->s_blocksize_bits, &xad)))
rc = extAlloc(ip, xlen, lblock64, &xad, false);
map_bh(bh_result, ip->i_sb, addressXAD(&xad));
bh_result->b_size = lengthXAD(&xad) << ip->i_blkbits;
xad_t *xad;
memcpy(&xp->xad[lv->offset], &p->xad[lv->offset],
xad = &xp->xad[XTENTRYSTART];
n < le16_to_cpu(xp->header.nextindex); n++, xad++)
if (xad->flag & (XAD_NEW | XAD_EXTENDED))
xad->flag &= ~(XAD_NEW | XAD_EXTENDED);
xad_t *xad;
memcpy(&xp->xad[lv->offset], &p->xad[lv->offset],
xad = &xp->xad[XTENTRYSTART];
n < le16_to_cpu(xp->header.nextindex); n++, xad++)
if (xad->flag & (XAD_NEW | XAD_EXTENDED))
xad->flag &= ~(XAD_NEW | XAD_EXTENDED);
#define invalidate_xad_metapages(ip, xad) \
__invalidate_metapages((ip), addressXAD(&(xad)), lengthXAD(&(xad)))
PXDaddress(pxd, addressXAD(&p->xad[lwm + i]));
PXDlength(pxd, lengthXAD(&p->xad[lwm + i]));
p->xad[lwm + i].flag &=
xadlock->xdlist = &p->xad[lwm];
addressXAD(&p->xad[XTENTRYSTART + i]));
lengthXAD(&p->xad[XTENTRYSTART + i]));
xadlock->xdlist = &p->xad[XTENTRYSTART];
xadlock->xdlist = &p->xad[lwm];
xadlock->xdlist = &p->xad[next];
xad_t *xad;
xad = xadlistlock->xdlist;
for (n = 0; n < xadlistlock->count; n++, xad++) {
if (xad->flag & (XAD_NEW | XAD_EXTENDED)) {
xaddr = addressXAD(xad);
xlen = lengthXAD(xad);
xad->flag &= ~(XAD_NEW | XAD_EXTENDED);
xad_t *xad;
xad = xadlistlock->xdlist;
for (n = 0; n < xadlistlock->count; n++, xad++) {
if (!(xad->flag & XAD_NEW)) {
xaddr = addressXAD(xad);
xlen = lengthXAD(xad);
xad = xadlistlock->xdlist;
for (n = 0; n < xadlistlock->count; n++, xad++) {
xaddr = addressXAD(xad);
xlen = lengthXAD(xad);
xad->flag = 0;
xad = &rp->xad[XTENTRYSTART];
XT_PUTENTRY(xad, split->flag, split->off, split->len,
memmove(&rp->xad[XTENTRYSTART], &sp->xad[middle],
memmove(&sp->xad[skip + 1], &sp->xad[skip],
xad = &sp->xad[skip];
XT_PUTENTRY(xad, split->flag, split->off, split->len,
memmove(&rp->xad[XTENTRYSTART], &sp->xad[middle],
xad = &rp->xad[n];
XT_PUTENTRY(xad, split->flag, split->off, split->len,
memmove(&rp->xad[n + 1], &sp->xad[skip],
xad_t *xad;
memmove(&rp->xad[XTENTRYSTART], &sp->xad[XTENTRYSTART],
memmove(&rp->xad[skip + 1], &rp->xad[skip],
xad = &rp->xad[skip];
XT_PUTENTRY(xad, split->flag, split->off, split->len, split->addr);
xad = &sp->xad[XTENTRYSTART];
XT_PUTENTRY(xad, XAD_NEW, 0, JFS_SBI(ip->i_sb)->nbperpage, rbn);
xad_t *xad;
xad = &p->xad[index];
if ((offsetXAD(xad) + lengthXAD(xad)) != xoff) {
xlen = lengthXAD(xad) + xlen;
xoff = offsetXAD(xad) + MAXXLEN;
xaddr = addressXAD(xad) + MAXXLEN;
xad = &p->xad[XTENTRYSTART];
bn = addressXAD(xad);
xad = &p->xad[index + 1];
XT_PUTENTRY(xad, XAD_NEW, xoff, len, xaddr);
xad = &p->xad[index];
xad_t *xad;
XADlength(xad, xlen);
if (!(xad->flag & XAD_NEW))
xad->flag |= XAD_EXTENDED;
xad_t *xad, *lxad, *rxad;
xad = &p->xad[index0];
xflag = xad->flag;
xoff = offsetXAD(xad);
xlen = lengthXAD(xad);
xaddr = addressXAD(xad);
lxad = &p->xad[index - 1];
XADoffset(xad, xoff + nxlen);
XADlength(xad, xlen - nxlen);
XADaddress(xad, xaddr + nxlen);
memmove(&p->xad[index], &p->xad[index + 1],
*xad = *nxad;
xad->flag = xflag & ~XAD_NOTRECORDED;
rxad = &p->xad[index + 1];
XADlength(xad, xlen - nxlen);
memmove(&p->xad[index], &p->xad[index + 1],
xad = &p->xad[index];
XADlength(xad, nxoff - xoff);
xad = &p->xad[XTENTRYSTART];
bn = addressXAD(xad);
memmove(&p->xad[newindex + 1], &p->xad[newindex],
xad = &p->xad[newindex];
*xad = *nxad;
xad->flag = xflag & ~XAD_NOTRECORDED;
xad = &p->xad[index];
*xad = *nxad;
xad->flag = xflag & ~XAD_NOTRECORDED;
xad = &p->xad[XTENTRYSTART];
bn = addressXAD(xad);
memmove(&p->xad[newindex + 1], &p->xad[newindex],
xad = &p->xad[newindex];
XT_PUTENTRY(xad, xflag, xoff, xlen, xaddr);
xad = &p->xad[index];
xoff = offsetXAD(xad);
xad_t *xad;
xlen = lengthXAD(xad);
xaddr = addressXAD(xad);
*pflag = xad->flag;
xad = &p->xad[index];
XT_PUTENTRY(xad, xflag, xoff, xlen, xaddr);
xad_t *xad;
xad = &p->xad[index];
xoff = offsetXAD(xad);
xlen = lengthXAD(xad);
xad = &p->xad[index];
xoff = offsetXAD(xad);
xlen = lengthXAD(xad);
xaddr = addressXAD(xad);
invalidate_xad_metapages(ip, *xad);
xad_t *xad;
XADlength(xad, len);
xadlock.xdlist = &p->xad[nextindex];
xadlock.xdlist = &p->xad[XTENTRYSTART];
xadlock.xdlist = &p->xad[index + 1];
nfreed += lengthXAD(&p->xad[index]);
xadlock.xdlist = &p->xad[XTENTRYSTART];
xad = &p->xad[index];
bn = addressXAD(xad);
xad_t *xad;
xad = &p->xad[index];
xoff = offsetXAD(xad);
xlen = lengthXAD(xad);
xad = &p->xad[index];
t64 = offsetXAD(xad);
if (xoff < t64 + lengthXAD(xad)) {
xad = &p->xad[index];
bn = addressXAD(xad);
xad++;
t64 = offsetXAD(xad);
if (xoff < t64 + lengthXAD(xad)) {
XT_CMP(cmp, xoff, &p->xad[index], t64);
next = offsetXAD(&p->xad[index + 1]);
next = offsetXAD(&p->xad[base]);
bn = addressXAD(&p->xad[index]);
xad_t *xad;
xad = &p->xad[index - 1];
hint = addressXAD(xad) + lengthXAD(xad) - 1;
memmove(&p->xad[index + 1], &p->xad[index],
xad = &p->xad[index];
XT_PUTENTRY(xad, xflag, xoff, xlen, xaddr);
xad_t *xad;
memmove(&sp->xad[skip + 1], &sp->xad[skip],
xad = &sp->xad[skip];
XT_PUTENTRY(xad, split->flag, split->off, split->len,
split->off = offsetXAD(&rcp->xad[XTENTRYSTART]);
memmove(&sp->xad[skip + 1], &sp->xad[skip],
xad = &sp->xad[skip];
XT_PUTENTRY(xad, XAD_NEW,
offsetXAD(&rcp->xad[XTENTRYSTART]),
xad_t *xad;
extern int xtUpdate(tid_t tid, struct inode *ip, struct xad *nxad);
#define XADoffset(xad, offset64)\
(xad)->off1 = ((u64)offset64) >> 32;\
(xad)->off2 = __cpu_to_le32((offset64) & 0xffffffff);\
#define XADaddress(xad, address64) PXDaddress(&(xad)->loc, address64)
#define XADlength(xad, length32) PXDlength(&(xad)->loc, length32)
#define offsetXAD(xad)\
( ((s64)((xad)->off1)) << 32 | __le32_to_cpu((xad)->off2))
#define addressXAD(xad) addressPXD(&(xad)->loc)
#define lengthXAD(xad) lengthPXD(&(xad)->loc)
xad_t *xad;
xad_t xad[XTROOTMAXSLOT]; /* 16 * maxentry: xad array */
xad_t xad[XTPAGEMAXSLOT]; /* 16 * maxentry: xad array */