Message ID | 1354566254-546-1-git-send-email-steved@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 12/03/2012 15:24, Steve Dickson wrote: > This patch cleans up a number compile warnings when the > label NFS code exists but is not configured to compile. > > Signed-off-by: Steve Dickson <steved@redhat.com> > --- > fs/nfs/nfs4proc.c | 36 ++++++++++++++++++++++++------------ > include/linux/nfs_fs.h | 4 ++-- > 2 files changed, 26 insertions(+), 14 deletions(-) > > diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c > index 2c8dd55..02e3303 100644 > --- a/fs/nfs/nfs4proc.c > +++ b/fs/nfs/nfs4proc.c > @@ -926,8 +926,8 @@ err_free_label: > #ifdef CONFIG_NFS_V4_SECURITY_LABEL > if (server->caps & NFS_CAP_SECURITY_LABEL) > nfs4_label_free(p->f_label); > -#endif > err_free_p: > +#endif > kfree(p); > err: > dput(parent); > @@ -2438,9 +2438,10 @@ static struct inode * > nfs4_atomic_open(struct inode *dir, struct nfs_open_context *ctx, > int open_flags, struct iattr *attr) > { > struct nfs4_state *state; > - struct nfs4_label l, *label = NULL; > - > + struct nfs4_label *label = NULL; > #ifdef CONFIG_NFS_V4_SECURITY_LABEL > + struct nfs4_label l; > + > if (nfs_server_capable(dir, NFS_CAP_SECURITY_LABEL)) { > struct dentry *dentry = ctx->dentry; > int error; > @@ -3026,8 +3027,8 @@ static int _nfs4_proc_access(struct inode > *inode, struct nfs_access_entry *entry > #ifdef CONFIG_NFS_V4_SECURITY_LABEL > if (server->caps & NFS_CAP_SECURITY_LABEL) > nfs4_label_free(res.label); > -#endif > out: > +#endif > nfs_free_fattr(res.fattr); > return status; > } > @@ -3105,7 +3106,10 @@ static int > nfs4_proc_create(struct inode *dir, struct dentry *dentry, struct > iattr *sattr, > int flags) > { > - struct nfs4_label l, *ilabel = NULL; > + struct nfs4_label *ilabel = NULL; > +#ifdef CONFIG_NFS_V4_SECURITY_LABEL > + struct nfs4_label l; > +#endif > struct nfs_open_context *ctx; > struct nfs4_state *state; > int status = 0; > @@ -3298,8 +3302,8 @@ static int _nfs4_proc_rename(struct inode > *old_dir, struct qstr *old_name, > nfs4_label_free(res.old_label); > nfs4_label_free(res.new_label); > } > -#endif > out: > +#endif > return status; > } > > @@ -3418,7 +3422,9 @@ static struct nfs4_createdata > *nfs4_alloc_createdata(struct inode *dir, > nfs_fattr_init(data->res.fattr); > } > return data; > +#ifdef CONFIG_NFS_V4_SECURITY_LABEL > out_free: > +#endif > kfree(data); > return NULL; > } > @@ -3474,11 +3480,11 @@ static int nfs4_proc_symlink(struct inode > *dir, struct dentry *dentry, > struct page *page, unsigned int len, struct iattr *sattr) > { > struct nfs4_exception exception = { }; > - struct nfs4_label l, *label = NULL; > int err; > - > - > + struct nfs4_label *label = NULL; > #ifdef CONFIG_NFS_V4_SECURITY_LABEL > + struct nfs4_label l; > + > if (nfs_server_capable(dir, NFS_CAP_SECURITY_LABEL)) { > err = security_dentry_init_security(dentry, sattr->ia_mode, > &dentry->d_name, &l.label, &l.len); > @@ -3522,7 +3528,10 @@ static int nfs4_proc_mkdir(struct inode *dir, > struct dentry *dentry, > struct iattr *sattr) > { > struct nfs4_exception exception = { }; > - struct nfs4_label l, *label = NULL; > + struct nfs4_label *label = NULL; > +#ifdef CONFIG_NFS_V4_SECURITY_LABEL > + struct nfs4_label l; > +#endif > int err; > > #ifdef CONFIG_NFS_V4_SECURITY_LABEL > @@ -3640,9 +3649,12 @@ out: > static int nfs4_proc_mknod(struct inode *dir, struct dentry *dentry, > struct iattr *sattr, dev_t rdev) > { > - struct nfs4_exception exception = { }; > - struct nfs4_label l, *label = NULL; > int err; > + struct nfs4_exception exception = { }; > + struct nfs4_label *label = NULL; > +#ifdef CONFIG_NFS_V4_SECURITY_LABEL > + struct nfs4_label l; > +#endif > > #ifdef CONFIG_NFS_V4_SECURITY_LABEL > if (nfs_server_capable(dir, NFS_CAP_SECURITY_LABEL)) { > diff --git a/include/linux/nfs_fs.h b/include/linux/nfs_fs.h > index 2ef01f8..f4bb5c4 100644 > --- a/include/linux/nfs_fs.h > +++ b/include/linux/nfs_fs.h > @@ -502,8 +502,8 @@ extern void nfs4_label_init(struct nfs4_label *); > extern void nfs4_label_free(struct nfs4_label *); > #else > static inline struct nfs4_label *nfs4_label_alloc(gfp_t flags) { > return NULL; } > -static inline void nfs4_label_init(struct nfs4_label *) {} > -static inline void nfs4_label_free(struct nfs4_label *label) {} > +static inline void nfs4_label_init(void *label) {} > +static inline void nfs4_label_free(void *label) {} > #endif > > /* Thanks for the patch. The question I have here is should I tag Steve's patch on the end of the patch set or should I integrate it back into the original patches? Dave -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
T24gTW9uLCAyMDEyLTEyLTAzIGF0IDE2OjE4IC0wNTAwLCBEYXZpZCBRdWlnbGV5IHdyb3RlOg0K PiBPbiAxMi8wMy8yMDEyIDE1OjI0LCBTdGV2ZSBEaWNrc29uIHdyb3RlOg0KPiA+IFRoaXMgcGF0 Y2ggY2xlYW5zIHVwIGEgbnVtYmVyIGNvbXBpbGUgd2FybmluZ3Mgd2hlbiB0aGUNCj4gPiBsYWJl bCBORlMgY29kZSBleGlzdHMgYnV0IGlzIG5vdCBjb25maWd1cmVkIHRvIGNvbXBpbGUuDQo+ID4N Cj4gPiBTaWduZWQtb2ZmLWJ5OiBTdGV2ZSBEaWNrc29uIDxzdGV2ZWRAcmVkaGF0LmNvbT4NCj4g PiAtLS0NCj4gPiAgZnMvbmZzL25mczRwcm9jLmMgICAgICB8IDM2ICsrKysrKysrKysrKysrKysr KysrKysrKy0tLS0tLS0tLS0tLQ0KPiA+ICBpbmNsdWRlL2xpbnV4L25mc19mcy5oIHwgIDQgKyst LQ0KPiA+ICAyIGZpbGVzIGNoYW5nZWQsIDI2IGluc2VydGlvbnMoKyksIDE0IGRlbGV0aW9ucygt KQ0KPiA+DQo+ID4gZGlmZiAtLWdpdCBhL2ZzL25mcy9uZnM0cHJvYy5jIGIvZnMvbmZzL25mczRw cm9jLmMNCj4gPiBpbmRleCAyYzhkZDU1Li4wMmUzMzAzIDEwMDY0NA0KPiA+IC0tLSBhL2ZzL25m cy9uZnM0cHJvYy5jDQo+ID4gKysrIGIvZnMvbmZzL25mczRwcm9jLmMNCj4gPiBAQCAtOTI2LDgg KzkyNiw4IEBAIGVycl9mcmVlX2xhYmVsOg0KPiA+ICAjaWZkZWYgQ09ORklHX05GU19WNF9TRUNV UklUWV9MQUJFTA0KPiA+ICAJaWYgKHNlcnZlci0+Y2FwcyAmIE5GU19DQVBfU0VDVVJJVFlfTEFC RUwpDQo+ID4gIAkJbmZzNF9sYWJlbF9mcmVlKHAtPmZfbGFiZWwpOw0KPiA+IC0jZW5kaWYNCj4g PiAgZXJyX2ZyZWVfcDoNCj4gPiArI2VuZGlmDQo+ID4gIAlrZnJlZShwKTsNCj4gPiAgZXJyOg0K PiA+ICAJZHB1dChwYXJlbnQpOw0KPiA+IEBAIC0yNDM4LDkgKzI0MzgsMTAgQEAgc3RhdGljIHN0 cnVjdCBpbm9kZSAqDQo+ID4gIG5mczRfYXRvbWljX29wZW4oc3RydWN0IGlub2RlICpkaXIsIHN0 cnVjdCBuZnNfb3Blbl9jb250ZXh0ICpjdHgsDQo+ID4gaW50IG9wZW5fZmxhZ3MsIHN0cnVjdCBp YXR0ciAqYXR0cikNCj4gPiAgew0KPiA+ICAJc3RydWN0IG5mczRfc3RhdGUgKnN0YXRlOw0KPiA+ IC0Jc3RydWN0IG5mczRfbGFiZWwgbCwgKmxhYmVsID0gTlVMTDsNCj4gPiAtDQo+ID4gKwlzdHJ1 Y3QgbmZzNF9sYWJlbCAqbGFiZWwgPSBOVUxMOw0KPiA+ICAjaWZkZWYgQ09ORklHX05GU19WNF9T RUNVUklUWV9MQUJFTA0KPiA+ICsJc3RydWN0IG5mczRfbGFiZWwgbDsNCj4gPiArDQo+ID4gIAlp ZiAobmZzX3NlcnZlcl9jYXBhYmxlKGRpciwgTkZTX0NBUF9TRUNVUklUWV9MQUJFTCkpIHsNCj4g PiAgCQlzdHJ1Y3QgZGVudHJ5ICpkZW50cnkgPSBjdHgtPmRlbnRyeTsNCj4gPiAgCQlpbnQgZXJy b3I7DQo+ID4gQEAgLTMwMjYsOCArMzAyNyw4IEBAIHN0YXRpYyBpbnQgX25mczRfcHJvY19hY2Nl c3Moc3RydWN0IGlub2RlDQo+ID4gKmlub2RlLCBzdHJ1Y3QgbmZzX2FjY2Vzc19lbnRyeSAqZW50 cnkNCj4gPiAgI2lmZGVmIENPTkZJR19ORlNfVjRfU0VDVVJJVFlfTEFCRUwNCj4gPiAgCWlmIChz ZXJ2ZXItPmNhcHMgJiBORlNfQ0FQX1NFQ1VSSVRZX0xBQkVMKQ0KPiA+ICAJCW5mczRfbGFiZWxf ZnJlZShyZXMubGFiZWwpOw0KPiA+IC0jZW5kaWYNCj4gPiAgb3V0Og0KPiA+ICsjZW5kaWYNCj4g PiAgCW5mc19mcmVlX2ZhdHRyKHJlcy5mYXR0cik7DQo+ID4gIAlyZXR1cm4gc3RhdHVzOw0KPiA+ ICB9DQo+ID4gQEAgLTMxMDUsNyArMzEwNiwxMCBAQCBzdGF0aWMgaW50DQo+ID4gIG5mczRfcHJv Y19jcmVhdGUoc3RydWN0IGlub2RlICpkaXIsIHN0cnVjdCBkZW50cnkgKmRlbnRyeSwgc3RydWN0 DQo+ID4gaWF0dHIgKnNhdHRyLA0KPiA+ICAJCSBpbnQgZmxhZ3MpDQo+ID4gIHsNCj4gPiAtCXN0 cnVjdCBuZnM0X2xhYmVsIGwsICppbGFiZWwgPSBOVUxMOw0KPiA+ICsJc3RydWN0IG5mczRfbGFi ZWwgKmlsYWJlbCA9IE5VTEw7DQo+ID4gKyNpZmRlZiBDT05GSUdfTkZTX1Y0X1NFQ1VSSVRZX0xB QkVMDQo+ID4gKwlzdHJ1Y3QgbmZzNF9sYWJlbCBsOw0KPiA+ICsjZW5kaWYNCj4gPiAgCXN0cnVj dCBuZnNfb3Blbl9jb250ZXh0ICpjdHg7DQo+ID4gIAlzdHJ1Y3QgbmZzNF9zdGF0ZSAqc3RhdGU7 DQo+ID4gIAlpbnQgc3RhdHVzID0gMDsNCj4gPiBAQCAtMzI5OCw4ICszMzAyLDggQEAgc3RhdGlj IGludCBfbmZzNF9wcm9jX3JlbmFtZShzdHJ1Y3QgaW5vZGUNCj4gPiAqb2xkX2Rpciwgc3RydWN0 IHFzdHIgKm9sZF9uYW1lLA0KPiA+ICAJCW5mczRfbGFiZWxfZnJlZShyZXMub2xkX2xhYmVsKTsN Cj4gPiAgCQluZnM0X2xhYmVsX2ZyZWUocmVzLm5ld19sYWJlbCk7DQo+ID4gIAl9DQo+ID4gLSNl bmRpZg0KPiA+ICBvdXQ6DQo+ID4gKyNlbmRpZg0KPiA+ICAJcmV0dXJuIHN0YXR1czsNCj4gPiAg fQ0KPiA+DQo+ID4gQEAgLTM0MTgsNyArMzQyMiw5IEBAIHN0YXRpYyBzdHJ1Y3QgbmZzNF9jcmVh dGVkYXRhDQo+ID4gKm5mczRfYWxsb2NfY3JlYXRlZGF0YShzdHJ1Y3QgaW5vZGUgKmRpciwNCj4g PiAgCQluZnNfZmF0dHJfaW5pdChkYXRhLT5yZXMuZmF0dHIpOw0KPiA+ICAJfQ0KPiA+ICAJcmV0 dXJuIGRhdGE7DQo+ID4gKyNpZmRlZiBDT05GSUdfTkZTX1Y0X1NFQ1VSSVRZX0xBQkVMDQo+ID4g IG91dF9mcmVlOg0KPiA+ICsjZW5kaWYNCj4gPiAgCWtmcmVlKGRhdGEpOw0KPiA+ICAJcmV0dXJu IE5VTEw7DQo+ID4gIH0NCj4gPiBAQCAtMzQ3NCwxMSArMzQ4MCwxMSBAQCBzdGF0aWMgaW50IG5m czRfcHJvY19zeW1saW5rKHN0cnVjdCBpbm9kZQ0KPiA+ICpkaXIsIHN0cnVjdCBkZW50cnkgKmRl bnRyeSwNCj4gPiAgCQlzdHJ1Y3QgcGFnZSAqcGFnZSwgdW5zaWduZWQgaW50IGxlbiwgc3RydWN0 IGlhdHRyICpzYXR0cikNCj4gPiAgew0KPiA+ICAJc3RydWN0IG5mczRfZXhjZXB0aW9uIGV4Y2Vw dGlvbiA9IHsgfTsNCj4gPiAtCXN0cnVjdCBuZnM0X2xhYmVsIGwsICpsYWJlbCA9IE5VTEw7DQo+ ID4gIAlpbnQgZXJyOw0KPiA+IC0NCj4gPiAtDQo+ID4gKwlzdHJ1Y3QgbmZzNF9sYWJlbCAqbGFi ZWwgPSBOVUxMOw0KPiA+ICAjaWZkZWYgQ09ORklHX05GU19WNF9TRUNVUklUWV9MQUJFTA0KPiA+ ICsJc3RydWN0IG5mczRfbGFiZWwgbDsNCj4gPiArDQo+ID4gIAlpZiAobmZzX3NlcnZlcl9jYXBh YmxlKGRpciwgTkZTX0NBUF9TRUNVUklUWV9MQUJFTCkpIHsNCj4gPiAgCQllcnIgPSBzZWN1cml0 eV9kZW50cnlfaW5pdF9zZWN1cml0eShkZW50cnksIHNhdHRyLT5pYV9tb2RlLA0KPiA+ICAJCQkJ CSZkZW50cnktPmRfbmFtZSwgJmwubGFiZWwsICZsLmxlbik7DQo+ID4gQEAgLTM1MjIsNyArMzUy OCwxMCBAQCBzdGF0aWMgaW50IG5mczRfcHJvY19ta2RpcihzdHJ1Y3QgaW5vZGUgKmRpciwNCj4g PiBzdHJ1Y3QgZGVudHJ5ICpkZW50cnksDQo+ID4gIAkJc3RydWN0IGlhdHRyICpzYXR0cikNCj4g PiAgew0KPiA+ICAJc3RydWN0IG5mczRfZXhjZXB0aW9uIGV4Y2VwdGlvbiA9IHsgfTsNCj4gPiAt CXN0cnVjdCBuZnM0X2xhYmVsIGwsICpsYWJlbCA9IE5VTEw7DQo+ID4gKwlzdHJ1Y3QgbmZzNF9s YWJlbCAqbGFiZWwgPSBOVUxMOw0KPiA+ICsjaWZkZWYgQ09ORklHX05GU19WNF9TRUNVUklUWV9M QUJFTA0KPiA+ICsJc3RydWN0IG5mczRfbGFiZWwgbDsNCj4gPiArI2VuZGlmDQo+ID4gIAlpbnQg ZXJyOw0KPiA+DQo+ID4gICNpZmRlZiBDT05GSUdfTkZTX1Y0X1NFQ1VSSVRZX0xBQkVMDQo+ID4g QEAgLTM2NDAsOSArMzY0OSwxMiBAQCBvdXQ6DQo+ID4gIHN0YXRpYyBpbnQgbmZzNF9wcm9jX21r bm9kKHN0cnVjdCBpbm9kZSAqZGlyLCBzdHJ1Y3QgZGVudHJ5ICpkZW50cnksDQo+ID4gIAkJc3Ry dWN0IGlhdHRyICpzYXR0ciwgZGV2X3QgcmRldikNCj4gPiAgew0KPiA+IC0Jc3RydWN0IG5mczRf ZXhjZXB0aW9uIGV4Y2VwdGlvbiA9IHsgfTsNCj4gPiAtCXN0cnVjdCBuZnM0X2xhYmVsIGwsICps YWJlbCA9IE5VTEw7DQo+ID4gIAlpbnQgZXJyOw0KPiA+ICsJc3RydWN0IG5mczRfZXhjZXB0aW9u IGV4Y2VwdGlvbiA9IHsgfTsNCj4gPiArCXN0cnVjdCBuZnM0X2xhYmVsICpsYWJlbCA9IE5VTEw7 DQo+ID4gKyNpZmRlZiBDT05GSUdfTkZTX1Y0X1NFQ1VSSVRZX0xBQkVMDQo+ID4gKwlzdHJ1Y3Qg bmZzNF9sYWJlbCBsOw0KPiA+ICsjZW5kaWYNCj4gPg0KPiA+ICAjaWZkZWYgQ09ORklHX05GU19W NF9TRUNVUklUWV9MQUJFTA0KPiA+ICAJaWYgKG5mc19zZXJ2ZXJfY2FwYWJsZShkaXIsIE5GU19D QVBfU0VDVVJJVFlfTEFCRUwpKSB7DQo+ID4gZGlmZiAtLWdpdCBhL2luY2x1ZGUvbGludXgvbmZz X2ZzLmggYi9pbmNsdWRlL2xpbnV4L25mc19mcy5oDQo+ID4gaW5kZXggMmVmMDFmOC4uZjRiYjVj NCAxMDA2NDQNCj4gPiAtLS0gYS9pbmNsdWRlL2xpbnV4L25mc19mcy5oDQo+ID4gKysrIGIvaW5j bHVkZS9saW51eC9uZnNfZnMuaA0KPiA+IEBAIC01MDIsOCArNTAyLDggQEAgZXh0ZXJuIHZvaWQg bmZzNF9sYWJlbF9pbml0KHN0cnVjdCBuZnM0X2xhYmVsICopOw0KPiA+ICBleHRlcm4gdm9pZCBu ZnM0X2xhYmVsX2ZyZWUoc3RydWN0IG5mczRfbGFiZWwgKik7DQo+ID4gICNlbHNlDQo+ID4gIHN0 YXRpYyBpbmxpbmUgc3RydWN0IG5mczRfbGFiZWwgKm5mczRfbGFiZWxfYWxsb2MoZ2ZwX3QgZmxh Z3MpIHsNCj4gPiByZXR1cm4gTlVMTDsgfQ0KPiA+IC1zdGF0aWMgaW5saW5lIHZvaWQgbmZzNF9s YWJlbF9pbml0KHN0cnVjdCBuZnM0X2xhYmVsICopIHt9DQo+ID4gLXN0YXRpYyBpbmxpbmUgdm9p ZCBuZnM0X2xhYmVsX2ZyZWUoc3RydWN0IG5mczRfbGFiZWwgKmxhYmVsKSB7fQ0KPiA+ICtzdGF0 aWMgaW5saW5lIHZvaWQgbmZzNF9sYWJlbF9pbml0KHZvaWQgKmxhYmVsKSB7fQ0KPiA+ICtzdGF0 aWMgaW5saW5lIHZvaWQgbmZzNF9sYWJlbF9mcmVlKHZvaWQgKmxhYmVsKSB7fQ0KPiA+ICAjZW5k aWYNCj4gPg0KPiA+ICAvKg0KPiANCj4gVGhhbmtzIGZvciB0aGUgcGF0Y2guIFRoZSBxdWVzdGlv biBJIGhhdmUgaGVyZSBpcyBzaG91bGQgSSB0YWcgU3RldmUncyANCj4gcGF0Y2ggb24gdGhlIGVu ZCBvZiB0aGUgcGF0Y2ggc2V0IG9yIHNob3VsZCBJIGludGVncmF0ZSBpdCBiYWNrIGludG8gdGhl IA0KPiBvcmlnaW5hbCBwYXRjaGVzPw0KDQpJdCBpcyB1cCB0byB5b3UsIGhvd2V2ZXIgaXQgd291 bGQgYmUgbmljZSB0byBoYXZlIHRoZSBmaW5hbCBwYXRjaCBzZXJpZXMNCmJlIGZ1bGx5IGJpc2Vj dGlibGUuDQoNCkNoZWVycw0KICBUcm9uZA0KLS0gDQpUcm9uZCBNeWtsZWJ1c3QNCkxpbnV4IE5G UyBjbGllbnQgbWFpbnRhaW5lcg0KDQpOZXRBcHANClRyb25kLk15a2xlYnVzdEBuZXRhcHAuY29t DQp3d3cubmV0YXBwLmNvbQ0K -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On 12/03/2012 16:24, Myklebust, Trond wrote: > On Mon, 2012-12-03 at 16:18 -0500, David Quigley wrote: >> On 12/03/2012 15:24, Steve Dickson wrote: >> > This patch cleans up a number compile warnings when the >> > label NFS code exists but is not configured to compile. >> > >> > Signed-off-by: Steve Dickson <steved@redhat.com> >> > --- >> > fs/nfs/nfs4proc.c | 36 ++++++++++++++++++++++++------------ >> > include/linux/nfs_fs.h | 4 ++-- >> > 2 files changed, 26 insertions(+), 14 deletions(-) >> > >> > diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c >> > index 2c8dd55..02e3303 100644 >> > --- a/fs/nfs/nfs4proc.c >> > +++ b/fs/nfs/nfs4proc.c >> > @@ -926,8 +926,8 @@ err_free_label: >> > #ifdef CONFIG_NFS_V4_SECURITY_LABEL >> > if (server->caps & NFS_CAP_SECURITY_LABEL) >> > nfs4_label_free(p->f_label); >> > -#endif >> > err_free_p: >> > +#endif >> > kfree(p); >> > err: >> > dput(parent); >> > @@ -2438,9 +2438,10 @@ static struct inode * >> > nfs4_atomic_open(struct inode *dir, struct nfs_open_context *ctx, >> > int open_flags, struct iattr *attr) >> > { >> > struct nfs4_state *state; >> > - struct nfs4_label l, *label = NULL; >> > - >> > + struct nfs4_label *label = NULL; >> > #ifdef CONFIG_NFS_V4_SECURITY_LABEL >> > + struct nfs4_label l; >> > + >> > if (nfs_server_capable(dir, NFS_CAP_SECURITY_LABEL)) { >> > struct dentry *dentry = ctx->dentry; >> > int error; >> > @@ -3026,8 +3027,8 @@ static int _nfs4_proc_access(struct inode >> > *inode, struct nfs_access_entry *entry >> > #ifdef CONFIG_NFS_V4_SECURITY_LABEL >> > if (server->caps & NFS_CAP_SECURITY_LABEL) >> > nfs4_label_free(res.label); >> > -#endif >> > out: >> > +#endif >> > nfs_free_fattr(res.fattr); >> > return status; >> > } >> > @@ -3105,7 +3106,10 @@ static int >> > nfs4_proc_create(struct inode *dir, struct dentry *dentry, struct >> > iattr *sattr, >> > int flags) >> > { >> > - struct nfs4_label l, *ilabel = NULL; >> > + struct nfs4_label *ilabel = NULL; >> > +#ifdef CONFIG_NFS_V4_SECURITY_LABEL >> > + struct nfs4_label l; >> > +#endif >> > struct nfs_open_context *ctx; >> > struct nfs4_state *state; >> > int status = 0; >> > @@ -3298,8 +3302,8 @@ static int _nfs4_proc_rename(struct inode >> > *old_dir, struct qstr *old_name, >> > nfs4_label_free(res.old_label); >> > nfs4_label_free(res.new_label); >> > } >> > -#endif >> > out: >> > +#endif >> > return status; >> > } >> > >> > @@ -3418,7 +3422,9 @@ static struct nfs4_createdata >> > *nfs4_alloc_createdata(struct inode *dir, >> > nfs_fattr_init(data->res.fattr); >> > } >> > return data; >> > +#ifdef CONFIG_NFS_V4_SECURITY_LABEL >> > out_free: >> > +#endif >> > kfree(data); >> > return NULL; >> > } >> > @@ -3474,11 +3480,11 @@ static int nfs4_proc_symlink(struct inode >> > *dir, struct dentry *dentry, >> > struct page *page, unsigned int len, struct iattr *sattr) >> > { >> > struct nfs4_exception exception = { }; >> > - struct nfs4_label l, *label = NULL; >> > int err; >> > - >> > - >> > + struct nfs4_label *label = NULL; >> > #ifdef CONFIG_NFS_V4_SECURITY_LABEL >> > + struct nfs4_label l; >> > + >> > if (nfs_server_capable(dir, NFS_CAP_SECURITY_LABEL)) { >> > err = security_dentry_init_security(dentry, sattr->ia_mode, >> > &dentry->d_name, &l.label, &l.len); >> > @@ -3522,7 +3528,10 @@ static int nfs4_proc_mkdir(struct inode >> *dir, >> > struct dentry *dentry, >> > struct iattr *sattr) >> > { >> > struct nfs4_exception exception = { }; >> > - struct nfs4_label l, *label = NULL; >> > + struct nfs4_label *label = NULL; >> > +#ifdef CONFIG_NFS_V4_SECURITY_LABEL >> > + struct nfs4_label l; >> > +#endif >> > int err; >> > >> > #ifdef CONFIG_NFS_V4_SECURITY_LABEL >> > @@ -3640,9 +3649,12 @@ out: >> > static int nfs4_proc_mknod(struct inode *dir, struct dentry >> *dentry, >> > struct iattr *sattr, dev_t rdev) >> > { >> > - struct nfs4_exception exception = { }; >> > - struct nfs4_label l, *label = NULL; >> > int err; >> > + struct nfs4_exception exception = { }; >> > + struct nfs4_label *label = NULL; >> > +#ifdef CONFIG_NFS_V4_SECURITY_LABEL >> > + struct nfs4_label l; >> > +#endif >> > >> > #ifdef CONFIG_NFS_V4_SECURITY_LABEL >> > if (nfs_server_capable(dir, NFS_CAP_SECURITY_LABEL)) { >> > diff --git a/include/linux/nfs_fs.h b/include/linux/nfs_fs.h >> > index 2ef01f8..f4bb5c4 100644 >> > --- a/include/linux/nfs_fs.h >> > +++ b/include/linux/nfs_fs.h >> > @@ -502,8 +502,8 @@ extern void nfs4_label_init(struct nfs4_label >> *); >> > extern void nfs4_label_free(struct nfs4_label *); >> > #else >> > static inline struct nfs4_label *nfs4_label_alloc(gfp_t flags) { >> > return NULL; } >> > -static inline void nfs4_label_init(struct nfs4_label *) {} >> > -static inline void nfs4_label_free(struct nfs4_label *label) {} >> > +static inline void nfs4_label_init(void *label) {} >> > +static inline void nfs4_label_free(void *label) {} >> > #endif >> > >> > /* >> >> Thanks for the patch. The question I have here is should I tag >> Steve's >> patch on the end of the patch set or should I integrate it back into >> the >> original patches? > > It is up to you, however it would be nice to have the final patch > series > be fully bisectible. > > Cheers > Trond Is it not currently bisectible? Before I release I apply each patch one by one and compile between them to make sure they build. Has anyone had problems with it not bisecting properly? -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, 2012-12-03 at 16:35 -0500, David Quigley wrote: > On 12/03/2012 16:24, Myklebust, Trond wrote: > > On Mon, 2012-12-03 at 16:18 -0500, David Quigley wrote: > >> On 12/03/2012 15:24, Steve Dickson wrote: > >> > This patch cleans up a number compile warnings when the > >> > label NFS code exists but is not configured to compile. > >> > > >> > Signed-off-by: Steve Dickson <steved@redhat.com> > >> > --- > >> > fs/nfs/nfs4proc.c | 36 ++++++++++++++++++++++++------------ > >> > include/linux/nfs_fs.h | 4 ++-- > >> > 2 files changed, 26 insertions(+), 14 deletions(-) > >> > > >> > diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c > >> > index 2c8dd55..02e3303 100644 > >> > --- a/fs/nfs/nfs4proc.c > >> > +++ b/fs/nfs/nfs4proc.c > >> > @@ -926,8 +926,8 @@ err_free_label: > >> > #ifdef CONFIG_NFS_V4_SECURITY_LABEL > >> > if (server->caps & NFS_CAP_SECURITY_LABEL) > >> > nfs4_label_free(p->f_label); > >> > -#endif > >> > err_free_p: > >> > +#endif > >> > kfree(p); > >> > err: > >> > dput(parent); > >> > @@ -2438,9 +2438,10 @@ static struct inode * > >> > nfs4_atomic_open(struct inode *dir, struct nfs_open_context *ctx, > >> > int open_flags, struct iattr *attr) > >> > { > >> > struct nfs4_state *state; > >> > - struct nfs4_label l, *label = NULL; > >> > - > >> > + struct nfs4_label *label = NULL; > >> > #ifdef CONFIG_NFS_V4_SECURITY_LABEL > >> > + struct nfs4_label l; > >> > + > >> > if (nfs_server_capable(dir, NFS_CAP_SECURITY_LABEL)) { > >> > struct dentry *dentry = ctx->dentry; > >> > int error; > >> > @@ -3026,8 +3027,8 @@ static int _nfs4_proc_access(struct inode > >> > *inode, struct nfs_access_entry *entry > >> > #ifdef CONFIG_NFS_V4_SECURITY_LABEL > >> > if (server->caps & NFS_CAP_SECURITY_LABEL) > >> > nfs4_label_free(res.label); > >> > -#endif > >> > out: > >> > +#endif > >> > nfs_free_fattr(res.fattr); > >> > return status; > >> > } > >> > @@ -3105,7 +3106,10 @@ static int > >> > nfs4_proc_create(struct inode *dir, struct dentry *dentry, struct > >> > iattr *sattr, > >> > int flags) > >> > { > >> > - struct nfs4_label l, *ilabel = NULL; > >> > + struct nfs4_label *ilabel = NULL; > >> > +#ifdef CONFIG_NFS_V4_SECURITY_LABEL > >> > + struct nfs4_label l; > >> > +#endif > >> > struct nfs_open_context *ctx; > >> > struct nfs4_state *state; > >> > int status = 0; > >> > @@ -3298,8 +3302,8 @@ static int _nfs4_proc_rename(struct inode > >> > *old_dir, struct qstr *old_name, > >> > nfs4_label_free(res.old_label); > >> > nfs4_label_free(res.new_label); > >> > } > >> > -#endif > >> > out: > >> > +#endif > >> > return status; > >> > } > >> > > >> > @@ -3418,7 +3422,9 @@ static struct nfs4_createdata > >> > *nfs4_alloc_createdata(struct inode *dir, > >> > nfs_fattr_init(data->res.fattr); > >> > } > >> > return data; > >> > +#ifdef CONFIG_NFS_V4_SECURITY_LABEL > >> > out_free: > >> > +#endif > >> > kfree(data); > >> > return NULL; > >> > } > >> > @@ -3474,11 +3480,11 @@ static int nfs4_proc_symlink(struct inode > >> > *dir, struct dentry *dentry, > >> > struct page *page, unsigned int len, struct iattr *sattr) > >> > { > >> > struct nfs4_exception exception = { }; > >> > - struct nfs4_label l, *label = NULL; > >> > int err; > >> > - > >> > - > >> > + struct nfs4_label *label = NULL; > >> > #ifdef CONFIG_NFS_V4_SECURITY_LABEL > >> > + struct nfs4_label l; > >> > + > >> > if (nfs_server_capable(dir, NFS_CAP_SECURITY_LABEL)) { > >> > err = security_dentry_init_security(dentry, sattr->ia_mode, > >> > &dentry->d_name, &l.label, &l.len); > >> > @@ -3522,7 +3528,10 @@ static int nfs4_proc_mkdir(struct inode > >> *dir, > >> > struct dentry *dentry, > >> > struct iattr *sattr) > >> > { > >> > struct nfs4_exception exception = { }; > >> > - struct nfs4_label l, *label = NULL; > >> > + struct nfs4_label *label = NULL; > >> > +#ifdef CONFIG_NFS_V4_SECURITY_LABEL > >> > + struct nfs4_label l; > >> > +#endif > >> > int err; > >> > > >> > #ifdef CONFIG_NFS_V4_SECURITY_LABEL > >> > @@ -3640,9 +3649,12 @@ out: > >> > static int nfs4_proc_mknod(struct inode *dir, struct dentry > >> *dentry, > >> > struct iattr *sattr, dev_t rdev) > >> > { > >> > - struct nfs4_exception exception = { }; > >> > - struct nfs4_label l, *label = NULL; > >> > int err; > >> > + struct nfs4_exception exception = { }; > >> > + struct nfs4_label *label = NULL; > >> > +#ifdef CONFIG_NFS_V4_SECURITY_LABEL > >> > + struct nfs4_label l; > >> > +#endif > >> > > >> > #ifdef CONFIG_NFS_V4_SECURITY_LABEL > >> > if (nfs_server_capable(dir, NFS_CAP_SECURITY_LABEL)) { > >> > diff --git a/include/linux/nfs_fs.h b/include/linux/nfs_fs.h > >> > index 2ef01f8..f4bb5c4 100644 > >> > --- a/include/linux/nfs_fs.h > >> > +++ b/include/linux/nfs_fs.h > >> > @@ -502,8 +502,8 @@ extern void nfs4_label_init(struct nfs4_label > >> *); > >> > extern void nfs4_label_free(struct nfs4_label *); > >> > #else > >> > static inline struct nfs4_label *nfs4_label_alloc(gfp_t flags) { > >> > return NULL; } > >> > -static inline void nfs4_label_init(struct nfs4_label *) {} > >> > -static inline void nfs4_label_free(struct nfs4_label *label) {} > >> > +static inline void nfs4_label_init(void *label) {} > >> > +static inline void nfs4_label_free(void *label) {} > >> > #endif > >> > > >> > /* > >> > >> Thanks for the patch. The question I have here is should I tag > >> Steve's > >> patch on the end of the patch set or should I integrate it back into > >> the > >> original patches? > > > > It is up to you, however it would be nice to have the final patch > > series > > be fully bisectible. > > > > Cheers > > Trond > > Is it not currently bisectible? Before I release I apply each patch one > by one and compile between them to make sure they build. Has anyone had > problems with it not bisecting properly? Never mind; I misread "compiler warnings" as referring to compiler errors. In that case, just append this patch. -- Trond Myklebust Linux NFS client maintainer NetApp Trond.Myklebust@netapp.com www.netapp.com
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c index 2c8dd55..02e3303 100644 --- a/fs/nfs/nfs4proc.c +++ b/fs/nfs/nfs4proc.c @@ -926,8 +926,8 @@ err_free_label: #ifdef CONFIG_NFS_V4_SECURITY_LABEL if (server->caps & NFS_CAP_SECURITY_LABEL) nfs4_label_free(p->f_label); -#endif err_free_p: +#endif kfree(p); err: dput(parent); @@ -2438,9 +2438,10 @@ static struct inode * nfs4_atomic_open(struct inode *dir, struct nfs_open_context *ctx, int open_flags, struct iattr *attr) { struct nfs4_state *state; - struct nfs4_label l, *label = NULL; - + struct nfs4_label *label = NULL; #ifdef CONFIG_NFS_V4_SECURITY_LABEL + struct nfs4_label l; + if (nfs_server_capable(dir, NFS_CAP_SECURITY_LABEL)) { struct dentry *dentry = ctx->dentry; int error; @@ -3026,8 +3027,8 @@ static int _nfs4_proc_access(struct inode *inode, struct nfs_access_entry *entry #ifdef CONFIG_NFS_V4_SECURITY_LABEL if (server->caps & NFS_CAP_SECURITY_LABEL) nfs4_label_free(res.label); -#endif out: +#endif nfs_free_fattr(res.fattr); return status; } @@ -3105,7 +3106,10 @@ static int nfs4_proc_create(struct inode *dir, struct dentry *dentry, struct iattr *sattr, int flags) { - struct nfs4_label l, *ilabel = NULL; + struct nfs4_label *ilabel = NULL; +#ifdef CONFIG_NFS_V4_SECURITY_LABEL + struct nfs4_label l; +#endif struct nfs_open_context *ctx; struct nfs4_state *state; int status = 0; @@ -3298,8 +3302,8 @@ static int _nfs4_proc_rename(struct inode *old_dir, struct qstr *old_name, nfs4_label_free(res.old_label); nfs4_label_free(res.new_label); } -#endif out: +#endif return status; } @@ -3418,7 +3422,9 @@ static struct nfs4_createdata *nfs4_alloc_createdata(struct inode *dir, nfs_fattr_init(data->res.fattr); } return data; +#ifdef CONFIG_NFS_V4_SECURITY_LABEL out_free: +#endif kfree(data); return NULL; } @@ -3474,11 +3480,11 @@ static int nfs4_proc_symlink(struct inode *dir, struct dentry *dentry, struct page *page, unsigned int len, struct iattr *sattr) { struct nfs4_exception exception = { }; - struct nfs4_label l, *label = NULL; int err; - - + struct nfs4_label *label = NULL; #ifdef CONFIG_NFS_V4_SECURITY_LABEL + struct nfs4_label l; + if (nfs_server_capable(dir, NFS_CAP_SECURITY_LABEL)) { err = security_dentry_init_security(dentry, sattr->ia_mode, &dentry->d_name, &l.label, &l.len); @@ -3522,7 +3528,10 @@ static int nfs4_proc_mkdir(struct inode *dir, struct dentry *dentry, struct iattr *sattr) { struct nfs4_exception exception = { }; - struct nfs4_label l, *label = NULL; + struct nfs4_label *label = NULL; +#ifdef CONFIG_NFS_V4_SECURITY_LABEL + struct nfs4_label l; +#endif int err; #ifdef CONFIG_NFS_V4_SECURITY_LABEL @@ -3640,9 +3649,12 @@ out: static int nfs4_proc_mknod(struct inode *dir, struct dentry *dentry, struct iattr *sattr, dev_t rdev) { - struct nfs4_exception exception = { }; - struct nfs4_label l, *label = NULL; int err; + struct nfs4_exception exception = { }; + struct nfs4_label *label = NULL; +#ifdef CONFIG_NFS_V4_SECURITY_LABEL + struct nfs4_label l; +#endif #ifdef CONFIG_NFS_V4_SECURITY_LABEL if (nfs_server_capable(dir, NFS_CAP_SECURITY_LABEL)) { diff --git a/include/linux/nfs_fs.h b/include/linux/nfs_fs.h index 2ef01f8..f4bb5c4 100644 --- a/include/linux/nfs_fs.h +++ b/include/linux/nfs_fs.h @@ -502,8 +502,8 @@ extern void nfs4_label_init(struct nfs4_label *); extern void nfs4_label_free(struct nfs4_label *); #else static inline struct nfs4_label *nfs4_label_alloc(gfp_t flags) { return NULL; } -static inline void nfs4_label_init(struct nfs4_label *) {} -static inline void nfs4_label_free(struct nfs4_label *label) {} +static inline void nfs4_label_init(void *label) {} +static inline void nfs4_label_free(void *label) {} #endif /*
This patch cleans up a number compile warnings when the label NFS code exists but is not configured to compile. Signed-off-by: Steve Dickson <steved@redhat.com> --- fs/nfs/nfs4proc.c | 36 ++++++++++++++++++++++++------------ include/linux/nfs_fs.h | 4 ++-- 2 files changed, 26 insertions(+), 14 deletions(-)