Re: [PATCH 3/5] nfsd4: define ->op_release for compound ops

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

 



Hi Bruce,

[auto build test ERROR on next-20170710]
[cannot apply to nfsd/nfsd-next v4.12 v4.12-rc7 v4.12-rc6 v4.12]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/J-Bruce-Fields/skip-op-encoders-in-error-cases/20170715-165807
config: sparc64-allyesconfig (attached as .config)
compiler: sparc64-linux-gnu-gcc (Debian 6.1.1-9) 6.1.1 20160705
reproduce:
        wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=sparc64 

All errors (new ones prefixed by >>):

   fs//nfsd/nfs4proc.c: In function 'nfsd4_getdeviceinfo_release':
   fs//nfsd/nfs4proc.c:1356:8: error: 'gdev' undeclared (first use in this function)
     kfree(gdev->gd_device);
           ^~~~
   fs//nfsd/nfs4proc.c:1356:8: note: each undeclared identifier is reported only once for each function it appears in
   fs//nfsd/nfs4proc.c: At top level:
   fs//nfsd/nfs4proc.c:1439:1: warning: return type defaults to 'int' [-Wreturn-type]
    nfsd4_layoutget_release(union nfsd4_op_u *u)
    ^~~~~~~~~~~~~~~~~~~~~~~
   fs//nfsd/nfs4proc.c: In function 'nfsd4_layoutget_release':
   fs//nfsd/nfs4proc.c:1441:8: error: 'lgp' undeclared (first use in this function)
     kfree(lgp->lg_content);
           ^~~
   fs//nfsd/nfs4proc.c: At top level:
>> fs//nfsd/nfs4proc.c:2401:17: error: initialization from incompatible pointer type [-Werror=incompatible-pointer-types]
      .op_release = nfsd4_layoutget_release,
                    ^~~~~~~~~~~~~~~~~~~~~~~
   fs//nfsd/nfs4proc.c:2401:17: note: (near initialization for 'nfsd4_ops[50].op_release')
   fs//nfsd/nfs4proc.c: In function 'nfsd4_layoutget_release':
   fs//nfsd/nfs4proc.c:1442:1: warning: control reaches end of non-void function [-Wreturn-type]
    }
    ^
   cc1: some warnings being treated as errors

vim +2401 fs//nfsd/nfs4proc.c

  2089	
  2090	static const struct nfsd4_operation nfsd4_ops[] = {
  2091		[OP_ACCESS] = {
  2092			.op_func = nfsd4_access,
  2093			.op_name = "OP_ACCESS",
  2094			.op_rsize_bop = nfsd4_access_rsize,
  2095		},
  2096		[OP_CLOSE] = {
  2097			.op_func = nfsd4_close,
  2098			.op_flags = OP_MODIFIES_SOMETHING,
  2099			.op_name = "OP_CLOSE",
  2100			.op_rsize_bop = nfsd4_status_stateid_rsize,
  2101			.op_get_currentstateid = nfsd4_get_closestateid,
  2102			.op_set_currentstateid = nfsd4_set_closestateid,
  2103		},
  2104		[OP_COMMIT] = {
  2105			.op_func = nfsd4_commit,
  2106			.op_flags = OP_MODIFIES_SOMETHING,
  2107			.op_name = "OP_COMMIT",
  2108			.op_rsize_bop = nfsd4_commit_rsize,
  2109		},
  2110		[OP_CREATE] = {
  2111			.op_func = nfsd4_create,
  2112			.op_flags = OP_MODIFIES_SOMETHING | OP_CACHEME | OP_CLEAR_STATEID,
  2113			.op_name = "OP_CREATE",
  2114			.op_rsize_bop = nfsd4_create_rsize,
  2115		},
  2116		[OP_DELEGRETURN] = {
  2117			.op_func = nfsd4_delegreturn,
  2118			.op_flags = OP_MODIFIES_SOMETHING,
  2119			.op_name = "OP_DELEGRETURN",
  2120			.op_rsize_bop = nfsd4_only_status_rsize,
  2121			.op_get_currentstateid = nfsd4_get_delegreturnstateid,
  2122		},
  2123		[OP_GETATTR] = {
  2124			.op_func = nfsd4_getattr,
  2125			.op_flags = ALLOWED_ON_ABSENT_FS,
  2126			.op_rsize_bop = nfsd4_getattr_rsize,
  2127			.op_name = "OP_GETATTR",
  2128		},
  2129		[OP_GETFH] = {
  2130			.op_func = nfsd4_getfh,
  2131			.op_name = "OP_GETFH",
  2132			.op_rsize_bop = nfsd4_getfh_rsize,
  2133		},
  2134		[OP_LINK] = {
  2135			.op_func = nfsd4_link,
  2136			.op_flags = ALLOWED_ON_ABSENT_FS | OP_MODIFIES_SOMETHING
  2137					| OP_CACHEME,
  2138			.op_name = "OP_LINK",
  2139			.op_rsize_bop = nfsd4_link_rsize,
  2140		},
  2141		[OP_LOCK] = {
  2142			.op_func = nfsd4_lock,
  2143			.op_flags = OP_MODIFIES_SOMETHING,
  2144			.op_name = "OP_LOCK",
  2145			.op_rsize_bop = nfsd4_lock_rsize,
  2146			.op_set_currentstateid = nfsd4_set_lockstateid,
  2147		},
  2148		[OP_LOCKT] = {
  2149			.op_func = nfsd4_lockt,
  2150			.op_name = "OP_LOCKT",
  2151			.op_rsize_bop = nfsd4_lock_rsize,
  2152		},
  2153		[OP_LOCKU] = {
  2154			.op_func = nfsd4_locku,
  2155			.op_flags = OP_MODIFIES_SOMETHING,
  2156			.op_name = "OP_LOCKU",
  2157			.op_rsize_bop = nfsd4_status_stateid_rsize,
  2158			.op_get_currentstateid = nfsd4_get_lockustateid,
  2159		},
  2160		[OP_LOOKUP] = {
  2161			.op_func = nfsd4_lookup,
  2162			.op_flags = OP_HANDLES_WRONGSEC | OP_CLEAR_STATEID,
  2163			.op_name = "OP_LOOKUP",
  2164			.op_rsize_bop = nfsd4_only_status_rsize,
  2165		},
  2166		[OP_LOOKUPP] = {
  2167			.op_func = nfsd4_lookupp,
  2168			.op_flags = OP_HANDLES_WRONGSEC | OP_CLEAR_STATEID,
  2169			.op_name = "OP_LOOKUPP",
  2170			.op_rsize_bop = nfsd4_only_status_rsize,
  2171		},
  2172		[OP_NVERIFY] = {
  2173			.op_func = nfsd4_nverify,
  2174			.op_name = "OP_NVERIFY",
  2175			.op_rsize_bop = nfsd4_only_status_rsize,
  2176		},
  2177		[OP_OPEN] = {
  2178			.op_func = nfsd4_open,
  2179			.op_flags = OP_HANDLES_WRONGSEC | OP_MODIFIES_SOMETHING,
  2180			.op_name = "OP_OPEN",
  2181			.op_rsize_bop = nfsd4_open_rsize,
  2182			.op_set_currentstateid = nfsd4_set_openstateid,
  2183		},
  2184		[OP_OPEN_CONFIRM] = {
  2185			.op_func = nfsd4_open_confirm,
  2186			.op_flags = OP_MODIFIES_SOMETHING,
  2187			.op_name = "OP_OPEN_CONFIRM",
  2188			.op_rsize_bop = nfsd4_status_stateid_rsize,
  2189		},
  2190		[OP_OPEN_DOWNGRADE] = {
  2191			.op_func = nfsd4_open_downgrade,
  2192			.op_flags = OP_MODIFIES_SOMETHING,
  2193			.op_name = "OP_OPEN_DOWNGRADE",
  2194			.op_rsize_bop = nfsd4_status_stateid_rsize,
  2195			.op_get_currentstateid = nfsd4_get_opendowngradestateid,
  2196			.op_set_currentstateid = nfsd4_set_opendowngradestateid,
  2197		},
  2198		[OP_PUTFH] = {
  2199			.op_func = nfsd4_putfh,
  2200			.op_flags = ALLOWED_WITHOUT_FH | ALLOWED_ON_ABSENT_FS
  2201					| OP_IS_PUTFH_LIKE | OP_CLEAR_STATEID,
  2202			.op_name = "OP_PUTFH",
  2203			.op_rsize_bop = nfsd4_only_status_rsize,
  2204		},
  2205		[OP_PUTPUBFH] = {
  2206			.op_func = nfsd4_putrootfh,
  2207			.op_flags = ALLOWED_WITHOUT_FH | ALLOWED_ON_ABSENT_FS
  2208					| OP_IS_PUTFH_LIKE | OP_CLEAR_STATEID,
  2209			.op_name = "OP_PUTPUBFH",
  2210			.op_rsize_bop = nfsd4_only_status_rsize,
  2211		},
  2212		[OP_PUTROOTFH] = {
  2213			.op_func = nfsd4_putrootfh,
  2214			.op_flags = ALLOWED_WITHOUT_FH | ALLOWED_ON_ABSENT_FS
  2215					| OP_IS_PUTFH_LIKE | OP_CLEAR_STATEID,
  2216			.op_name = "OP_PUTROOTFH",
  2217			.op_rsize_bop = nfsd4_only_status_rsize,
  2218		},
  2219		[OP_READ] = {
  2220			.op_func = nfsd4_read,
  2221			.op_release = nfsd4_read_release,
  2222			.op_name = "OP_READ",
  2223			.op_rsize_bop = nfsd4_read_rsize,
  2224			.op_get_currentstateid = nfsd4_get_readstateid,
  2225		},
  2226		[OP_READDIR] = {
  2227			.op_func = nfsd4_readdir,
  2228			.op_name = "OP_READDIR",
  2229			.op_rsize_bop = nfsd4_readdir_rsize,
  2230		},
  2231		[OP_READLINK] = {
  2232			.op_func = nfsd4_readlink,
  2233			.op_name = "OP_READLINK",
  2234			.op_rsize_bop = nfsd4_readlink_rsize,
  2235		},
  2236		[OP_REMOVE] = {
  2237			.op_func = nfsd4_remove,
  2238			.op_flags = OP_MODIFIES_SOMETHING | OP_CACHEME,
  2239			.op_name = "OP_REMOVE",
  2240			.op_rsize_bop = nfsd4_remove_rsize,
  2241		},
  2242		[OP_RENAME] = {
  2243			.op_func = nfsd4_rename,
  2244			.op_flags = OP_MODIFIES_SOMETHING | OP_CACHEME,
  2245			.op_name = "OP_RENAME",
  2246			.op_rsize_bop = nfsd4_rename_rsize,
  2247		},
  2248		[OP_RENEW] = {
  2249			.op_func = nfsd4_renew,
  2250			.op_flags = ALLOWED_WITHOUT_FH | ALLOWED_ON_ABSENT_FS
  2251					| OP_MODIFIES_SOMETHING,
  2252			.op_name = "OP_RENEW",
  2253			.op_rsize_bop = nfsd4_only_status_rsize,
  2254	
  2255		},
  2256		[OP_RESTOREFH] = {
  2257			.op_func = nfsd4_restorefh,
  2258			.op_flags = ALLOWED_WITHOUT_FH | ALLOWED_ON_ABSENT_FS
  2259					| OP_IS_PUTFH_LIKE | OP_MODIFIES_SOMETHING,
  2260			.op_name = "OP_RESTOREFH",
  2261			.op_rsize_bop = nfsd4_only_status_rsize,
  2262		},
  2263		[OP_SAVEFH] = {
  2264			.op_func = nfsd4_savefh,
  2265			.op_flags = OP_HANDLES_WRONGSEC | OP_MODIFIES_SOMETHING,
  2266			.op_name = "OP_SAVEFH",
  2267			.op_rsize_bop = nfsd4_only_status_rsize,
  2268		},
  2269		[OP_SECINFO] = {
  2270			.op_func = nfsd4_secinfo,
  2271			.op_release = nfsd4_secinfo_release,
  2272			.op_flags = OP_HANDLES_WRONGSEC,
  2273			.op_name = "OP_SECINFO",
  2274			.op_rsize_bop = nfsd4_secinfo_rsize,
  2275		},
  2276		[OP_SETATTR] = {
  2277			.op_func = nfsd4_setattr,
  2278			.op_name = "OP_SETATTR",
  2279			.op_flags = OP_MODIFIES_SOMETHING | OP_CACHEME,
  2280			.op_rsize_bop = nfsd4_setattr_rsize,
  2281			.op_get_currentstateid = nfsd4_get_setattrstateid,
  2282		},
  2283		[OP_SETCLIENTID] = {
  2284			.op_func = nfsd4_setclientid,
  2285			.op_flags = ALLOWED_WITHOUT_FH | ALLOWED_ON_ABSENT_FS
  2286					| OP_MODIFIES_SOMETHING | OP_CACHEME,
  2287			.op_name = "OP_SETCLIENTID",
  2288			.op_rsize_bop = nfsd4_setclientid_rsize,
  2289		},
  2290		[OP_SETCLIENTID_CONFIRM] = {
  2291			.op_func = nfsd4_setclientid_confirm,
  2292			.op_flags = ALLOWED_WITHOUT_FH | ALLOWED_ON_ABSENT_FS
  2293					| OP_MODIFIES_SOMETHING | OP_CACHEME,
  2294			.op_name = "OP_SETCLIENTID_CONFIRM",
  2295			.op_rsize_bop = nfsd4_only_status_rsize,
  2296		},
  2297		[OP_VERIFY] = {
  2298			.op_func = nfsd4_verify,
  2299			.op_name = "OP_VERIFY",
  2300			.op_rsize_bop = nfsd4_only_status_rsize,
  2301		},
  2302		[OP_WRITE] = {
  2303			.op_func = nfsd4_write,
  2304			.op_flags = OP_MODIFIES_SOMETHING | OP_CACHEME,
  2305			.op_name = "OP_WRITE",
  2306			.op_rsize_bop = nfsd4_write_rsize,
  2307			.op_get_currentstateid = nfsd4_get_writestateid,
  2308		},
  2309		[OP_RELEASE_LOCKOWNER] = {
  2310			.op_func = nfsd4_release_lockowner,
  2311			.op_flags = ALLOWED_WITHOUT_FH | ALLOWED_ON_ABSENT_FS
  2312					| OP_MODIFIES_SOMETHING,
  2313			.op_name = "OP_RELEASE_LOCKOWNER",
  2314			.op_rsize_bop = nfsd4_only_status_rsize,
  2315		},
  2316	
  2317		/* NFSv4.1 operations */
  2318		[OP_EXCHANGE_ID] = {
  2319			.op_func = nfsd4_exchange_id,
  2320			.op_flags = ALLOWED_WITHOUT_FH | ALLOWED_AS_FIRST_OP
  2321					| OP_MODIFIES_SOMETHING,
  2322			.op_name = "OP_EXCHANGE_ID",
  2323			.op_rsize_bop = nfsd4_exchange_id_rsize,
  2324		},
  2325		[OP_BACKCHANNEL_CTL] = {
  2326			.op_func = nfsd4_backchannel_ctl,
  2327			.op_flags = ALLOWED_WITHOUT_FH | OP_MODIFIES_SOMETHING,
  2328			.op_name = "OP_BACKCHANNEL_CTL",
  2329			.op_rsize_bop = nfsd4_only_status_rsize,
  2330		},
  2331		[OP_BIND_CONN_TO_SESSION] = {
  2332			.op_func = nfsd4_bind_conn_to_session,
  2333			.op_flags = ALLOWED_WITHOUT_FH | ALLOWED_AS_FIRST_OP
  2334					| OP_MODIFIES_SOMETHING,
  2335			.op_name = "OP_BIND_CONN_TO_SESSION",
  2336			.op_rsize_bop = nfsd4_bind_conn_to_session_rsize,
  2337		},
  2338		[OP_CREATE_SESSION] = {
  2339			.op_func = nfsd4_create_session,
  2340			.op_flags = ALLOWED_WITHOUT_FH | ALLOWED_AS_FIRST_OP
  2341					| OP_MODIFIES_SOMETHING,
  2342			.op_name = "OP_CREATE_SESSION",
  2343			.op_rsize_bop = nfsd4_create_session_rsize,
  2344		},
  2345		[OP_DESTROY_SESSION] = {
  2346			.op_func = nfsd4_destroy_session,
  2347			.op_flags = ALLOWED_WITHOUT_FH | ALLOWED_AS_FIRST_OP
  2348					| OP_MODIFIES_SOMETHING,
  2349			.op_name = "OP_DESTROY_SESSION",
  2350			.op_rsize_bop = nfsd4_only_status_rsize,
  2351		},
  2352		[OP_SEQUENCE] = {
  2353			.op_func = nfsd4_sequence,
  2354			.op_flags = ALLOWED_WITHOUT_FH | ALLOWED_AS_FIRST_OP,
  2355			.op_name = "OP_SEQUENCE",
  2356			.op_rsize_bop = nfsd4_sequence_rsize,
  2357		},
  2358		[OP_DESTROY_CLIENTID] = {
  2359			.op_func = nfsd4_destroy_clientid,
  2360			.op_flags = ALLOWED_WITHOUT_FH | ALLOWED_AS_FIRST_OP
  2361					| OP_MODIFIES_SOMETHING,
  2362			.op_name = "OP_DESTROY_CLIENTID",
  2363			.op_rsize_bop = nfsd4_only_status_rsize,
  2364		},
  2365		[OP_RECLAIM_COMPLETE] = {
  2366			.op_func = nfsd4_reclaim_complete,
  2367			.op_flags = ALLOWED_WITHOUT_FH | OP_MODIFIES_SOMETHING,
  2368			.op_name = "OP_RECLAIM_COMPLETE",
  2369			.op_rsize_bop = nfsd4_only_status_rsize,
  2370		},
  2371		[OP_SECINFO_NO_NAME] = {
  2372			.op_func = nfsd4_secinfo_no_name,
  2373			.op_release = nfsd4_secinfo_release,
  2374			.op_flags = OP_HANDLES_WRONGSEC,
  2375			.op_name = "OP_SECINFO_NO_NAME",
  2376			.op_rsize_bop = nfsd4_secinfo_rsize,
  2377		},
  2378		[OP_TEST_STATEID] = {
  2379			.op_func = nfsd4_test_stateid,
  2380			.op_flags = ALLOWED_WITHOUT_FH,
  2381			.op_name = "OP_TEST_STATEID",
  2382			.op_rsize_bop = nfsd4_test_stateid_rsize,
  2383		},
  2384		[OP_FREE_STATEID] = {
  2385			.op_func = nfsd4_free_stateid,
  2386			.op_flags = ALLOWED_WITHOUT_FH | OP_MODIFIES_SOMETHING,
  2387			.op_name = "OP_FREE_STATEID",
  2388			.op_get_currentstateid = nfsd4_get_freestateid,
  2389			.op_rsize_bop = nfsd4_only_status_rsize,
  2390		},
  2391	#ifdef CONFIG_NFSD_PNFS
  2392		[OP_GETDEVICEINFO] = {
  2393			.op_func = nfsd4_getdeviceinfo,
  2394			.op_release = nfsd4_getdeviceinfo_release,
  2395			.op_flags = ALLOWED_WITHOUT_FH,
  2396			.op_name = "OP_GETDEVICEINFO",
  2397			.op_rsize_bop = nfsd4_getdeviceinfo_rsize,
  2398		},
  2399		[OP_LAYOUTGET] = {
  2400			.op_func = nfsd4_layoutget,
> 2401			.op_release = nfsd4_layoutget_release,
  2402			.op_flags = OP_MODIFIES_SOMETHING,
  2403			.op_name = "OP_LAYOUTGET",
  2404			.op_rsize_bop = nfsd4_layoutget_rsize,
  2405		},
  2406		[OP_LAYOUTCOMMIT] = {
  2407			.op_func = nfsd4_layoutcommit,
  2408			.op_flags = OP_MODIFIES_SOMETHING,
  2409			.op_name = "OP_LAYOUTCOMMIT",
  2410			.op_rsize_bop = nfsd4_layoutcommit_rsize,
  2411		},
  2412		[OP_LAYOUTRETURN] = {
  2413			.op_func = nfsd4_layoutreturn,
  2414			.op_flags = OP_MODIFIES_SOMETHING,
  2415			.op_name = "OP_LAYOUTRETURN",
  2416			.op_rsize_bop = nfsd4_layoutreturn_rsize,
  2417		},
  2418	#endif /* CONFIG_NFSD_PNFS */
  2419	
  2420		/* NFSv4.2 operations */
  2421		[OP_ALLOCATE] = {
  2422			.op_func = nfsd4_allocate,
  2423			.op_flags = OP_MODIFIES_SOMETHING | OP_CACHEME,
  2424			.op_name = "OP_ALLOCATE",
  2425			.op_rsize_bop = nfsd4_only_status_rsize,
  2426		},
  2427		[OP_DEALLOCATE] = {
  2428			.op_func = nfsd4_deallocate,
  2429			.op_flags = OP_MODIFIES_SOMETHING | OP_CACHEME,
  2430			.op_name = "OP_DEALLOCATE",
  2431			.op_rsize_bop = nfsd4_only_status_rsize,
  2432		},
  2433		[OP_CLONE] = {
  2434			.op_func = nfsd4_clone,
  2435			.op_flags = OP_MODIFIES_SOMETHING | OP_CACHEME,
  2436			.op_name = "OP_CLONE",
  2437			.op_rsize_bop = nfsd4_only_status_rsize,
  2438		},
  2439		[OP_COPY] = {
  2440			.op_func = nfsd4_copy,
  2441			.op_flags = OP_MODIFIES_SOMETHING | OP_CACHEME,
  2442			.op_name = "OP_COPY",
  2443			.op_rsize_bop = nfsd4_copy_rsize,
  2444		},
  2445		[OP_SEEK] = {
  2446			.op_func = nfsd4_seek,
  2447			.op_name = "OP_SEEK",
  2448			.op_rsize_bop = nfsd4_seek_rsize,
  2449		},
  2450	};
  2451	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux